6

私は最近、TalendやApatarなどのいくつかのETLツールに触れましたが、これらのツールの目的/主な目的は素人の観点から正確に何であるか疑問に思いました。誰が主にそれらを使用し、あなたがそれらを使用する場合、それらは(私の理解から)ある種のスクリプトを書くよりも優れています。

4

3 に答える 3

15

ETLは「抽出/変換/ロード」の略です。これらのツールは、あるソースからデータを取得し、別のソースに移動します。独自の方法でソースから宛先にスキーマをマップし、宛先に移動する前にデータを変換およびクレンジングし、効率的な方法で宛先をロードできます。ETL ジョブをバッチ プロセスとしてスケジュールできます。

これらのデータ ソースは、リレーショナル データベース、スプレッドシート、XML ファイルなどです。


誰がそれらを「使用」しますか?「用途」が何を意味するかによります。それらは単なるコードであり、ほとんどの場合、通常の操作の一部としてスケジュールされています。エンドユーザー機能はありません。それらは完全にプログラマーが作成し、操作が操作するためのものです。

スクリプトより有利?なし。それらは、ソースからの「抽出」、宛先への「変換」、および「ロード」に完全に焦点を当てたドメイン固有言語 (DSL) で記述されたスクリプトです。スクリプトの最も興味深い部分は、各段階でのフィールドごとのマッピングです。

于 2009-07-29T01:03:11.493 に答える
4

ETL は単にデータを取得し、それに何かをして、データをどこかに貼り付けます。

  1. 抽出 - どこかからデータを取得します (場所はソースと呼ばれます)。ソースは、ファイル、データベース テーブル、パイプなどにすることができます。

  2. 変換 - ソース データに対して何らかの処理を行います。たとえば、ソースには人物と生年月日が含まれているため、データを「変換」して人物の年齢を判断できます。

  3. 読み込み - 変換されたデータを取得し、別のデータベースまたは同じデータベースなどの場所に配置します。これをターゲットと呼びます。ソースになることができるほとんどすべてのタイプのデータ ストアは、ターゲットとしても使用できます。


いくつかの例:

  1. DB2 のデータ ウェアハウスからデータを抽出します。フィルターを使用してデータを変換し、特定の日付範囲に一致するデータのみを送信します。フィルター処理されたデータを SQL Server データ マートに読み込みます。

  2. XML ファイルからデータを抽出します。データが行に「フラット化」されるようにデータを変換します。コンマ区切りファイルにデータをロードします。

  3. パイプまたはキュー (IBM MQ など) に入ってくるデータを抽出します。キューに入れられたメッセージのキー フィールドを解析してデータを変換します。解析されたデータをメインフレームにロードします。


いくつかのツール:

  1. 大金、エンタープライズ クラス: Ab Initio、Informatica、IBM の Datastage

  2. 低価格: Jitterbit、Talend

  3. 中間のどこか: SSIS for SQL Server


誰がそれらを使用しますか? 主に、複雑なデータ ウェアハウスを構築および維持する必要がある企業は、ETL ツールに投資します。多くの場合、ETL ツールは、プログラムによる手法のみを使用するのではなく、ETL プログラムを視覚的に構築できるようにする視覚的な設計ツールです。

于 2014-07-30T22:07:53.327 に答える
2

ETL は、データ ウェアハウジング アプリケーションで一般的に使用されます。

たとえば、Oracle または Sql Server の注文処理システムがあるとします。これにより、注文が発送されるまですべてのデータが保持される可能性がありますが、何年にもわたる古い注文がシステムを詰まらせることは望ましくありません.

さらに、社内にこのようなシステムがいくつかあり、すべてが互いに独立して開発されている場合があります。

そのため、履歴データを統合するために、これらの異なるシステムすべてからのデータが最終的に格納されるデータ ウェアハウスをセットアップし、レポート、計画、データ マイニングなどを行うのに最適な場所を提供できます。

すべてのデータ ソースは異なり、長期的に保存するデータの種類は、小規模なデータベースにあるデータとは異なる可能性があるため、ETL システムをセットアップして、データ フローを変換および管理します。

于 2009-07-29T01:13:32.490 に答える