11

私は、SQL と NoSQL の両方のソリューション (多くの場合、SQL Server と Mongo) を使用する 3 番目のクライアントと協力しています。私が一緒に仕事をした最後の 2 人のクライアントは、大量の技術情報を理解していたので、リレーショナル データベースやドキュメント ストレージなどのフレーズは彼らにとって意味のあるものでした。私は銀行の処理を SQL の例として、ブログ ストレージを NoSQL の例として使用する傾向があります。クライアントが数十万文字になる可能性のあるトランザクションや「ライブ フィード」などの例を考えると、両方のソリューションを好む場合があります。

この別のクライアントは、彼のビジネスに優れていますが、そのような技術的優位性はありません (彼は傑出したカリスマ的リーダーです。私は決して彼を侮辱するつもりはありません。私たち全員が強みを持っているからです)。ここにいる誰かが、これらのデータベースの概念を技術的な角度から、これらのデータベースの概念になじみのない人々に説明しなければならなかったかどうか、また、各プロセスがどのように個別に機能し、どのように連携して機能するかを説明するために使用した例えを教えてください。

4

2 に答える 2

20

NoSQL (スキーマレス、ドキュメント ストア、What-have-you) データベースは、本のレシピのように情報を保存します。ケーキの作り方を知りたいときは、そのレシピに行くと、そのケーキの作り方に関するすべての情報 (材料、準備、混合、ベーキング、仕上げなど) がすべて 1 つのページにまとめられています。

SQL は、レシピの材料を購入するようなものです。すべての食材をカートに入れるには、各食材を手に入れるためにさまざまな通路に行かなければなりません。買い物が終わったら、食料品のカートは、走り回って集めなければならなかったすべての食材でいっぱいになります。

レシピで整理された店があれば、店の 1 つの場所に行くと、その場所から必要なものをすべて手に入れることができたらもっといいと思いませんか? 確かに、卵のような食材は 50 か所の異なる場所にあるため、棚に在庫を入れるときに多少のオーバーヘッドが発生しますが、消費者の観点からは、探しているものを見つけるのがはるかに簡単/迅速でした.

于 2013-01-20T19:15:12.373 に答える
6

noSQLのようなものはありません。まったく異なる哲学とユース ケースを持つ新しいデータベース テクノロジはたくさんありますが、それらに共通しているのは、SQL データベースとの共通点だけです。しかし、 「技術者ではない人に異種ストレージ戦略を説明するにはどうすればよいか」という質問が本当の意味である場合、私はオフィスの比喩を使用します。

オフィスは、さまざまな種類の情報が書かれた紙でいっぱいです。ただし、すべてを同じ方法で保存するわけではありません。

  • ファイルキャビネットに保管されているものもあります
  • いくつかはあなたの机の上に横たわっています
  • 一部はピンボードに固定されています

どうしてそれをするの?それぞれの種類の情報には異なるアクセス特性があるためです。ピンボードには、すばやくアクセスする必要があるデータ (memcached など) がいっぱいです。キャビネットはめったに見たり変更したりしないデータでいっぱいですが、将来的には非常に重要になる可能性があります。また、検索を最適化するために非常に組織化されています (リレーショナル データベースのように)。あなたのデスクは、すぐにアクセスしたいデータでいっぱいです。机の上に物事を厳密に並べると、生産性が低下するため (ドキュメント ストレージなど)、あまり秩序がありません。

オフィスでデータの種類ごとに異なる保存方法を選択するのと同じように、当社のコンピューター システムでは、情報の種類ごとに異なる保存方法を使用します。

于 2013-01-20T19:15:02.467 に答える