データベース
 Computer >> コンピューター >  >> プログラミング >> データベース

多言語の永続性とは何ですか?

元々は2018年4月30日にObjectRocket.com/blogで公開されました

ポリグロットの永続性とは、さまざまなデータストレージテクノロジーを使用して、さまざまなデータストレージのニーズを処理することです。これは、さまざまなプログラミング言語を使用してアプリケーションを構築する、Polyglotプログラミングの派生物です。簡単に言えば、これは複数のコアデータベーステクノロジーを使用するアプリケーションです。

多言語の永続性とは何ですか?

仕事に適したツールを使用することも、仕事に適したデータベースを使用することも同様に重要です。各データベースには、長所、短所、および特性があります。ただし、文字通り何百ものデータベースが存在するため、追いつくのは困難です。

多言語の永続性とは何ですか? データストレージのニーズを管理する

Monoglot®は、1つのタイプのワークロードを使用する単純なアプリケーションには適していました(そして今でも問題ありません)。ただし、アプリケーションはすぐに複雑になります。

シンプルなEコマースプラットフォームは、次のツールを使用します。

  • バスケットにアイテムを追加するためのセッションデータ
  • 商品を検索するための検索エンジン
  • レコメンデーションエンジン、購入記録に基づく将来の購入の可能性
  • ジオロケーションサービスの支払いプラットフォーム

ポリグロットの永続性を実装すると、さまざまなストレージタイプのデータをアプリケーションに提供できます。 MongoDB®でユーザー情報を追跡し、Redis®にキャッシュを処理させながら、完了した金融取引をOracle®から引き出すことができます。

ポリグロットの永続性を実装し、オプションを検討します

多言語の永続性を構築することの複雑さに言及する多くの不満は、ストレージソリューションを不十分なプロジェクトに強制しようとすることに起因します。これにより、多数のサポートプロセスが作成され、モンスターアーキテクチャが成長し続けます。

注意深い計画により、潜在的な問題の90%が排除されます。あなたの目標を考えてください。統合されたビジネス機能が必要ですか?会社の業務の大部分をこのモデルに移行し始める必要がありますか?

適切なデータストレージテクノロジーを使用する

あなたのチームは以前にポリグロット永続化アーキテクチャを作成しましたか?このタイプのモデルの設計経験がなくても、適切なデータソリューションを適切に活用することは困難です。適切なプロジェクトから始めているかどうかはどうやってわかりますか?

データストレージタイプ

多くの場合、組織はアプリケーションにデータを提供するためにさまざまなデータソースを使用することになります。いくつかの一般的なストレージオプションを確認しましょう:

トランザクションデータベース は、リレーショナルデータベース管理システム(RDBMS)とも呼ばれ、情報を行と列のあるテーブルに編成することでデータの整合性を提供します。クエリと呼ばれる構文ステートメントを使用してデータを取得します。多くの大規模な組織は、Microsoft®SQLServer®やOracle®などの一般的なオプションを多用しています。トランザクションデータベースの欠点の1つは、ストレージのニーズが増大するにつれて、データベースの拡張が困難になる可能性があることです。また、データの密度が高くなり、アクセスが複雑になるため、検索が遅くなります。

非トランザクションデータベース 表形式のRDBMSシステムの使用からシフトし、スケーラビリティの向上と検索の高速化を可能にします。また、Elasticsearchなどの検索エンジンや分析エンジンともうまく組み合わせられます。人々はしばしばNoSQLという用語を使用します これらのデータベースを説明します。

非トランザクションストレージタイプ

非トランザクションストレージタイプには、次のオプションがあります。

  • キー値 :これらのデータベースは、データの保存場所を指すキーを使用します。ハッシュテーブルを使用するものもあれば、Redisのように、すばやくアクセスできるようにペアリングをメモリに保持するものもあります。
  • ドキュメント :これらは、JSONやXMLなどのエンコーディングを使用して構造化できるドキュメントに圧縮されたキーと値のペアで構成されます。人気のあるオープンソースバージョンには、MongoDBとCouchDB®が含まれます。
  • :RDBMS構造のように行ではなく、グループ化された列にデータを配置します。 Apache®CassandraとHBase®はこのモデルを使用しています。
  • グラフ :これらは、グラフ構造、ノード、エッジ、およびプロパティを使用して、データを整理および取得します。 Neo4j®は人気が高まっている例です。

多言語の永続性を正しく取得するということは、アプリケーションのニーズに最適なデータオプションを知ることを意味します。

質問 データ構造に関する質問
  • データは自然な構造になっていますか?構造化されていませんか?
  • 他のデータとどのように接続されていますか?
  • どのように配布されますか?
  • どのくらいのデータを扱っていますか?
アクセスパターンの質問
  • 読み取り/書き込みの比率はどれくらいですか?
  • それは均一ですか、それともランダムですか?
  • アプリケーションにとって、読み取りまたは書き込みの方が重要ですか?
組織には質問が必要です
  • 認証が必要ですか?どんなタイプですか?
  • 暗号化が必要ですか?
  • バックアップが必要ですか?
  • 災害現場が必要ですか?
  • プラグインが必要ですか?
  • どのレベルの監視が必要ですか?
  • どのドライバーが必要ですか?
  • どの言語を使用する必要がありますか?
  • サードパーティのツールを使用する必要がありますか?
適切なヘルプを提供する

多くの企業は、これらの決定を支援するために多言語アーキテクチャの専門家を招くことで恩恵を受けるでしょう。そうすれば、アーキテクチャが過度に複雑になるために追加のメンテナンス負荷が発生することを回避できます。いくつかの人気のあるオープンソースデータベースベンダーは、管理サービスを提供しています。しかし、彼らは彼ら自身のデータソースがあなたのニーズに適していないかどうかをあなたに知らせますか?

多言語の永続性を開始するには、さまざまなデータオプションの長所と短所を理解している会社に連絡することをお勧めします。 Rackspace ObjectRocketは、ビジネスニーズに適用できるさまざまなデータベースオプションを360度表示します。ビッグデータソリューションを次のレベルに引き上げるのに最適なDBAとエンジニアを紹介します。

RackspaceDBAサービスの詳細をご覧ください。

コメントや質問をするには、[フィードバック]タブを使用します。 セールスチャットをクリックすることもできます 今すぐチャットして会話を始めましょう。

RackspaceCloudの利用規約を表示します。


  1. クラウドストレージとは何ですか?

    クラウドストレージは、クラウド(オンライン)内のファイルストレージです。ファイルをローカルハードドライブ、外付けハードドライブ、またはフラッシュドライブに保存する代わりに、オンラインで保存できます。 クラウドストレージサービスを利用する理由は複数あります。ローカルハードドライブのディスク容量が不足している可能性があります。その場合は、クラウドを追加のストレージとして使用できます。どこからでも音楽コレクションをストリーミングしたり、自宅で仕事用ファイルにアクセスしたり、休暇のビデオを簡単に共有したりしたい場合は、ファイルをクラウドストレージサービスにオンラインでアップロードできます。クラウドス

  2. ストレージ ボード:RAID とは? [動画]

    ビデオ トランスクリプト こんにちは、オントラック データ リカバリのマイキーです。ストレージ ボードへようこそ!このエピソードでは、RAID システムとは何か、どのように機能するかについて見ていきますが、先に進む前に、RAID が何を表しているのかを正確に定義しましょう。 RAID の定義 RAID は Redundant Array of Independent Disks の略で、パフォーマンスと信頼性の向上を目的として、複数のディスクにデータを分散または分散できるデータ ストレージの方法です。 信頼性の向上により、企業が RAID システムのトップ ユーザーであることは驚くべきこ