Database
 sql >> Base de données >  >> RDS >> Database

Anatomie d'un rôle de développement logiciel :scientifique des données

Il y a douze ans, lorsque j'ai écrit les premiers articles de "Cracking the Code :Breaking Down the Software Development Roles", j'ai pris une décision consciente et peut-être controversée de ne pas inclure l'administrateur de base de données ou un architecte de base de données dans les rôles. La décision a été prise parce qu'il y avait peu d'organisations qui traitaient l'échelle de données qui nécessitait ce rôle dédié dans le processus de développement logiciel. L'architecte de la solution pourrait s'occuper du besoin de l'organisation de concevoir la structure de données dans le cadre de son rôle global. Cependant, le monde des données s'est agrandi depuis lors.

Mégadonnées

Aujourd'hui, nous sommes confrontés à un plus grand volume, à une plus grande vélocité et à une variété dynamique des sources de données que nous traitons. Nous ne parlons pas des bases de données relationnelles typiques qui sont populaires depuis des décennies. L'expansion des données nécessite un ensemble de techniques et de compétences qui sont différentes des approches historiques des données que nous avons utilisées.

Le multithreading, notre traitement des données, est une amélioration des approches de traitement des données à thread unique qui ont popularisé le traitement des données dans les années 1980 ; cependant, même ces approches, qui reposent sur un seul ordinateur avec plusieurs threads d'exécution, échouent lorsque la quantité de traitement nécessaire pour extraire le sens dépasse la capacité d'une seule machine.

L'essor de l'informatique basée sur les services

En 1999, les utilisateurs à la maison pouvaient faire don de leurs cycles informatiques de rechange sur leurs ordinateurs à la cause de la recherche d'intelligence extraterrestre grâce au projet [email protected] géré par UC Berkeley. Ce n'était pas la première utilisation de l'informatique largement distribuée ou de l'informatique en grille, mais c'est le projet qui a captivé l'imagination des internautes du monde entier. Soudain, ils ont eu la possibilité d'être ceux qui ont trouvé "ET". Dans la construction, le projet a distribué des quantités massives de données à traiter sur de nombreux ordinateurs, qui ont effectué des calculs sur les données pour voir s'il y avait des bits intéressants qui n'étaient probablement pas seulement du bruit de fond. [email protected] n'était qu'un des projets d'informatique distribuée qui a sensibilisé au type de problèmes où un seul ordinateur n'allait pas suffire.

IBM, Microsoft et d'autres proposent désormais des services informatiques et d'apprentissage automatique pour aider les organisations à faire face aux données qu'elles capturent et à leur donner un sens afin qu'elles n'aient pas à mobiliser une armée de volontaires engagés. Les plateformes visent à fournir la puissance de calcul et le machine learning nécessaires pour extraire les informations cachées dans les volumes de données. Au lieu que les organisations aient besoin de créer et de déployer leurs propres centres de données avec des ressources informatiques dédiées, les ressources pour transformer les données en informations et en sens sont disponibles à la location.

Il ne s'agit pas de données, mais d'insights

Même si la quantité de données que nous capturons est stupéfiante, ce ne sont pas les données qui sont intéressantes. Ce qui est intéressant, c'est ce que les données peuvent vous dire, si vous êtes capable de les analyser. Les lectures individuelles sur les performances d'un moteur ne sont pas importantes, mais la capacité de prédire quand le moteur a besoin d'entretien ou est susceptible de tomber en panne—c'est importante.

Les scientifiques des données ne se concentrent pas sur le stockage des données comme l'étaient les architectes de données et les administrateurs de bases de données. Au lieu de cela, ils se concentrent sur la conversion des données en informations et, en fin de compte, en informations que l'entreprise peut utiliser pour prendre de meilleures décisions. Cela signifie rechercher de nouvelles approches pour analyser les données de manière à révéler des informations intéressantes que l'entreprise peut utiliser à son avantage.

Se tenir debout sur les ensembles et les statistiques

Le processionnel de développement de logiciels traditionnel est familier avec une approche procédurale pour résoudre les problèmes. Les développeurs, les responsables et les architectes connaissent bien les méthodes et les avantages de la construction procédurale. Les approches procédurales sont comme l'automatisation d'un travailleur incroyablement dévoué mais pas original. L'ordinateur est informé des étapes (procédure) à effectuer dans quel ordre et dans quelles conditions il doit répéter l'opération ou se diviser entre plusieurs chemins. Cependant, les scientifiques des données travaillent non seulement avec des approches procédurales, mais également avec une logique basée sur les ensembles. Le style de pensée diffère, car il recherche les lacunes et les intersections. Il fonctionne sur la base de relations d'égalité et d'inégalité entre différents ensembles d'informations.

Même si certains développeurs ont rencontré une logique basée sur des ensembles dans leur travail, les scientifiques des données doivent être à l'aise et maîtriser leur capacité à manipuler des ensembles d'informations.

De plus, contrairement à d'autres rôles dans le cycle de vie du développement logiciel, le scientifique des données a besoin d'une compétence spécialisée en dehors du domaine du développement logiciel. Étant donné que les scientifiques des données recherchent des informations sur les relations entre divers éléments de données, ils ont besoin d'une base solide en statistiques pour pouvoir rechercher et générer des valeurs statistiques telles que la corrélation afin de répondre aux questions qu'ils posent et de trouver des relations inexactes entre différents ensembles de données.

Où va la position, de toute façon ?

La croissance des données a atteint le point de basculement. Qu'il s'agisse d'analyse des réseaux sociaux, d'historique des clics ou d'achat de données, les organisations voient une réelle valeur commerciale dans les données enfermées dans leurs bases de données, et les scientifiques des données sont la clé pour libérer le potentiel de ces données.

Capturer cette valeur signifie embaucher des personnes qui ont les compétences nécessaires pour connecter les algorithmes de traitement aux données et exploiter la puissance de calcul pour créer ces résultats.

Le bon, le mauvais et le truand

La science des données explose en ce moment avec l'avènement des appareils de l'Internet des objets enregistrant toutes sortes de données depuis toutes sortes d'endroits. Cela signifie une grande opportunité et plus que quelques défis. Voici quelques-uns de ces défis :

  • Bien : Il existe une excellente occasion de trouver de nouvelles façons d'extraire des informations à partir des données.
  • Bien : Les ressources de calcul et de stockage peuvent être achetées en grande quantité.
  • Bien : Les spécialistes des données sont très demandés et le resteront probablement pendant un certain temps.
  • Mauvais : À mesure que les algorithmes et les approches évoluent, vous vous sentirez toujours obsolète.
  • Mauvais : Toutes les données doivent être nettoyées, et une partie importante du temps sera consacrée à ce travail.
  • Moche : Les essais et les erreurs se traduiront par de nombreux "échecs" et peu de triomphes.

En conclusion

Le rôle de Data Scientist a un besoin en pleine expansion et un ensemble de compétences différent. Si vous avez adoré votre cours de statistiques et que vous aimez trouver des modèles que les autres ne peuvent pas voir, cela pourrait vous convenir.