ホームページ  >  記事  >  nosqlとは何ですか

nosqlとは何ですか

angryTom
angryTomオリジナル
2019-10-21 17:22:0032287ブラウズ

nosqlとは何ですか

nosql とは

1. nosql の概要

#NoSQL は、非リレーショナル データベースを指します。 NoSQL は、

Not Only SQL の略語と呼ばれることもあります。これは、従来のリレーショナル データベースとは異なるデータベース管理システムの総称です。 NoSQL は、非常に大規模なデータの保存に使用されます。これらのタイプのデータ ストアは固定スキーマを必要とせず、冗長な操作を行わずにスケールアウトできます。

2. Nosql とリレーショナル データベースの違い

1. 保存方法

関係データベースは表形式であるため、表の行と列に格納されます。これらは、多くの場合、ドキュメント、キーと値のペア、グラフ構造などのデータ セットに保存される共同ストレージに簡単にリンクできます。

2. 格納構造

リレーショナル データベースは構造化データに相当し、データ テーブルにはあらかじめ構造 (列定義) が定義されており、その構造によってデータが記述されます。コンテンツ。これはデータ モデリングにとって非常に重要であり、事前に定義された構造は信頼性と安定性をもたらしますが、このデータを変更するのは困難です。 Nosql データベースは動的構造に基づいており、非構造化データを使用します。 Nosql データベースは動的構造であるため、データ型と構造の変更に簡単に適応できます。

3. ストレージ仕様

リレーショナル データベースのデータ ストレージをより標準化するため、データは重複を避け、効率化されたスペースを使用するために最小のリレーショナル テーブルに分割されます。 。管理は非常に明確ですが、1 つの操作が複数のテーブルに対して設計されている場合、データ管理は少し面倒になります。 Nosql データはフラット データ セットに保存され、データが繰り返されることがよくあります。個々のデータベースが分離されることはほとんどありませんが、全体として保存されるため、データ全体の読み取りと書き込みが容易になります。

4. ストレージの拡張

これが 2 つの最大の違いかもしれません。リレーショナル データベースは垂直方向に拡張できるため、処理能力を向上させたい場合は、より高速なコンピュータを使用します。データはリレーショナル テーブルに格納されるため、操作のパフォーマンスのボトルネックには複数のテーブルが関係する可能性があり、コンピューターのパフォーマンスを向上させることで克服する必要があります。拡張の余地は大きいが、垂直方向の拡張はいずれ上限に達する。 Nosql データベースは水平方向に拡張可能であり、そのストレージは自然に分散されており、リソース プールに通常のデータベース サーバーを追加することで負荷を分散できます。

5. クエリ方法

リレーショナル データベースは、構造化クエリ言語 (通常 SQL と呼ばれるもの) を通じてデータベースを操作します。 SQL はデータベース CURD 操作をサポートしています。これは非常に強力であり、業界で標準的に使用されています。 Nosql クエリはデータをブロック単位で操作し、標準のない非構造化クエリ言語 (UnQl) を使用します。リレーショナル データベース テーブルの主キーの概念は、Nosql に格納されているドキュメントの ID に対応します。リレーショナル データベースは、事前定義された最適化メソッド (インデックスなど) を使用してクエリ操作を高速化しますが、Nosql はよりシンプルで正確なデータ アクセス モードを備えています。

6. トランザクション

リレーショナル データベースは、ACID ルール (原子性、一貫性、基本的に利用可能、ソフト/ソフト状態、結果的一貫性 (結果的一貫性)) に従います。リレーショナル データベースの強力なデータ一貫性により、トランザクションが非常によくサポートされます。リレーショナル データベースは、トランザクション アトミック性のきめ細かな制御をサポートし、回復が容易です。トランザクションのロール。Nosql データベースは、CAP (一貫性、可用性、パーティション トレランス) のうち 2 つを選択します。ノードベースの分散システムではこれらをすべて満たすのは難しいため、トランザクションのサポートはあまり良くありません (トランザクションも使用できますが、Nosql の輝かしい点ではありません)。

#7. パフォーマンス

リレーショナル データベースは、データの一貫性、読み取りと書き込みを維持するために多大なコストを支払います。パフォーマンスは比較的劣ります。

Nosql ストレージの形式が重要です。値型であり、メモリに保存されるため、保存が非常に簡単です。

8. 認証方法

リレーショナル データベースには通常、SQL Server、Mysql、Oracle が含まれます。主流の Nosql データベースには Redis が含まれますが、コストは比較的高く、Nosql データベースは通常オープン ソースです。

3. NoSQL を使用する理由

#現在、サードパーティ プラットフォーム (Google、Facebook など) を使用して、データに簡単にアクセスしてクロールすることができます。個人情報、ソーシャル ネットワーク、地理的位置、ユーザー生成データ、およびユーザー操作ログは急激に増加しており、これらのユーザー データをマイニングしたい場合、SQL データベースはこれらのアプリケーションには適していませんが、NoSQL データベースの開発によりこれらを処理できます。大きなデータもうまく処理できます。

以上がnosqlとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。