個人財務 NoSQLの一般的な特徴 - ダミー

NoSQLの一般的な特徴 - ダミー

目次:

ビデオ: An Introduction To NoSQL Databases 2024

ビデオ: An Introduction To NoSQL Databases 2024
Anonim

NoSQLの書籍やブログは、NoSQLデータベースとは異なる意見を提供しています。次のリストに示すNoSQLの4つのコア機能が、ほとんどのNoSQLデータベースに適用されます。このリストは、NoSQLと従来のリレーショナルDBMSを比較しています。

  • スキーマに依存しない: データベーススキーマは、リレーショナルデータベース内のすべての可能なデータおよびデータ構造の説明です。 NoSQLデータベースを使用すると、スキーマは必要ありません。これにより、事前スキーマ設計をしなくても情報を自由に格納できます。

    <! - 1 - >
  • 非リレーショナル: データベース内の関係は、データテーブル間の接続を確立します。たとえば、取引明細のリストを個別の配送明細のリストに接続することができます。 NoSQLデータベースでは、この情報は集約として格納されます。配信アドレスを含むトランザクションに関するすべてのレコードが1つのレコードです。

  • 商品ハードウェア: 一部のデータベースは、専用のストレージおよび処理ハードウェアで最適(またはのみ)に動作するように設計されています。 NoSQLデータベースを使用すれば、安価な市販のサーバーを使用できます。これらの安価なサーバーを追加することで、NoSQLデータベースを拡張してより多くのデータを処理することができます。

    <! - 2 - >
  • 高度に配布可能: 分散データベースは、複数のデバイスに一連の情報を格納して処理することができます。 NoSQLデータベースを使用すると、単一の大きなデータベースを保持するためにサーバーのクラスタを使用できます。

スキーマに依存しない

NoSQLデータベースはスキーマに依存しません。 NoSQLデータベースにデータを格納するには、事前に多くの設計作業を行う必要はありません。データベースがどのように内部的に格納され、どのように動作するかを知らなくても、データのコーディングと格納と検索を開始できます。 (高度な機能が必要な場合は、手動でインデックスを追加したり、データストレージ構造を微調整することができます。)スキーマのアジノスクリプトは、NoSQLデータベースとリレーショナルデータベースの最も大きな違いです。

<! - 3 - >

スキーマにとらわれないデータベースにとって大きな利点は、開発時間が短縮されることです。この利点は、複数の開発リリースを経てデータベースの内部データ構造を変更する必要がある場合に増加します。

たとえば、従来のRDBMSでは、スキーマの再設計プロセスを実行します。スキーマは、どのデータを期待するかをデータベースに指示します。格納されたデータまたは構造を変更し、変更されたスキーマを使用してデータベースを再構築する必要があります。変更する場合は、既存のデータをどのように再構築するかを決めるのに多くの時間を費やす必要があります。 NoSQLデータベースでは、単に異なるデータ構造を保存するだけです。あらかじめデータベースに伝える必要はありません。

クエリを適宜変更しなければならない場合があります(データ型固有のクエリよりも小さくても大きくするために、整数範囲のインデックスなどの臨時の インデックス を追加することもできます)。それはRDBMSよりもはるかに痛いです。

RDBMSは、柔軟性と、SQLを使用することによってクエリの変更が急増したために浮上しました。 NoSQLデータベースは、スキーマとクエリの両方を変更するための柔軟性を提供します。これは、時間が経つにつれてますます採用される主な理由の1つです。

クエリであっても、スキーマの変更を知ることについてあまり心配する必要はないかもしれません。フィールドアカウント番号のインデックスを考えてください。 アカウント番号 は、 NoSQLデータベース。構造体を変更して、 口座番号 が格納されている場所を変更することができます。また、要素の名前が文書内の他の場所であれば、クエリメカニズムを変更せずにクエリで引き続き使用できます。

すべてのNoSQLデータベースが完全にスキーマに依存しているわけではないことに注意してください。 HBaseなどの一部では、列定義を変更するためにデータベースを停止する必要があります。定義済みのフィールド(ここでは列)すべてが、レコードごとに事前に知っている必要はなく、列ファミリだけであるため、NoSQLデータベースと見なされます。

RDBMSでは、レコードの個々のフィールドを null 値として識別できます。 RDBMSの問題点は、レコードが将来その列に値を持つ可能性がある場合に備えて、ストレージがヌル値用に予約されている場合に、格納されたデータのサイズとパフォーマンスが悪影響を受けることです。カサンドラでは、その列のデータを提供しないだけで問題を解決します。非リレーショナル

