Quel est le meilleur, ETL ou ELT?
Avoir passé du temps à travailler sur d'entreposage de données, j'ai créé les deux ETL (extract transform load) et ELT (extrait de la charge de transformer les processus. Il semble que l'ELT est une nouvelle approche pour le remplissage des entrepôts de données qui peuvent plus facilement prendre avantage de clusters de calcul des ressources. J'aimerais entendre ce que les autres pensent les avantages sont de l'ETL et ELT les uns sur les autres et lorsque vous devez utiliser l'un ou l'autre.
source d'informationauteur Chris J
Vous devez vous connecter pour publier un commentaire.
Qui est mieux, c'est difficile de répondre à -- dépend du problème.
Je préfère multi-étape ETL -- PEPE (Extrait, Propre, Conforme, Livraison) chaque fois que possible. Je garde aussi un intermédiaire de fichiers csv après chaque extrait, propre, et conforme pas, prend de l'espace disque, mais est très utile. Chaque fois que DW doit être chargé, à cause de bogues dans l'etl, ou parce que les modifications de schéma, il n'y a pas besoin de source de requête systèmes de nouveau, il est déjà dans des fichiers plats. Il est également très pratique pour être en mesure de grepsed et awk par le biais de fichiers à plat dans la zone de transit en cas de besoin. Dans le cas où il existe plusieurs systèmes sources qui alimentent le même DW, extraire les étapes doivent être développées (et maintenu) pour chacun des systèmes source -- propre, conforme, et de livrer les étapes sont tous communs.
Ainsi, après avoir joué à fond avec les deux ETL et ELT, je suis venu à la conclusion qu'il faut éviter d'ELT à tout prix. ETL prépare les données pour votre entrepôt avant de le charger dans. ELT toutefois charge les données brutes en données de l'entrepôt et vous transformer sur place. C'est problématique si vous avez occupé un entrepôt de données. Si il y a une déclaration de la requête en cours d'exécution sur une table que vous tentez de mettre à jour, votre requête sera bloqué. Par conséquent, il est possible pour les requêtes de rapport afin de tenir ou de bloquer les mises à jour.
Maintenant, certains d'entre vous pourraient dire des requêtes de rapport n'avez pas besoin de bloquer une mise à jour et vous pouvez définir votre niveau d'isolement pour permettre des lectures incorrectes. Requêtes de rapport, cependant, ne sont généralement pas exécutées par des ingénieurs en logiciel. Elles sont exécutées par les utilisateurs de l'entreprise de sorte que vous ne pouvez pas compter sur eux pour régler leurs niveaux d'isolation correctement. Ainsi, tous les rapports ne peuvent tolérer des lectures incorrectes.
Il y a des cas où ELT peut travailler cependant, en l'introduisant à votre entrepôt de données est dangereux et, par conséquent, je vous recommande pour votre santé mentale et pour la maintenabilité, l'éviter.
J'utilise à la fois. C'est simplement une question de confort et de fonctionnalité. Tout dépend du cas. Parfois, je ne TEL - c'est à dire la transformation est effectuée dans la base de données source (dans une procédure stockée ou d'une vue) et ensuite extraites et chargés directement.
Je préfère ELT. On peut dire qu'elle est contre la Norme. Il nécessite un changement de mentalité et d'approche de la conception à l'encontre des méthodes traditionnelles. Mais il utilise le Matériel Existant et des ensembles de compétences, de réduire davantage les coûts et les risques dans le processus de développement.
Si nous voulons nous assurer de l'intégrité référentielle dans ETL approche, les données doivent être téléchargées à partir de la cible de serveur ETL(Moteur). Mais nous n'avons pas besoin de le faire en ETL approche.
Pour obtenir le meilleur d'un ELT approche nécessite un esprit ouvert.