2016-10-07 16 views
1

私たちの要件は、複数のMarkLogicデータベースでMarkLogic検索機能を実行することです。私たちは、Marklogic 7 & 8の2つのバージョンがあり、この要件には2つのシナリオがあります。複数のデータベースで検索を実行

  1. データベースは1台のMarkLogicサーバー上で利用可能です。

    この場合、xdmp:eval()、xdmp:spawn()、MarkLogicのスーパーデータベースとサブデータベースの概念を実装します。しかし、私たちはどちらが支部のものであるかわからない。

  2. データベースは、異なるMarkLogicサーバーで使用できます。

    このシナリオでは、実装するものは不明です。しかし、我々はMarkLogicのHadoopとFlexible Replicationを検討しています。

これらのシナリオを見て、正しい方向に移動できるように最善のアイデアを共有してください。

+0

少し前に戻って、このようにする必要があると思う理由について話し合う価値があります。あなたは詳しく説明できますか? – grtjn

+0

私はあなたの議論したいことを知っています。しかし、これはクライアントの要件であり、私たちは可能性を模索しています。 –

+0

要件は必ずしも神聖ではありません。 :) – grtjn

答えて

1

上記のように、一歩前に戻って、これが必要かどうか議論する価値があるかもしれません。 MarkLogicは、コンテンツの混合を非常にうまく処理できます。複数のデータベースを持つことは、アーキテクチャを過度に複雑にする可能性が高いです。

私の頭の上ご質問に関するいくつかの考察から、言っ

  • MarkLogicデータベースが単一のサーバーに拘束されていませんが、クラスタへ。
  • DBレプリケーションまたはFlex-Repを使用して、クラスタ間でデータベースを同期できます。
  • xdmp:eval/spawnがオーバーヘッドをとり、潜在的なセキュリティホール(使用アンプなど)です。
  • スーパー/サブデータベースのオーバーヘッドは少なくなりますが、スーパーデータベース全体の範囲問合せでは、含まれるすべてのデータベースで一致する範囲索引を定義する必要があります。
  • スーパーデータベース全体でデータベースURIの一意性を確保することは、余計な労力を要します。

HTH!

関連する問題