-
Notifications
You must be signed in to change notification settings - Fork 0
MS_DataIntegration
- 戻る(データアクセスのいろいろ)
- データ連携
- クロスDB対応
- 簡単。
- 連携元が、他システムの DB スキーマの変更の影響を受ける。
補足(他システムの DB を直接参照する方式): 最も手軽だが、
システム間の結合度が最大になる方式である。
スキーマ変更の影響に加え、
- 他システムのトランザクション中の中途半端な状態を読んでしまう
- 参照が相手システムのロック待ちを誘発する
(SQL Server でのロック・タイムアウト)- 障害の切り分けが困難になる
といった問題がある。
どうしても採る場合は、参照専用のビューを相手側に用意してもらい、
それを外部スキーマ(契約)として扱うのが定石。
読み取り側は RCSI や読み取り可能セカンダリ
(SQL Server のクラスタリング)を使って
相手を止めない配慮も必要になる。
SOAP、REST(XML、JSON)、OData、GraphQLなどがある。
- 連携元が、他システムの変更の影響を受けない。
- 性能に問題がある(バッチ インターフェイスを設ける)。
- 個別に公開・取込のサービスを開発する必要がある。
ファイル・インターフェイスや、MQ、
DB キュー(Service Broker 的なもの)等がある。
- 連携元が、他システムの変更の影響を受けない。
- 非同期インフラの開発・構築が複雑。
- 個別に公開・取込のサービスを開発する必要がある。
補足(非同期の本当のメリット): 上表では「変更の影響を受けない」しか
挙がっていないが、非同期方式の主眼は
**可用性の分離(時間的結合の解消)**にある。
観点 同期(API 呼び出し) 非同期(メッセージ) 相手が落ちている こちらも失敗する キューに溜まり、復旧後に処理される 負荷の急増 相手に直撃する キューが緩衝材になる(バックプレッシャー) 応答 即時に結果が得られる 結果は別途通知が必要 整合性 同期的 結果整合性になる 一方で、非同期には固有の設計課題がある。
- 冪等性: 同じメッセージが 2 回届いても壊れないようにする
(多くのキューは at-least-once 配信)- 順序保証: 必要ならセッション / パーティション キーで担保する
- 失敗の扱い: 再試行回数と**配信不能キュー(DLQ)**の設計
- DB 更新とメッセージ送信の原子性: Outbox パターンで解決する
(クラウド設計パターン、MS-DTC)Azure では Azure Service Bus /
Azure Event Hubs が該当する。
- HULFT7 製品概要 ファイル転送・データ連携
HULFT シリーズ セゾン情報システムズ
http://www.hulft.com/software/hulft_7/
- データ連携ミドルウェア「ASTERIA WARP」の特長
EAI - ESB 国内シェア No.1 の【ASTERIA】 インフォテリア株式会社
http://www.infoteria.com/jp/warp/feature/- Excel アダプタ
- Dr.Sum EA アダプタ
- LDAP アダプタ
- Windows Azure アダプタ
- XBRL アダプタ
- Amazon Web Service アダプタ
- 全銀 TCP/IP アダプタ
- Salesforce パイプライン アクション
- Notes アダプタ
- SQL Server Integration Services(SSIS)
https://learn.microsoft.com/ja-jp/sql/integration-services/sql-server-integration-services- Integration Services の機能とタスク
- Integration Services (SSIS) パッケージ
- Integration Services の機能とタスク
Apache NiFi(DNET_ApacheNiFi.md)
EAI/ETL 系のデータフロー・オーケストレーション・ツール。
-
データ連携(ETL-EAI) 製品 | アシスト
http://www.ashisuto.co.jp/product/category/etl/- DataSpider Servista
- Syncsort DMExpress
- Progress DataDirect
- CA Fast Unload for Distributed Databases
- Talend
-
DB のレプリケーション
要件によっては DBMS のレプリケーションの機能なども使用できる。
補足(最新化:クラウド側の選択肢): 現在は、上記の
オンプレミス製品に加えてマネージド サービスが主流の選択肢になっている。
分類 Azure のサービス ETL / ELT パイプライン Azure Data Factory、Microsoft Fabric Data Factory イベント駆動の連携 Azure Functions、Azure Logic Apps メッセージング Azure Service Bus / Event Grid / Event Hubs 変更データの取り込み SQL Server の CDC(変更データ キャプチャ) / 変更追跡 特に CDC は、「DB 参照(同期)」の代わりに
更新差分だけを非同期に取り出す手段として有力で、
相手システムに負荷をかけずに済む。
-
連載「クラウドデータ連携の基礎知識」の記事一覧
-
第1回 データ連携の現在・過去・未来
http://thinkit.co.jp/story/2011/08/03/2221- データ連携の紀元前~第1世代(ミドルウェア時代)
MOM(Message Oriented Middleware:メッセージ指向ミドルウェア) - データ連携第2世代(EAI の登場)
データハブもしくはデータアダプタ - データ連携第3世代(SOA 時代の到来)
- データ連携第4世代(クラウド時代)
- データ連携の紀元前~第1世代(ミドルウェア時代)
-
第2回 データ連携の仕組みとススメ方
http://thinkit.co.jp/story/2011/08/10/2231 -
第3回 事例で見るデータ連携の実際
http://thinkit.co.jp/story/2011/08/24/2240
-
Tags: 移行, データアクセス, .NET開発
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。