リレーショナルデータベース管理システムは、20年以上にわたりアプリケーションデータを保存するための主要な方法でした。それらを支える理論を証明するために、数学的な研究が多かった。

この基盤は、テーブルが互いにどのように関係しているかを説明します。 1つのOrder行は多くのDelivery Address行に関連することがありますが、各Delivery Address行は複数のOrder行にも関連します。これは多くの

- - - 多くの関係 です。 NoSQLデータベースには、レコード間の関係の概念がありません。代わりにデータを非正規化します。つまり、NoSQLデータベースでは、配信アドレスが埋め込まれたOrder構造が使用されます。つまり、配信アドレスは、配信アドレスが使用されているすべての注文行で複製されます。このアプローチには、複数のデータ構造(テーブル)にわたって複雑なクエリ時間結合を必要としないという利点があります。 NoSQLデータベースは、個々のレコードがデータベース内の他のレコードとどのように関連しているかについての情報を格納していません。ただし、NoSQLデータベースは、格納できるデータ構造の点でより柔軟性があります。

オンライン小売店からの注文を考えてみましょう。注文には、商品コード、数量、商品価格、商品説明、配送先住所や支払い情報などの注文者に関する情報が含まれます。

10個の行をリレーショナルデータベースのさまざまなテーブルに挿入するのではなく、JSONまたはXMLドキュメントなどのすべての注文情報に対して単一の構造を保存することができます。リレーショナルデータベース理論では、データを正規化する(つまり、重複したデータを削除するためにフィールドとテーブルを整理する)ことが目標です。

NoSQLデータベース(特に文書や集約データベース)では、意図的にデータを非正規化し、いくつかのデータを何度も保存します。

たとえば、顧客が一度保管して複数の注文で参照するのではなく、顧客が行った多くの注文に「顧客配達アドレス」を複数回保管することができます。そうするには余分なストレージスペースが必要になり、アプリケーションの管理に少し前もって考えなければなりません。それではなぜですか?

データを複数回保存することには2つの利点があります。 簡単な保存と取り出し: 保存して1つのレコードを取得するだけです。

クエリ速度:

リレーショナルデータベースでは、クエリー時に情報を結合し、テーブルに制約を追加します。これにより、データベースエンジンは多くのテーブルを評価する必要があります。異なるテーブル間でのクエリ制約が増えるほど、クエリ速度が低下します。これは、RDBMSがビューを事前計算した理由です.NoSQLデータベースでは、照会を評価するために必要なすべての情報が単一の文書内にあります。したがって、一致する文書のリストをすばやく特定できます。

  • リレーショナル・ビューとNoSQLの非正規化は、レコード間のデータ拡散の問題に対する異なるアプローチです。 NoSQLでは、同じデータの異なるビューを表す複数の非正規化を維持する必要があります。このアプローチでは、ストレージのコストが増加しますが、クエリ時間が大幅に短縮されます。 非標準化データ(別名

  • マテリアライズド・ビュー )は、NoSQLソリューションをディスカウントする重要な理由ではありません。それは、それ自身の長所と短所を持って同じ問題にアプローチするだけの方法です。

NoSQLは汎用性が高く、汎用ハードウェアを使用します。多くのNoSQLデータベースでは、データベース全体を1台のサーバーに格納するのではなく、複数のコンピュータを使用して1つのデータベースのデータを格納します。

複数のマシンにデータを格納して照会することは困難です。すべてのサーバーに照会を送信し、応答を待つ必要があります。うまくいけば、分散クエリを処理するために互いに話すのに十分な速さになるようにマシンをセットアップしてください! このアプローチの主な利点は、大容量のデータセットの場合です。一部のストレージ要件では、使用可能な最大の単一サーバーでも、必要なすべてのデータを格納または処理できないためです。 TwitterとFacebookのすべてのメッセージを考えてみましょう。ほとんどの人が朝食やかわいい猫のビデオのために持っていたものであっても、そのデータを効果的に管理するためには、分散した仕組みが必要です。 データベースを配布する利点は、

コモディティサーバー

と呼ばれる安価なサーバーを使用できることです。小規模なデータセットであっても、1台の高性能サーバーではなく、3台の汎用サーバーを購入するほうが安いかもしれません。

もう一つの重要な利点は、高可用性の追加が容易であることです。すでに途中でデータを配布しています。クラスタ内の他のサーバー間でデータを1〜2回複製すると、サーバーの1つがクラッシュしたり、焼損したり、死んでも、データにはアクセスできます。

