ベンダーが違うと、インターフェースを設けてデータ連携、なんていう対応方法が定石ですが、これだと、
- データ連携に(多少なりとも)タイムラグが発生する
- 同じデータを複数のシステムで管理することになる
というので、あまり好きではありません。アーキテクチャーとしては、もっとシンプルにしたい。オブジェクト指向みたいに、データをラッピングする、的な。
横道に逸れましたが、異なるDB間でデータを共有する方法はいくつかあるようです。
Oracleだとデータベースリンクがあるとのこと。
異なるサーバのDBデータ同士を結合するには?
OracleのHPを探すと、ありました。
分散データベースの概念
「同機種間分散データベース・システム」というのがOracle DB同士のデータ連携らしい。バージョンとか文字コードの問題とかが解決できれば、技術的には普通のレベルのようです。
「異機種間分散データベース・システム」 は、少なくとも一方がOracleだと良い(当たり前か)ようです。これだと、SQL Serverとかとも連携できるよう。
分散データベースなんて昔からの技術なので、 インターフェースを設けずにデータを直接参照する、ということは十分考えられますが、異なるベンダー間だと、
- 他ベンダーから変な負荷をかけられるのは嫌(責務が不明瞭になる)
- 契約時に相手ベンダーとバージョンチェックとか余計な手間がかかる(相互に依存するシステムになってしまう)
といった背景で、疎結合のままにしているというのが現実解のようです(というか、自分が担当しているシステムでもそう)。
0 件のコメント:
コメントを投稿