Tout notre canal de données sur un MacBook Pro

Par Andrew Backes, ingénieur logiciel (pipeline de données)


Nous avons pensé que ce serait vraiment cool si nous pouvions exécuter une copie exacte de tout notre pipe de données localement. Cela ouvrirait un grand nombre de possibilités. Celui qui nous a le plus enthousiasmés : tester l'intégration du système, mais sur nos ordinateurs portables. Au cours des dernières semaines de juin, nous (l'équipe des données de ShareThis) avons travaillé sur ce sujet.

Qu'est-ce que ça veut dire exactement? Actuellement, notre pipeline de données fonctionne sur un cluster d'environ 30 noeuds. Il interagit avec un amas de cassandra, un cluster aerospike, deux grappes Kafka et un noeud graphite/Seyren. Le but était d'obtenir tout cela pour fonctionner en quelque sorte sur un ordinateur portable unique. Aussi, nous voulions réellement avoir le pipeline ingérer les données et ont la bonne chose sortir de l'autre extrémité.

La première étape consistait à conconteneurr nos applications. La partie la plus délicate était que nos applications n'étaient pas écrites avec cette capacité à l'esprit. Heureusement, nous avons utilisé l'injection de dépendance et des modèles d'adaptateur pendant le développement. Cela s'est avéré pour aider tout à fait un peu en obtenant les choses à fil ensemble correctement. Docker composer a également contribué à cet égard. Environ une semaine après que nous ayons obtenu tout cela fonctionnant, les dispositifs avançés de réseau de docker 1,7 ont été annoncés. Ces nouvelles fonctionna lités auraient rendu notre travail beaucoup plus facile.

En fin de compte, nous avons utilisé 8 conteneurs docker (chacun représentant un groupe Amazon VPC) pour nos applications internes et un seul conteneur de docker pour chaque Cassandra, aerospike, Kafka 7, Kafka 8, et graphite. Depuis que nous étions en cours d'exécution sur Mac, nous avons également dû pomper la quantité de mémoire et de l'espace disque était disponible pour boot2docker dans la VM. Ce fut un moment de joie quand nous avons mis quelques données en face de la pipeline, ont été en mesure de le suivre sur le graphite et voir la version entièrement traitée Pop out l'autre extrémité.

À propos de l'auteur
ShareThis

Depuis 2007,ShareThis libère la puissance du comportement numérique mondial en synthétisant les données relatives aux partages sociaux, aux intérêts et aux intentions. Grâce au comportement des consommateurs sur plus de trois millions de domaines mondiaux, ShareThis observe les actions en temps réel de personnes réelles sur des destinations numériques réelles.

À propos

Depuis 2007,ShareThis libère la puissance du comportement numérique mondial en synthétisant les données relatives aux partages sociaux, aux intérêts et aux intentions. Grâce au comportement des consommateurs sur plus de trois millions de domaines mondiaux, ShareThis observe les actions en temps réel de personnes réelles sur des destinations numériques réelles.