2012-08-29 23 views
8

私は今、nosqlのkey/valueデータベースについて多くのことを聞いています。あなたは何が使用されているかの例を挙げることができますか?このような種類のデータベースには、どのような現実世界のデータが最適ですか?NoSql Key/Valueデータベースとは何ですか

+0

私はdownvoteを理解していませんか?これは有効な質問ですね。 –

答えて

5

私は 'What the heck are you actually using NoSQL for'は、NoSQLデータベースの実際の使用状況の優れた読書だと思います。

  • は、非トランザクションデータの大量のストリームを管理する::Apacheのログ、アプリケーションログ、MySQLのログ、クリックストリームなど

  • は、オンラインとオフラインのデータを同期私はここではそれらのいくつかを引用してみましょう。これはCouchDBが目標とするニッチです。 すべての負荷での応答時間が速い。

  • 複雑な結合に対するクエリの負荷がRDBMSにとって大きすぎる場合に重い結合を避ける。

  • 低遅延が重要なソフトリアルタイムシステム。ゲームの一例です。

  • さまざまな異なる書き込み、読み取り、照会、および整合性パターンをサポートする必要があるアプリケーション。 50%の書き込み、50%の書き込み、95%の書き込み、または95%の読み取りに対して最適化されたシステムがあります。

  • 極端な速度と弾力性を必要とする読み取り専用アプリケーションでは、単純に クエリが使用され、わずかに古くなったデータにも耐えられます。

  • 適度なパフォーマンス、読み取り/書き込みアクセス、単純なクエリ、完全に の権威あるデータを必要とするアプリケーション。

  • 複雑なクエリ要件を満たす読み取り専用アプリケーション。

  • ロードバランスは、データと使用濃度を調整し、マイクロプロセッサをビジー状態に保つのに役立ちます。

  • リアルタイムの挿入、更新、およびクエリ。

  • スレッドディスカッションやパーツの爆発などの階層的なデータ。

  • ダイナミックテーブルの作成。

  • 低レイテンシデータが高速NoSQLインターフェイスを介して利用できる2層アプリケーションですが、データそのものは高レイテンシのHadoopアプリケーションやその他の優先度の低いアプリケーションによって計算および更新できます。

  • 逐次データ読み取り。適切な基礎となるデータストレージモデルを選択する必要があります。 Bツリーは、順次読み取りのための最良のモデルではない可能性があります。

  • パフォーマンス/スケーラビリティの向上が必要なサービスの一部を、独自のシステムにスライスします。たとえば、ユーザーログインは高性能である必要があり、この機能はこれらの目標を達成するために専用のサービスを使用できます。

  • キャッシング。 Webサイトやその他のアプリケーション用の高性能キャッシング層。例は、大型ハドロンコライダーが使用するデータ集約システムのキャッシュです。

  • 投票。

  • リアルタイムページビューカウンタ。

  • ユーザー登録、プロファイル、およびセッションデータ。

  • ドキュメント、カタログ管理およびコンテンツ管理システム。これらは、複雑な文書を格納する機能が、リレーショナル表として構成されているのではなく、全体を格納する機能によって容易になります。同様のロジックが在庫、ショッピングカート、その他の構造化データタイプに適用されます。

  • アーカイブ。オンラインで依然としてアクセス可能な大量の連続したデータストリームを保存する。

  • 時間の経過とともにスキーマの変更を処理できる柔軟なスキーマを持つドキュメント指向のデータベース。

  • Analytics。 MapReduce、Hive、またはPigを使用して、高い書き込み負荷をサポートする分析クエリおよびスケールアウトシステムを実行します。

+0

ありがとう。私は次のプロジェクトでIDを使用できると思ったが、そうは思わなかった。私はグラフデータベースがより適切かもしれないと思います。もう一度あなたのexplainationのおかげで。 – Luke101

関連する問題