J'écris un ETL (en python avec un backend de MongoDb) et je me demandais: quel type de fonctions et outils standard un ETL devrait avoir à appeler une ETL? p>
Cet ETL sera aussi général que possible, avec une approche scriptable et modulaire. Surtout, il sera utilisé pour conserver différentes bases de données en synchronisation et importer / exporter des ensembles de données dans différents formats (XML et CSV), je n'ai pas besoin d'outils multidimensionnels, mais il est possible que cela nécessiterait plus tard. P >
3 Réponses :
Voici une liste aléatoire, sans ordre particulier: p>
J'aimerais voir "graphique" retiré de # 4. Pendant que les images sont mignonnes, nous finissons toujours à lire le code pour voir ce qui est vraiment i>.
Pensons aux cas d'utilisation de l'ETL un instant. P>
En outre, il existe des exigences supplémentaires qui ne sont pas des cas d'utilisation unique. P>
Chaque opération doit être un processus distinct pouvant être connecté dans un pipeline UNIX, avec des enregistrements individuels qui découlent du processus au processus. Cela utilise tous les ressources de la CPU em>. p> li>
Vous avez besoin d'une sorte de planificateur de temps pour des endroits qui ont du mal à raisonner leurs conditions préalables ETL. P> LI>
Vous avez besoin d'une planification basée sur des événements pour des endroits pouvant déterminer les conditions préalables aux étapes de traitement ETL. p> li>
ul>
note. Etant donné que l'ETL est I / O lié, plusieurs threads vous sont peu bons. Étant donné que chaque processus fonctionne pendant une longue période - surtout si vous avez des milliers de lignes de données à traiter - les frais généraux des processus "poids lourd" ne font pas mal. P>
Mappage automatique / heuristique des noms de colonne. E.g Mappages de chaîne simples: P>
DB1: CustomerID P>
DB2: Customer_ID P>
Je trouve beaucoup de travail que je (ai) effectué dans DTS / SSIS aurait pu être généré automatiquement. P>
Quels cas d'utilisation avez-vous en ce moment? De quoi avez-vous besoin pour faire? Veuillez énumérer vos cas d'utilisation actuels afin que nous puissions commenter ceux-ci.