0

現在、Redshift へのデータのロードに取り組んでいます。ここにはさまざまなシナリオがあります。OLTP データベースがオンプレミスの SQL Server である場合、S3 経由で Redshift にデータをロードするのに役立つ Attunity などのツールを検討できます。Attunity は CDC においてスマートであり、トランザクション ログを読み取って変更を識別し、それに応じてターゲットに変更を適用できます。しかし、この種のツールは、ETL プロセス中に変換ロジックを適用するには不十分です。Attunity は SSIS や ODI に代わるものではありませんが、さまざまなソースからのデータの抽出と読み込みに適しています。したがって、変換を行うには、適切な ETL ツールが必要です。Redshift 内のステージング領域で Attunity を使用してデータをロードできます。ステージング領域から、別の ETL ツールまたはトリガーを使用してターゲット テーブルにデータをロードできます。Redshiftではトリガーがサポートされていないため、では、その ETL ツールは何でしょうか? ここでは、AWS Data Pipeline 以外は見つかりませんでした。ただし、Attunity と AWS Data Pipeline の 2 つのツールを使用すると、コストが高くなる可能性があります。他の代替方法はありますか?Data Pipeline がオンプレミスの SQL Server に接続できるとは考えていません。Amazonエコシステム専用です。

次に、オンプレミスの SQL Server が Amazon RDS にデプロイされたと考えてみましょう。その後、状況が異なる場合があります。Attunity と AWS Data Pipeline の 2 つのツールを使用して、上記と同じ ETL プロセスに従うことができます。しかし今回は、AWS Data Pipeline という 1 つのツールのみを使用する方が簡単です。AWS Data Pipeline は、すべてのシナリオを処理するのに十分な能力を備えていますか? トランザクションログを読み取れることがわかりません。しかし、増分負荷には他のアプローチを適用できるはずです。非常に一般的なアプローチは、各ソース テーブルで最終更新日列を考慮することです。次に、最後のロード時間から変更された RDS Sql Server テーブルの行を特定できます。ただし、変更されたデータを RDS から Redshift に直接取得することはできません。S3 または DynamoDB のいずれかを使用する必要があります。S3 をルートとして使用するように AWS Data Pipeline を作成できます。また頭痛のようです。もっと簡単な方法が他にあるかもしれません。繰り返しますが、AWS Data Pipeline は競争の激しい市場ではまったく新しいものです。このツールの非常に大きな制限は、AWS 以外のさまざまなソース (Salesforce、Oracle など) からデータをロードできないことです。AWS エコシステム内で問題なく、最小限のコストで完璧に機能する使いやすいツールは他にありますか?

4

2 に答える 2

0

Attunity は、パイプラインのその部分を管理するのに非常に優れており (ただし、repctl を使用して独自の監視をかなり構築する必要があります)、非常に費用対効果が高いため、OLTP データをステージング領域に移動するために Attunity に依存します。従来、構築に非常にコストがかかる ETL のこの部分に対処します。Pentaho DI は、データベース テーブル、ファイル システム、ftp サイト、キューなどを監視するための「トリガー」を構築できるため (いくつか組み込み済みですが)、ETL プロセスの手続き型コンポーネントを実行する ETL ツールとして適しています。 . そして、あなたが望むどんな種類のプロセスでも走らせることができます。ほとんどの基本機能を備えた優れたコミュニティ エディションがあり、EE バージョンを購入する価値は、サポートとスケジューラーに対して支払う価値があります。

于 2015-09-09T22:07:09.700 に答える