web-dev-qa-db-ja.com

データ統合/データ統合とデータ同期のどちらをいつ選択するか?

Data Consolidation/Data IntegrationData Synchronisationのどちらを選択するかを決定する方法について、混乱しています。そんなこと知ってる:

データ統合/データ統合:は、複数のソースから単一の宛先へのデータの収集と統合を指します。このプロセス中に、さまざまなデータソースが1つのデータストアにまとめられるか、統合されます。

データの同期:は、システムとデータストア間の一貫性を確立し、一貫性を維持するために継続的な更新を行うことを指します。

ここで、会社に関して次のようなケースがあるとします。

-複数のソースにデータが存在し、部門ごとに存在することが多い

-計画に役立つ分析ではなく、データの検証に多くの時間を費やしているため

-データ定義もソースによって異なります

今すぐ使用する方が良いようなケースが与えられました-データの統合/統合、またはデータを異なるソースに残して同期しますか?

また、意思決定に役立つ可能性のある他の有用で関連性のある情報を探す必要があります。それらの追加情報が私の意思決定にどのように反映されるのでしょうか。

6
Jason Donnald

予備発言

まず最初に、あなたが提示するケース(単一の会社、多くの部門のソース、不完全/矛盾/不一致の部門データを克服するための多くの検証、およびデータの有用な分析を犠牲にした非効率性)は、-の典型的なビジネスケースです。 reengineering お使いのシステム、または [〜#〜] erp [〜#〜] などの 統合ソフトウェアシステム を採用します。

しかし、これが常に可能であるとは限らず、望ましいとは限りません。

データ統合の場合

データ統合 は人気のあるアプローチであり、 [〜#〜] etl [〜#〜] ソリューションの豊富な提案と 企業データウェアハウスの傾向を示しています

古いアプローチにもかかわらず、このアプローチは効果的であり、ほぼすべてのランドスケープ(バッチまたはリアルタイム、補完的または異種のデータ、クリーンなデータまたはクリーンアップおよび修正されるデータなど)で実行可能であり、堅牢です。

同期の場合

一方で、たとえば ビッグデータアーキテクチャ または microservices などの最近の技術開発では、システムを分離し、(ボトルネックになる可能性のある共有データベースを回避することで)スケーリングを容易にします)。

イベントソース および メッセージング によるデータ同期は、サービスAPIからの直接の消費が同期化の複雑さの追加に値しない場合、システムを分離してスケーラビリティを実現する非常に効果的な方法です。

ただし、同期には、アプリケーション間の一貫したモデルが必要です。これは、DDDの優れたプラクティスですが、歴史的に成長した異種システムランドスケープでは常に可能とは限りません。

1
Christophe

これを2017年後半の観点から見ると、データ統合は、アップグレードまたは置換の候補であるかを判断するための既存のシステムのレビューと相まって、良い選択です。

データレイクまたはデータウェアハウスを使用して、異種システムのそれぞれからの重要なビジネスデータを統合することにより、ユーザーに調査と分析のための1つのソースを提供します。データはETLプロセスの一部として検証されるため、品質データを保証するためにチェックとバランスをとることができます。さらに、クエリと分析を運用システムから移動することで、日々のトランザクションに集中することができます。

別の方法は、ELT(抽出、読み込み、変換)システムを使用することです。これは、これらすべての異なるシステムに適しているとは限りませんが、互換性のあるシステムには利点があります。 ELTはデータを運用システムから移動し、変換プロセスを実行するか、クエリ時に変換します。ユーザーがデータを使用できるようになる前に面倒な変換プロセスがないため、このアプローチはメンテナンスの負担を軽減します。一部のタイプのシステム(機能とデータタイプの両方)は、他のものよりもELTに適している可能性があります。違いをよりよく理解するために、ここに Panopolyのブログ からの優れたETL/ELT 101記事があります。

ウェアハウスを最新の状態に保つには、トランザクションシステムからのリアルタイムまたはリアルタイムに近いデータストリーミングと、非トランザクションシステムからの通常のデータフローを使用することをお勧めします。使用可能なツールを使用すると、元のワークフローが検証された後、これらのプロセスを大幅に自動化できます。

1
Aby Sheffer

これは多くの外部要因に依存します。異なるデータスキーマを見ただけで統合するのはそれほど難しいことではないでしょう。一方のデータソースをもう一方にドラッグするか、3番目のデータソースから始めて、既存の両方のニーズを考慮してゼロから構築します。データを移行します。しかし、次のような依存関係があります

  • いずれかのストアに技術的および論理的に関連付けられたアプリケーション。
  • サービスの品質、継続性、データの最新性の維持、プライバシーの問題、データの商業的利用などに関する組織の責任。
  • 非常に異なる可能性があるさまざまなデータベースシステムのライセンス料。ベンダーとの契約は、何年もの間延長されただけかもしれません。
  • 一般的な会社の政治:bewデータの所有者は誰ですか?;

したがって、どちらが一般的に好ましいかを判断することは不可能です。

0
Martin Maat

同期して考えると、いくつかのアイデアが頭に浮かびます。

  • システム間のデータの高可用性。
  • これらのシステム間でのデータの平等化
  • これらのシステム間のデータ交換
  • データの高い揮発性
  • データ交換の頻度が高い(1分に1回、1時間に1日)
  • Lightweigthプロセス
  • シンプルさ

代表的な例はSCMです。複数のデータストア(ローカルファイルシステム、サーバーのファイルシステム、および同僚のファイルシステム)間でコードを同期します。

コードを頻繁に同期できるように、リポジトリはできるだけ長く使用できるようにします。

同期の頻度が高いほど、誰でも簡単にマージできます。

一方、統合(統合)の場合、次のように考える傾向があります。

  • 大量のデータ
  • 頻度が少ない。毎日、毎週、毎月、毎年。
  • データ交換なし、単一のデータストアにデータをバルキングするシステムのみ
  • 重いプロセス
  • 複雑
  • 単一のデータモデルに変換されたさまざまなデータ形式
  • セントリックデータストア
  • データの質

代表的な例は ETLs です。通常 ETLs は同期よりも頻繁に行われます。

移動および変換するデータの量が多いため、プロセスは通常より重くて複雑です。重い負荷と複雑な変換には、より多くのリソースが必要です。または専用環境。

通常、データは複数のソースから取得されますが、これらのソースに戻ることはほとんどありません。

とはいえ、どちらのプロセスも相互に排他的ではないことがわかります。最初にETLを夜間に実行し、後で異なるシステム間で継続的な同期を実行することを決定できます。

あなたの特定のケースに戻って、要件に依存します。通常、要件の収集中に優先順位を検出し、要件の分析中に適切な戦略を選択します。

シナリオによると、会社は、さまざまなソースからのデータへのアクセスと検証を簡素化するためにデータ統合を必要としているようです。

そのため、最初にすべてのデータソースを1つのデータストアにまとめ、後で(必要に応じて)中心のデータストアと異なる部門間の同期を可能にします。

0
Laiv