Comment nous avons créé Data-Office





Bonjour, je m'appelle Ildar Raimanov et je suis le chef du département du groupe BARS, qui est responsable du développement des solutions BI dans l'entreprise. Ayant une grande expérience dans le travail avec les données, ainsi qu'une expertise du secteur, nous avons décidé d'essayer de former un centre de compétences, qui, nous permettant de traiter de grandes quantités de données, sera en mesure de fournir un service de formation de connaissances pour certains sujets de demandes des clients.



Bureau de donnéescomprend plusieurs composants à la fois - il s'agit d'un stockage bien développé qui comprend à la fois un «grand lac de données» et des marchés préparés, des processus de remplissage des données à partir des systèmes sources, des mécanismes de contrôle de la qualité des données; une équipe de méthodologistes qui comprennent de quoi parlent ces ou ces chiffres en fonction des spécificités du secteur, et bien sûr un ensemble de divers outils logiciels, dont le principal est la plateforme de business intelligence Alpha BI développée par BARS Group.



Pour rendre l'information encore plus compréhensible, j'essaierai de révéler dans un langage simple les termes clés mis en évidence dans le texte.



Si nous parlons plus en détail des approches et des étapes, alors dans le cadre de Data-Office, nous avons défini la séquence suivante:



1. Analyse du domaine - mis en évidence L'équipe de méthodologistes , qui décrit le domaine, les principales entités, prépare un modèle de données logique pour le stockage principal .



Qui sont les méthodologistes ? Ce sont essentiellement des experts de l'industrie qui comprennent l'essence des données. Si, par exemple, nous parlons de finances, il peut s'agir de comptables et de financiers, mais si nous parlons de médecine, ce sont des médecins et d'autres travailleurs médicaux qualifiés. C'est leur compréhension qui vous permet de créer un modèle de données logique., à savoir, un ensemble d'entités qui seront analysées avec des relations - quelle relation une entité peut avoir par rapport à une autre.



2. Sur la base du modèle de données logique , un modèle physique normalisé est préparé , les architectes de données sont connectés . Ici, bien sûr, des spécialistes informatiques sont nécessaires, car ce sont eux qui traduisent un ensemble d'entités en tables, créent les clés étrangères, les attributs, les index nécessaires, c'est-à-dire qu'ils construisent simplement le modèle dit physique .



3. Un modèle de flux de données est en cours d'élaboration , des sources et des options d'intégration sont établies. Modèle de flux de donnéesEst un ensemble de données transmises avec les règles décrites: d'où et où, dans quelles conditions, avec quelle fréquence.



4. En règle générale, étant donné que nous parlons d'une grande quantité de données, les données des sources tombent initialement dans le format «tel quel» dans le tampon de données - la première couche de «données brutes» . Ici, à la fois l'objectif est de réduire le temps de chargement des données, et l'objectif est de disposer d'un ensemble de données primaires afin de préserver la possibilité, si nécessaire, de dérouler la chaîne d'analyse à la toute première valeur.



5. Les problèmes de transformation des données sont en cours d'élaborationdu tampon à la deuxième couche - stockage normalisé, ainsi que les questions sur la fréquence de mise à jour et de stockage des informations dans le tampon, le problème de la mise à jour incrémentielle est immédiatement résolu. Des problèmes de qualité des données , des méthodes et des outils sont également en cours d'élaboration . Sous la qualité des données, on entend la conformité avec les informations requises au contenu logique. Tout commence par de simples validations de contrôle de format logique et se termine par des modèles méthodologiques plus complexes.



6. Les méthodologistes analysent les cas de consommation et, sur cette base, des marges de données possibles sont décrites ., c'est-à-dire des ensembles de données spécialement préparés qui devraient aider à répondre à certaines questions.

L'équipe de développement BI forme déjà directement un ensemble de data marts, qui est un entrepôt de données analytiques - la troisième couche.



7. Il est à noter qu'en parallèle, des travaux sont en cours sur la formation du Data Glossary (une description méthodologique détaillée) et la mise à jour constante du lien entre les entités mêmes du référentiel avec cette description méthodologique la plus détaillée.



8. Kit d'outilsle processus décrit ci-dessus peut différer selon les tâches. La plateforme de business intelligence Alpha BI est principalement utilisée, sur la base de laquelle les couches de stockage sont construites sur PostgreSQL et les tâches ETL sont résolues en utilisant la plateforme elle-même.



9. Le travail direct avec des vitrines préparées passe également par Alpha BI. Recevant le besoin d'acquisition de connaissances - dans un premier temps, l'équipe de méthodologistes analyse la tâche et l'impose sur le modèle logique existant, puis l' équipe de développeurs BI , ayant reçu un paramétrage orienté sujet, met en œuvre les sélections nécessaires, OLAP-Cubes, tableaux de bord, rapports sur la base de vitrines. Il arrive que la vitrine soit quelque peu transformée, ou qu'une nouvelle soit créée, si la situation l'exige.



, « BigData» Hadoop – .


D'un point de vue technique, l'interaction d'Alpha BI avec Hadoop est réalisée à travers une couche construite sur la base du SGBD analytique massivement parallèle Greenplum utilisant le protocole PXF (Platform Extension Framework).



De même, en utilisant Greenplum, la possibilité d'analyse en ligne et de travail avec des données chaudes est mise en œuvre, qui, par exemple, est mise à jour toutes les 10 secondes. Dans le cas de données chaudes, l'interaction via Greenplum est construite avec la base de données Apache Ignite en mémoire en utilisant également le protocole PXF.



À la fin de la journée, les données de la table Ignite sont transférées vers HDFS et supprimées d'Ignite.



En résumé, je voudrais résumer une fois de plus - les données devraient fonctionner et être utiles. Afin d'en extraire au maximum les connaissances, il convient de prêter attention à tous les aspects ci-dessus: aborder avec compétence la construction d'un stockage, déterminer les flux de données optimaux, comprendre le domaine des «nombres», sélectionner un outil pour la tâche.



Dans le même temps, bien sûr, il convient d'accorder une attention particulière à la formation de l'équipe et à sa segmentation en différents types de tâches, dans chacune desquelles des professionnels partageant les mêmes idées devraient travailler.



Et puis vos données, avec ses millions et milliards de lignes et téraoctets de mémoire, vont vraiment commencer à travailler, donner des connaissances, et donc être utiles!



Je serai ravi de répondre à vos questions dans les commentaires!)



All Articles