個人財務 開発者がNoSQLを愛する10の理由 - ダミー

開発者がNoSQLを愛する10の理由 - ダミー

目次:

Anonim

NoSQLデータベースの人気は、それらを使用することに興奮している膨大な数の開発者から生じます。開発者はNoSQLを有効化および解放の技術と見なします。従来のリレーショナル・アプローチとは異なり、NoSQLは、リレーショナル・データ・モデルよりもアプリケーションに近いデータを扱う方法を提供します。

開発者は多くの理由でNoSQLテクノロジを採用していますが、その一部はここで強調表示されています:

<! SQLを書く必要はありません - SQLを書く - それをうまくやることは、多くのエンタープライズ開発者の存在の悩みです。この痛みは、関連するテーブル間で複数の結合を持つ非常に複雑なクエリを書くのは簡単ではないためです。さらに、時間の経過とともにデータベースが定期的に変更されることを考慮して、複雑なクエリコードを維持することは、それ自体の仕事です。

エンタープライズ開発者はSQLの作成を避けるためにいくつかの方法を考案しました。最も一般的な方法の1つは、オブジェクト・リレーショナル・マッピング(ORM)ライブラリ、Hibernateを使用する方法です。 Hibernateは設定ファイルと1つまたは複数のオブジェクトをとり、開発者がそれを使用する必要がないように不快なSQLを抽象化します。これはもちろん、パフォーマンス面ではコストがかかりますが、すべてのクエリの使用例を解決するわけではありません。場合によっては、SQLにフォールバックする必要があります。

<! - 2 - >

NoSQLデータベースは、独自のクエリ言語を提供します。クエリ言語は、データベースおよび開発者が最も頻繁に実行する操作によってデータが管理される方法に合わせて調整されます。このアプローチは、ネストされたSQL文が行うよりも簡単な問合せメカニズムを提供します。

NoSQLデータベースの中には、開発者がSQLの習慣を壊すことができない場合に備えて、NoSQLデータベースを照会するためのSQLインターフェイスも用意されています。

スキーマを設計するのに何ヶ月も費やす必要はありません

<! - 3 - >

NoSQLデータベースのスキンアグノスティックスを使用すると、何カ月にもわたってリレーショナル・スキーマを作成しなくても、データをすばやくロードできます。 NoSQLに格納する必要があるすべてのデータ項目を、RDBMSと同様に分析する必要はありません。

データ変換コード(ETL)の削減

前向きスキーマ設計によるリレーショナル・データベースの一般的な問題は、非リレーショナル・データを行と列に強制しなければならないことです。このシュレッディングメカニズムは、格納のために情報を前処理して取り出し用に後処理する他のコードメソッドとともに、

extract、transform、およびload(ETL)

と呼ばれます。 このコードは、開発者に素晴らしい光沢のあるオブジェクトとドキュメントモデルを採用し、最後のすべての要素を保存するコードを作成するよう強制します。そうすることは厄介であり、パフォーマンスの低い、配慮のつかない配管コードを書いている高度に熟練した開発者にもつながります。 NoSQLデータベースを使用すると、格納されたデータ構造を元の形式に近づけることができます。システム間を流れるデータは通常XML形式ですが、Webアプリケーションの場合はデータはJSON形式でフォーマットされます。ネイティブにJSONを保存、管理、検索できることは、アプリケーション開発者にとって大きなメリットです。

コードを簡単に保守する

書くコードはすべて維持する必要があります。データベース構造をアプリケーションコードのデータ形式に近づけておくことで、コードの量を最小限に抑えることができます。これにより、時間とともに実行する必要のあるコードと回帰テストのメンテナンスが最小限に抑えられます。

RDBMSでデータ構造が変更された場合、変更されたテーブルを使用する可能性のあるすべてのSQLコードを確認する必要があります。 NoSQLでは、単に新しい要素のサポートを追加するか、単に無視します。 NoSQLデータベースのスキーマに依存しない性質のおかげで、維持管理が非常に簡単になりました。

最高のパフォーマンスを得るためにデータに近い実行コード

