2016-08-29 14 views
-1

私は膨大な量のデータを必要とするプロジェクトに取り組んでいます。高性能で信頼性の高いデータベース

このため、膨大な量のデータを保存して取得するデータストアを探しています。データベースは簡単で、バウチャーの目的は1つあり、トランザクションとの1対多の関係があります。 1つのバウチャーには10〜100件の取引があります。 システムが数千のバウチャーを短時間で生成しなければならないことがあります。また、システムが数千回のトランザクションの書き込みまたは削除を行う可能性もあります。 バウチャーが有効であるかどうか(簡単な検索要求)であれば、アプリケーションが迅速に戻ることが非常に重要です。

私はこのためと最終候補リストに最良のデータベースを見つけるためにいくつかのブログを見ているがMongoDBの

  • 弾性検索
  • カサンドラ
  • 私のお気に入りは、弾性検索けど

    • ですESがプライマリデータストアとして使用するのに十分な信頼性がないと言ういくつかのブログが見つかりました。 mongodbにはクラスタ内での実行に問題があると言うブログもあります。 カサンドラでこのような仕事を経験しましたか?あるいは、他のデータベースを好むのですか?

    +0

    膨大なデータを定義しますか? – HLGEM

    答えて

    2

    私はMongoDBに関するいくつかの経験を持っていますが、これには無関心です。

    高速データベースが必要な場合、ゲームには多くの要因があります。あなたは、索引付け、垂直または水平のスケーリング、リレーショナルまたはnosql、パフォーマンスと読み上げのパフォーマンスを考え、それらのいずれかを選択する場合は、環境設定、バランシング、ネットワークの読み込みについて考える必要があります...トピックはDBからハードウェアへ。

    あなたが知っているデータベースに行って、規模を拡大し、管理し、調整することをお勧めします。

    私の個人的な経験では、クラスタ(シャーディング)上でMongoDBを実行するのに問題はなく、管理や計画が悪いために問題が発生する可能性があります。

    +0

    また、良いリレーショナルデータベースも追加して評価します。それらが適切に設計されていれば、巨大な(テラバイトと考える)データセットで高速化できます。 – HLGEM

    1

    高性能を必要とする巨大なデータベースを設計する上で、データベースの選択は最も重要ではありません。ほとんどのNosqlおよびリレーショナルデータベースは、このタイプのアプリケーションを効果的に実行するために作成できます。ハードウェアは非常に重要です。データベースの実際の設計と索引付けは重要です。実行する問合せのタイプは実行可能である必要があります。

    高性能の非常に大きなデータベースが必要なプロジェクトに取り掛かった場合、最初に最も重要なことは、これらのタイプのシステムで数年間働いているデータベースの専門家を雇うことです。これは、アプリケーション開発者がこれまでに行うべきことではありません。これは、初心者、または私のような中規模のデータベースだけで20年以上働いている人でさえも、仕事ではありません。あなたはあなたが支払うものを手に入れます。この場合、設計段階で実際の専門知識を払う必要があります。なぜなら、データベース設計ミスは、データがあれば修正するのが難しいからです。あなたが恒久的な雇用者を望んでいないが、専門知識を雇う場合は請負業者を雇う。

    関連する問題