2016-10-13 12 views
2

私たちのプライマリデータストア(および "Universal Source of Truth")がPostgresであるシステムがありますが、そのデータをリアルタイムでも夜間でも集約して複製します。私たちは現在、Elasticsearch、Redis、Redshift(夜間のみ)に複製し、Neo4jも追加しています。ほぼリアルタイムのETLアーキテクチャ用の右ツール

私たちのETLパイプラインは、AirflowLuigiのようなツールを見ていますが、最初の研究からわかるように、これらのツールはバッチロードのためのものです。

大量のバッチETLプロセスとオンザフライで大量の個別レコード複製の両方を処理できるETLプロセスを処理できるツールはありますか?気流かLuigiはこれを処理し、私はそれを逃したのですか?

ありがとうございます!

答えて

0

Luigiが行っている限りでは、短い間隔でジョブを実行するマイクロバッチ方式になる可能性があります。たとえば、毎分cronジョブを起動してPostgresテーブルの新しいレコードをチェックし、そのバッチを処理することができます。処理フロー自体が単一のアイテムの周りになるように、各アイテムのタスクを作成することができます。大量に、毎秒数百回以上の更新を行うと、これは本当の課題です。

Apache Sparkには、スケーラブルなバッチモードとマイクロバッチ処理モード、およびETLに適合できる基本的なパイプライン演算子があります。しかし、インフラストラクチャのサポートという点では、ソリューションの複雑さのレベルはかなり上がります。

0

私はさまざまなETLエンジンで狂ったエキスパートではありませんが、私はPentahoケトルでたくさんのことをしてくれており、パフォーマンスにはとても満足しています。特に、並列処理を利用するために変換をチューニングした場合。

私は主に、インテグレーション(リアルタイム)とETLを実行してレポートDBを駆動する夜間ジョブを処理するために使用しましたが、多くのリアルタイムタスクを実行できるように設定することができます。

バックエンドであらゆる種類のものをリアルタイムで一度呼び出すWebサービスをセットアップしましたが、それは非常に負荷がかかりませんでした。私たちよりも重いものをやっているようです。その後、ETLサーバーをクラスタ化し、実際にプレイしたことのない機能を拡張する機能もあります。

あなたはそれを正しく設定するために時間を費やした場合、私はこれらのことを行うことができるように感じます。全体的に私はこのツールが大好きです。 GUI TBHで作業することは喜びです。 GUIからETLを実行する能力が習熟していない、または疑わしい場合は、それを確認する必要があります。あなたは驚くかもしれません。

関連する問題