RDBMSは、データベースサーバー上でコードを実行するためのストアドプロシージャを提供します。このコードは1か所で実行されます。この便利なアプローチは、多くの分析および複雑なデータ管理アプリケーションの基礎となります。

多くのNoSQLデータベースでは、関連するデータを格納するすべてのサーバーにこのタイプのコードを配布することができ、作業負荷の並列化が可能になりました。このアプローチは、処理が必要なデータを大量に取得したり、クエリ時に複雑な集計分析を行う場合に特に重要です。

さまざまなNoSQLデータベースのユーザー定義関数(UDF)とサーバー側スクリプティングが、この分散機能を提供します。 UDFはHadoopのMapReduce機能と似ていますが、UDFはバッチモードではなくリアルタイムで実行され、Hadoopとデータベースに必要なインフラストラクチャに同じ経費を必要としません。

多くのオープンソースオプション

多くのエンタープライズソフトウェア分野では、オープンソースのソリッドソリューションの選択肢が欠けています。 1つまたは2つの広範なオプションしか存在しない可能性があります。スキルと現地サポートの入手可能性はさらに大きな問題です。

しかし、無数のオープンソースのNoSQLデータベースがあります。これらの多くは、サポートを提供し、世界的に拠点を持つ本格的な営利企業を持っています。したがって、サポートや機能が必要な場合は、最終的にこれらのバージョンに移行することができます。

これにより、NoSQLテクノロジを採用するコストが削減され、「購入する前に試してみる」ことができます。 「このオープンソースの選択肢が利用できるようになったことで、NoSQLの商用企業は、ソフトウェアの機能は無料だが、機能の豊富なバージョンを提供したり、小規模な組織に特別なスタートアップライセンスを提供したりしている。

容易な拡張性

SQLをリファクタリングしてマテリアライズド・ビューを作成してNoSQLシステムから1インチのパフォーマンスを引き出すために、コストのかかるDBAを取得する必要はありません。

キーバリューストアは、サーバーごとに数十万の操作を処理できます。すべてのタイプのNoSQLは、比較的安価なコモディティサーバー間で水平方向に拡張できます。したがって、従来のリレーショナルデータベースよりもNoSQLでデータベースクラスタを拡張する方がはるかに簡単です。

また、規模の拡大が可能であるため、NoSQLデータベースはパブリッククラウドとプライベートクラウドにも適しています。 NoSQLデータベースは、アプリケーションの変更に応じて柔軟に拡張および縮小するように設計されています。この能力は、しばしば

弾力性

と呼ばれる。 最終的な一貫性データモデル ミッションクリティカルなケースではACID準拠が必要ですが、すべてのアプリケーションでACIDを準拠させる必要はありません。非常に大規模なクラスタ間で整合性を緩和できることは、一部のアプリケーションでは有効です。

NoSQLデータベースを使用すると、これらの制約を緩和したり、異なるレコードタイプに対して、同じデータベース内に強い整合性と弱い整合性を混在させて一致させることができます。

非言語サポート

JavaやC#などの主要なプログラミング言語をサポートするデータベースはほとんどすべてです。ネット。多くのデータベースは、PHP、Python、Ruby on Railsなどのデータベースをサポートしています。

NoSQLには、さらに広範囲のプログラミング言語用の言語ドライバが豊富に用意されています。組織にドメイン固有の言語がある場合は、NoSQLデータベースでその言語のサポートを見つけることができます。

JavaScriptのエンドツーエンド

JavaScriptの使用は近年爆発的に増加しています。これは、WebとNodeのおかげで便利なスクリプト言語です。 jsをサーバー側で使用します。

多くのNoSQLデータベースは、完全なエンドツーエンドのJavaScript開発をサポートしています。つまり、組織では、Webアプリケーションや中間層のデータAPIやビジネスロジックを作成するために同じプログラミング言語スキルのプールを使用できるようになり、データの隣にバックエンドデータベーストリガーとMapReduceベースの分析処理を処理できます。

その結果、他のデータベース技術と比較して、NoSQLの総所有コスト(TCO)は低くなります。

開発者がNoSQLを愛する10の理由 - ダミー

エディタの選択

キーボードから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でそれを見つけることができませんか?おそらくそれは単にそこにないと思ったことはありますか?