4

さて、100 以上のテーブルを持つ大規模な MySql データベースがあるとしましょう。非常にうまく動作しますが、年間 1 億エントリを超えるテーブルが 2 つあります。これら 2 つのテーブルでは、情報をアーカイブするだけでなく、検索と計算を実行する必要があります。

これらのテーブルのロジックを、スケーラビリティが高い NoSQL データベースに移すことを考えていました (MongoDB、CouchDB)。

これらのテーブルに格納された情報は、アプリケーションを介して多くのクエリで使用されるため、2 つのデータベース間でマージを作成する方法があるかどうかを考えていました。

nosql db から自動的にデータを取得する sql クエリを作成するにはあまりにも美しいですが、別のアプローチがあるかもしれません。MySQL でストアド plsql プロシージャを使用して NoSQL データベースでクエリを呼び出すようなものです。または、plsql からシステム コマンドを呼び出して結果を取得します。

言及したいのは、例としてMySQLを使用したことです.Oracle、Postgresなど何でもかまいません。

4

1 に答える 1

1

したがって、このようなことを行うための流行語は、Polyglot Persistenceです(これはさらなる研究に役立つかもしれません)。ほとんどの場合、この異なるデータストアの統合は自分で行う必要があります。私が知っている2つの解決策がありますが、テストしていません。

1 つ目は、2 つのデータストア上の抽象化として EclipseLink を使用しています。そのために見つけた最初のリンク: http://blog.eisele.net/2012/11/polyglot-persistence-eclipselink-with.html

2 つ目は、PostgreSQL および Foreign データ ラッパーを使用して、Postgres 内に nosql データベースをネストする方法です: http://wiki.postgresql.org/wiki/Foreign_data_wrappers

于 2013-05-01T16:27:52.550 に答える