作業中のETL

ETLとは何ですか?

別のプログラミング言語を使用している場合や、新しいビジネスを開始して、新しいソフトウェアシステムに含めるデータを収集したい場合があります。または、データをバックアップして、別のデータ形式に変換できるようにすることもできます。実際、あるソースからデータを取得して別の場所に配置したい状況。このような場合、ETLが実行に移されます。 ETLは Extract、 Transformと Lオード。 ETLとそのプロセスの詳細については、こちらをご覧ください。

https://en.wikipedia.org/wiki/Extract,_transform,_load

ETLは、コンピューティングの月曜日の朝になる可能性があります

多くの場合、ETLは、多くの手動および反復作業を伴う面倒な作業になる可能性があります。典型的な状況は、Excelスプレッドシートのコレクションに大量のデータが集められている状況です。タスクは、デスクトップまたはWebアプリケーションで使用するためにデータベースにそのデータを含めることかもしれません。 Excelシートから手動でデータを抽出することは、多くの場合非常に時間がかかります。次に、宛先データソースが理解してデータを独自のデータセットにロードするために使用できる形式にデータを変換する必要があります。

DelphiはどのようにしてETLの時間を節約できますか?

デルファイは持っています すごい ETLタスクの処理のサポート。 Delphiには、ETLプロセスを簡素化するために特別に設計されたコンポーネントがいくつかあります。ほとんどの場合、いくつかのコンポーネントをフォームにドラッグアンドドロップし、いくつかのプロパティを設定し、おそらく非常に少量のコードでそれを接着するだけでタスクが完了します。 ETLプロセスで使用できるいくつかのコンポーネントを見てみましょう。

  • FireDAC
  • TFDBatchMove
  • LiveBindings
  • エンタープライズコネクタ
  • TRESTClient
  • SOAPクライアント

FireDacとは何ですか?どのように使用できますか?

FireDacは、VCLとマルチデバイスFiremonkeyアプリケーションの両方で使用できるユニバーサルデータアクセスライブラリです。 SQLリレーショナルデータベース管理システムと非SQLデータソースの両方を広範囲にサポートしています。

FireDACには、あるソースから別のソースにデータを移動するために必要なコンポーネントも含まれています。ここでは、実際の動作を確認できます。

この例では、「TFDBatchMove」コンポーネントを使用して、データをRDBMSからMicrosoftExcelファイルに移動します。また、Excelから逆方向にデータが転送される逆のことも示しています。また、すべてを実現するためのコードは2行しかないことがわかります。

LiveBindingsを使用してコンポーネントを他のコンポーネントまたはデータソースにバインドするにはどうすればよいですか?

LiveBindingは、コンポーネント<>コンポーネントとコンポーネント<>データソースを視覚的にバインドする方法です。コードなしで別のコンポーネントを使用して、コンポーネントのプロパティを制御できます。ライブバインディングデザイナまたはライブバインディングウィザードを使用して、そのようにすることができます。コンポーネントとデータセットをバインドするのは、接続をドラッグアンドドロップするだけです。

ライブバインディングの例

LiveBindingを示す例を見てみましょう。

まず、新しいVCLプロジェクトを作成し、TFDMemTableを追加して、メモリテーブルにデータを追加します。次に、TDateSourceを追加し、データセットプロパティを使用してメモリテーブルに接続します。次に、フォームが以下のフォームのようになるまで、いくつかのラベル、TSpinEdit、TEditコンポーネントを追加します。次に、TDBNavigatorを追加し、データソースに接続します。

LiveBindings Designerでコンポーネントを識別できるように、すべてのコンポーネントに覚えやすい名前を付けます。すべてをTEdit1、TEdit2などのデフォルト名のままにすると、LiveBindingsビューですぐに混乱します。

次に、フォームを右クリックして、メニューから[視覚的にバインド]を選択します。これらのコンポーネントのプロパティをドラッグして、メモリテーブルのフィールドに接続します。これで完了です。

これでアプリケーションを実行すると、1行のコードなしで、これらのコンポーネントを使用してメモリテーブルのデータを挿入、編集、削除できます。

FireDacとLiveBindingsを使用したETL

ETLを容易にするLiveBindingsのより詳細なビデオ

それらのDelphiエンタープライズコネクタは何ですか?

前に説明したように、FireDACには、さまざまなエンタープライズ接続をサポートするための多くのコンポーネントがあります。 CData Enterprise Connectorを使用すると、通常のSQL / No SQLデータベースを超えて、他の多くのタイプのアプリケーションに接続し、通常のデータベースと同じようにそれらからデータを取得できます。エンタープライズコネクタは、180以上のエンタープライズデータソースタイプをサポートします。ライブバインディングを使用する通常のコンポーネントを使用するか、コード内で手動でそのデータにアクセスできます。このリンクにアクセスして、FireDACがサポートするコンポーネントとエンタープライズアプリケーションを確認してください。エンタープライズコネクタの使用:

https://www.cdata.com/firedac/

エンタープライズコネクタを使用したETLに関するその他のビデオ

Delphiを使用してRESTベースのサービスにアクセスする方法は?

今日、多くのWebアプリケーションには REST API。 Delphiには、RESTリクエストを処理するための豊富なコンポーネントがあります。

TRESTClient –RESTリクエストを実行するコンポーネントです。リクエストを実行するために必要なオーセンティケーターとベースURLを設定するためのプロパティがあります。

TRESTRequest –このコンポーネントは、HTTP要求に関するデータを保持します。 HTTPメソッド、ヘッダーパラメータ、本文パラメータ、その他多くのオプションパラメータを設定します。

TRESTResponse –このコンポーネントは、要求の実行後に応答を保持します。これには、すべてのエラーコード(存在する場合)とJSON形式で返されたデータが含まれます。

これがRADStudioのRESTサポートのビデオです

SOAPクライアントを使用してリモートプロシージャコールを行う方法は?

SOAPはの略です S実装 Object Aアクセス Protocol。 Delphiは、SOAPクライアントとサーバーの両方をサポートしています。 SOAPを使用すると、リモートデータにアクセスしたり、リモートプロシージャを呼び出したりできます。 SOAPには、SOAPで使用可能なデータ構造とメソッドを記述したWSDLと呼ばれるファイルがあります。 Delphiには、SOAPサーバーから返されたWSDLドキュメントからインターフェイス定義と接続情報を生成するウィザードがあります。

ETLとSOAPの詳細

Delphi SOAPサーバーを作成し、ウィザードを使用してインターフェイス定義と接続情報を生成する方法の詳細については、Embarcadero MVP CraigChapmanによるこの投稿にアクセスしてください。

結論

ETLは、多くの現代のビジネスでは定期的なプロセスです。適切なツールが利用できない場合、それは雑用または反復的な作業になる可能性があります。ありがたいことに、Delphiには、最小限のコーディングでETLをサポートするための多くのコンポーネントと手法があります。


RAD Studio、Delphi、C++Builderを用いれば、開発時間を短縮し、より早く市場に投入可能!
Design. Code. Compile. Deploy.
トライアル版をダウンロードいますぐアップグレード!

Delphi Community Edition(無料)C++Builder Community Edition(無料)