サポートされている有料版のデータベースを開発会社から購入しない限り、すべてのオープンソースデータベースが高可用性をサポートするわけではありません。

高度に配布可能なルールの例外はグラフデータベースの例外です。適時に特定のグラフクエリに効果的に答えるには、データを単一のサーバーに格納する必要があります。誰もこの特定の問題をまだ解決していません。 トリプルストアまたはグラフストアが必要かどうかを慎重に検討します。トリプルストアは一般に配布可能ですが、グラフストアは配布されません。必要なものは、サポートする必要のあるクエリによって異なります。

NoSQLの一般的な特徴 - ダミー

エディタの選択

キーボードからQuickBooksアクションへのショートカット - ダミー

キーボードからQuickBooksアクションへのショートカット - ダミー

QuickBooks 2012には便利なショートカットが用意されています重要な会計業務を遂行する。この表では、最も便利なQuickBooksショートカットをいくつか紹介しています。ショートカットキーまたはキーの組み合わせ結果+選択した番号または日付ファイルに表示されている値に1を加算 - 表示されている値から1を引く...

QuickBooks 2012を介して給与サービスに登録する - ダミー

QuickBooks 2012を介して給与サービスに登録する - ダミー

QuickBooks 2012 Intuit QuickBooks Payroll Servicesページから特定のオプションを選択した後、一連のWebページフォームを記入します。あなたの会社名と住所を入力し、会社の雇用者識別番号またはEINを入力し、Intuitのようにクレジットカード情報も入力します。

同時にQuickBooks 2012に領収書と請求書を記録する - ダミー

同時にQuickBooks 2012に領収書と請求書を記録する - ダミー

はQuickBooks 2012で、アイテムの領収書を記録すると同時に受け取ったアイテムの請求書を記録します。これは、明細受領伝票登録ウィンドウの上部付近に表示される請求受領チェックボックスを選択するだけで実行できます。

エディタの選択

公正なダミーを戦うことによる結婚作業

公正なダミーを戦うことによる結婚作業

いくつかのカップルは、彼らが決して論じることはないと主張する。これは、両方のパートナーが自由に相違点を表現できるような結婚では不可能です。他のカップルは頻繁に非常に大声を出す頻繁な議論を持っています。しかし、戦いの量と頻度はあまり知られていない - カップルが戦う問題でもありません。最も重要なのは...

事件後のあなたの関係の再構築 - ダミー

事件後のあなたの関係の再構築 - ダミー

不倫は離婚の主要な原因ですが、離婚するよりも事件。事件後の再建は、カップルが不倫やパターンをさまざまな形で直面することを要求します。時間は癒えますが、それだけではありません。ここではいくつか...

苦しい関係の警告サインを認識する - ダミー

苦しい関係の警告サインを認識する - ダミー

完全な関係はありません。カップルは、紛争の公正な分配を期待する必要がありますが、これらの紛争にどのように対処するかは、強さや苦痛の兆候となります。毎日の問題が時間の経過とともに克服できない問題になる可能性を見失うと、困ってしまうことがあります。ここにいくつかの警告兆候があります...

エディタの選択

セキュリティで保護されたWebサーバーをSEOフレンドリにする方法 - ダミー

セキュリティで保護されたWebサーバーをSEOフレンドリにする方法 - ダミー

Ifユーザーがクレジットカード番号や他のタイプのアカウント情報などの機密データを提供するWebサイト上のページがある場合、これらのページを安全かつSEOに適したものにすることができます。機密情報を保護するためのインターネットソリューションは、これらのWebページを安全なサーバーに置くことです。技術的には、これは...

あなたのウェブページをローカライズする方法 - ダミー

あなたのウェブページをローカライズする方法 - ダミー

ローカルでは、あなたのページにローカルな用語があることを確認することです。理想的には、「お問い合わせ」ページだけではなく、すべてのページにこれらの用語を載せてください。いくつかのウェブサイトでは、地域の検索用語をランク付けする必要がありますが、やりたいことが少しでもありません。

検索エンジンがあなたのウェブサイトを索引付けしているかどうかを調べる方法 - ダミー

検索エンジンがあなたのウェブサイトを索引付けしているかどうかを調べる方法 - ダミー

Ifあなたは検索エンジンの最適化(SEO)を心配しているので、あなたのサイトが実際に検索エンジンやディレクトリにあるかどうかを調べることが重要です。あなたのサイトは、誰かがGoogleで検索したときに現れませんか? Bingでそれを見つけることができませんか?おそらくそれは単にそこにないと思ったことはありますか?