ルールACIDをフォローするリレーショナルデータベース
それは、次の4つの特徴があり、英語でのサービスは、取引で、取引の現実の世界は非常に似ています。
。1 、A(原子)アトミック
アトミックは、それがいずれかのすべてまたは何も行われたすべての操作の業務に言うことです、理解しやすいです成功したトランザクションは、すべての操作の条件は限り一つの操作が失敗したとして、成功しているトランザクションで、トランザクション全体が失敗し、返す必要がありますロール。
そのような銀行振込、BのAから口座振替は100元を占めるように、2つのステップに分けられる:1)アカウントA 100とる; 2)$ 100 $ Bアカウントを堆積させます。これらの2つのステップは、いずれか一緒に完成されているか、最初のステップを完了する場合にのみ、第2のステップは失敗し、一緒にお金意志何とか100未満元を終了しないでください。
2 、C(整合)一貫
一貫性は、元のデータベースの整合性制約を変更しませんトランザクションを実行し、一貫性のある状態にデータベースにあったこと、また理解しやすいです。
たとえば、既存の整合性制約+ B = 10、トランザクションの変更、その変更は、Bに持っているので、トランザクションの終了後に、まだ満足していること+ B = 10が、そうでない場合は、トランザクションが失敗した場合。
3 、I(分離)独立性
長い他のコミットされていないトランザクションとして、データへのアクセスは、それが取引には影響を与えないよう、取引が提出されていない、別のトランザクションによって変更されている場合は、アクセスするデータを互いに同時トランザクションに影響を与えないようにする、いわゆる独立性を指し、 。
たとえば、今、この時点でBは、自分のアカウントを確認するために$ 100の新しい追加を見ることができない場合、トランザクションは、完了していないこのトランザクションの場合には、アカウントBに口座Aから100元に転送されています。
。4 、D(耐久REV)永続
それが永続的にデータベースに保存されます作られたトランザクションのコミット後に、変更することを意味持続性、ダウンタイムが発生しても失われることはありません。
二つのNOSQLデータベース
非リレーショナルデータベースのNOSQL広義の定義、彼は市場の状況のACIDデータベース理論の長期独占してリレーショナルデータベースを破った長いNOSQLデータベースストレージは、固定されたテーブル構造を必要としないた、一般的に動作させるための接続がありません。リレーショナル・データベースは、大きな二つのデータアクセスに比類のないパフォーマンス上の利点を持っています。
Mongdbは、高性能、オープンソース、スキーマ文書データベースです。BSON文書が文書である(JSONバイナリ)、セーブデータ:キーと値。
このような二次索引(二次索引)、範囲クエリ(範囲クエリ)、ソート、重合、第六の空間インデックスを有するように、多くの機能を拡張しました。
NoSQLの対三のRDBMS
RDBMSは、
-高度に構造化されたデータを組織
-構造化照会言語(SQL)(SQL)
-データとの関係は別のテーブルに格納されています。
-データ操作言語、データ定義言語
-厳格な一貫性
-基本サービス
NoSQL
- SQLだけでなく表し
ない宣言型クエリ言語を-
事前定義されたモデルが存在しない-
キー- -値ペア、列格納、文書記憶、グラフィックス、データベース
-なくACID特性よりも最終的な一貫、
-構造化されていないとできないが予測可能なデータ
- CAP定理
-高パフォーマンス、高可用性とスケーラビリティ
四CAP定理(CAP定理)
コンピュータサイエンスでは、また、ブリュワーの定理(ブリュワーの定理)として知られているCAP定理(CAP定理)は、分散コンピューティングシステムのために、同時に以下の3点を満たすことができないことが指摘されています:
- 整合性(コンシステンシー) (同時に同じデータを持つすべてのノード)
- アベイラビリティ(可用性) (すべての要求に関係なく、成功または失敗の応答を持っていることを確認してください)
- 別居トレランス(分割耐性) (情報のいずれかのシステムの損失や障害がシステムの継続的な動作には影響しません)
CAPコア理論がある:分散システムは、同時に、一貫性、可用性、耐障害性を満たし、かつ間だけ2つの良いを満たすことができ、これらの3つの要件を分割することはできません。
したがって、CAの原理を満たすためのNoSQLデータベースにCAPの原理に従って、CPおよびAPが出会う三つのカテゴリーの原理の原理を満たすために:
- CA - 通常それほど強力なスケーラビリティ上の一点クラスタ、会うの一貫性、システムの可用性、。
- CP - パフォーマンスは通常、特に高くない、システムの整合性、寛容パーティションを満たしています。
- AP - 出会いの可用性、システムの分割耐性、通常、いくつかの可能性が低い一貫性の要件。
ファイブBASE
BASE:基本的に利用可能な、ソフトの状態、最終的には一貫性の由エリック・ブリュワー定义。
CAPコア理論がある:分散システムは、同時に、一貫性、可用性、耐障害性を満たし、かつ間だけ2つの良いを満たすことができ、これらの3つの要件を分割することはできません。
BASEは、NoSQLのデータベースは、通常、可用性と弱い要件の一貫性の原則です。
- 基本的にavailbleで - 基本的な利用可能
- ソフトステート - ソフトステート/フレキシブルトランザクション。「ソフト状態」が「未接続」、および「ハード状態」として理解することが可能である「コネクション指向」で
- 結果整合性 - 結果整合性は、ACIDの究極の目標です。
BASE対ACID
酸 |
ベース |
アトミック(tomicity) |
基本的な利用(B asically 利用できます) |
一貫性(Cの onsistency) |
ソフト状態/柔軟なトランザクション(S OFT州) |
アイソレーション(Iのゾル化) |
最終的な一貫性(E ventual整合) |
永続的な(Dの urable) |