4つの分散データベースシナリオの選択、利点と欠点の比較分析、および将来の展望

4つの分散データベースシナリオの選択、利点と欠点の比較分析、および将来の展望

  [[273746]]

1 はじめに

近年、国際的な情報セキュリティ情勢が厳しさを増す中、国家の情報セキュリティ戦略も徐々に深化しています。そのため、安全で信頼性が高く、制御可能な情報技術システムを構築するという要件を満たすために、金融業界のデータベース技術が人によって制限されているという厳しい状況に対処するために、1つの銀行、2つの規制機関、2つの規制機関が関連政策を相次いで導入しました。

近年の包摂金融の発展をみると、利用者数の増加と平均注文額の低さによってもたらされた主な課題は、データ量と取引量の大幅な増加であり、それに伴い取引ピーク時の圧力が数十倍に増加し、取引の複雑さが増していることである。このようなアプリケーション シナリオを扱う場合、従来のデータベースでは、スケーラビリティ、パフォーマンス、スループット、信頼性の点で明らかなボトルネックが発生します。パフォーマンスを向上させるには、業務を分割し、ハードウェアをアップグレードするしかなく、結果として設備投資と人件費が継続的に増加します。インターネット金融の継続的な発展に伴い、データのやり取りと保存も飛躍的に増加しており、このアプローチではビジネスの継続性を保証できません。この形式では、分散データベースの選択において、さまざまなビジネス シナリオと主要システムに応じて、さまざまなオープン ソース製品が選択されます。オープンソース データベースの徹底的な調査と適用により、インターネット金融ビジネス シナリオのトランザクション処理およびデータ処理の要件が満たされます。

従来のデータベースに関する2つのこと

個人的には、分散データベースは従来のリレーショナル データベースから生まれたものだと考えています。これら 2 つは異なるシナリオで設計されています。前者はエンタープライズレベルのアプリケーションを対象としており、独立したサーバー上で実行されますが、後者のアプリケーションはインターネットユーザー向けです。ユーザー データの量が劇的に増加するにつれて、従来のリレーショナル データベースのスケーラビリティの欠点が、一般的に次の点でますます顕著になってきています。

(1)シングルポイント処理の性能ボトルネック、つまり、シングルポイントデータベースシステムは、大規模な同時要求や計算を処理できない。

(2)単一拠点での運用はリスクが高く、災害や故障に対する耐性が低い。

(3)単一点貯蔵容量は限られており、水平方向ではなく垂直方向にしか拡張できない。

(4)アプリケーションの拡張やアップグレードが難しく、多額の設備投資が必要となる。

データベース自体に関しては、従来の分散データベースには独自のクラスター ソリューションがありますが、これは真の意味で分散されたものではなく、高可用性シナリオにおけるデータベースの負荷分散の問題を解決するためのものにすぎません。この特徴は、各データベースが冗長化されていることです。いわゆる冗長性とは、各データベース内のデータがまったく同じであることを意味します。したがって、データ量が一定レベルまで増加すると、クラスター内の各データベースに大きな負荷がかかります。

しかし、クラウド コンピューティングの出現がこれらすべてを引き起こしました。リソースがボトルネックではなくなると、分散データベースの時代が到来します。

3. 分散データベースについて話す

分散データベースの概念については詳しく説明しません。しかし、一般的には、データベース技術とネットワーク技術の融合として説明することができます。ここで、分散データベースを選択する理由は次のとおりです。

(1)柔軟なアーキテクチャを備えている。

(2)分散型管理統制組織に適応する。

(3)優れた経済実績

(4)システムは高い信頼性と良好な可用性を有する。

(5)ローカルアプリケーションは迅速に応答します。

(6)優れた拡張性と既存システムへの容易な統合。

では、分散データベースはどのように使用すればよいのでしょうか?分散データベースの選択はどのように行うべきでしょうか?

まず、分散データベースは、特性に基づいて、大きく 3 つのカテゴリに分類できます。

(1)MySQLやOceanBaseなどの永続ストレージをサポートする分散ストレージシステム

(2)Hadoop HDFS、Ceph、Swift、Blob、Cinder、Lustreなどのコンピューティングに重点を置いた分散コンピューティングフレームワーク。

(3)Redis、RMQ、CMQ、Kafkaなどの分散メッセージキュー。

次に、さまざまなアプリケーション シナリオと特性に基づいて、さらに次のカテゴリに分類できます。

(1)分散協調データベースシステム

(2)分散タスク

(3)ストリームコンピューティング

(4)分散ファイルシステム

(5)分散NoSQLストレージ

(6)分散リレーショナルデータベース

(7)分散メッセージキュー

核心的な質問に戻りますが、分散データベース テクノロジのルートをどのように選択すればよいのでしょうか?

配布は、一般的に、分散アクセス クライアント、分散ミドルウェア モード、分散データベース モードの 3 つの技術的ルートに分けられます。その中で、分散アクセス クライアントはアプリケーションに対する侵入性が高く、変換が非常に困難です。分散ミドルウェアは、データベースとアプリケーションの間にプロキシ層を構築する MyCAT などの製品に似ています。このソリューションは、分散トランザクションまたはデータベース間の関連付けをサポートできません。分散データベース ソリューションは、サブライブラリやサブテーブルなどのミドルウェアによって実装された機能を、アプリケーションに対して透過的なデータベース レベルにプッシュします。アプリケーションは、スタンドアロン データベースを使用する場合と同じように分散データベースを使用し、分散トランザクションを自然にサポートします。

4 よく使われる分散データベースとシナリオの選択

上記の概要を踏まえて、ElasticSearch、Redis、MySQL 分散クラスタ、MongoDB の 4 つの分散データベースを例として挙げ、導入、適用シナリオ、メリット、デメリット、バックアップ/永続性の観点から比較・分析します。 MySQL 分散クラスターには、Proxy、Cluster、Mha、Mgr などのクラスター モードが含まれます。 MyCAT や OceanBase などの MySQL プロトコルに基づく NewSQL はこの範囲には含まれません。

(1)はじめに

(2)応用シナリオ

(3)メリット

(4)デメリット

(5)バックアップ・永続化ソリューション

5 プロジェクトにおけるいくつかの問題

プロジェクトでは、分散データベースの設計には通常いくつかの困難が伴います。

(1)分散トランザクションの問題分散データベースでは、分散トランザクションのリアルタイムの一貫性を保証することは困難であり、フォールト トレランスの設計は包括的である必要があり、対応する可用性を犠牲にして一貫性を保証する必要があります。

(2)性能面では、トランザクションのグローバルな一貫性を確保するために、分散データベースでは、グローバルトランザクションの作業を分散するグローバルトランザクションマネージャが必要である。分散データベースによって機能が異なる場合があります。データとリクエストの量が一定レベルに達すると、トランザクション マネージャーが新たなボトルネックになる可能性があります。

(3)高可用性の問題:分散データベースクラスタ内のノードに障害が発生すると、障害の数と選出作業がクラスタ全体が提供するサービスの品質に影響を及ぼし、ビジネスの許容度と密接に関係します。

運用および保守フェーズでは、分散データベースを理解し、慣れ、実行していくプロセスが行われます。新しい製品や機能の運用と保守には、多くの準備作業が必要です。したがって、運用・保守段階に入る際には、一般的に次の手順を考慮する必要があります。

(1)共通で使用する操作・保守マニュアル、緊急時マニュアル、操作・保守マニュアルを作成する。

(2)分散データベース、特に重要な指標を監視する。

(3)技術マニュアルの研修及びアクセス制限

(4)問題を適時に特定するために定期的に訓練を実施する。

6 分散データベースの開発に関する考察

企業では、新技術や新製品の選択は、現在のビジネス シナリオのニーズを満たすだけでなく、今後 3 ~ 5 年間の製品の開発経路と方向性、そして将来のニーズを満たすために継続的に反復できるかどうかも考慮する必要があります。そのため、ユーザーが各技術の現状を理解するだけでは十分ではありません。技術の開発戦略とそのアーキテクチャの限界を理解して初めて、将来を予測し、洞察を得ることができます。アーキテクチャ上の制限は機能の欠如を意味するものではありません。多くの新しいテクノロジーは、最初は Oracle のような完全なエンタープライズ レベルの機能を提供することはできませんが、ユーザーがすべての機能が完了するまで待ってから学習して使用することを検討する必要があるわけではありません。ユーザーが新しい製品や技術を評価する場合、製品の機能ポイントはいくつかの重要な基本機能を満たす必要がありますが、一部の高度な機能はすぐに利用できる必要はありません。

分散データベースの場合、ビジネス シナリオやデータの使用および処理要件がより成熟し明確になるにつれて、分散データベースのシナリオと機能の区別がより明確になってきています。主な開発結果によると、データベースは基本的に分散型オンライン データベースと分散型コンピューティング データベースの 2 種類に分類できます。構造化されていない小さなファイルに対する需要は、分散データベースがこの分野でニッチな市場を切り開くことができるかどうかも試しています。非構造化ファイルストレージ用の小規模分散データベースも、後期の戦場の一つとなることが予想されます。

[著者] Gu Huangliang 氏は、R&D と運用保守の分野で 10 年の経験を持つ技術ベテランであり、インフラストラクチャ、セキュリティ、ミドルウェア、データベースを理解し、インテリジェントな運用保守システムの構築に重点を置いています。彼は Aerospace Morning Light および SAIC グループのクラウド コンピューティング センターで勤務し、現在は Suning Consumer Finance のセキュリティ運用保守部門のディレクターを務めています。

<<:  CloudOps 計画ではほとんど考慮されない 2 つのこと

>>:  集団訴訟でアップルが打撃を受ける:iCloudのデータはGoogleとMicrosoftのサーバーに保存されている

推薦する

WeChatマーケティング:夕食後にユーザーが何をするかを考える

夜が静かになると、WeChat ユーザーは活発に動き始め、携帯電話を振り始めます。WeChat の使...

IaaS 向け初のクエリ言語「ZStack クエリ言語 (ZQL)」を発表

UI 作業を簡素化し、運用および保守担当者により柔軟なリソース クエリ方法を提供するために、ZSta...

SAP が Shanying International のエコ製紙産業の構築を支援

山英国際ホールディングス株式会社(以下、「山英国際」)とSAPは、双方の上級役員が出席し、戦略協力の...

競合他社の分析を上手に行い、ウェブサイトを「無敵」にしましょう

昨今、ウェブサイトの数が多すぎます。業種やウェブサイトの種類を問わず、数千、数万のウェブサイトが存在...

ホームページのランキングに含まれない6つの重要な要素

360 ブラウザとの競争により、Baidu 検索エンジンも市場競争のプレッシャーを感じています。Ba...

SEO 診断とは何ですか?また、ウェブサイト診断の用途は何ですか?

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますSEO診断...

適切な Kubernetes ディストリビューションを選択するにはどうすればよいでしょうか?

[51CTO.com クイック翻訳] Kubernetes を使用してコンテナ化されたアプリケーショ...

「ブロックチェーンシステム」と「分散ストレージシステム」の詳しい説明

データの価値について話すとき、まずデータの量を計算する必要があります。各人が消費するたびに 80 バ...

サーバーレスの実装と課題

翻訳者 |徐磊校正:孫淑娟このシリーズの最初の記事では、サーバーレスがクラウド コンピューティングの...

内部構造から見たLefeng.com SEO設定の欠陥(1)

Lefeng.comは、Baiduで「化粧品」を検索すると、1位に表示されるウェブサイトです。実は、...

Rushmailは、メールマーケティング費用を無駄にすることなく、大量のメールを正確に送信する方法を教えます

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています電子メール...

頼れる人がいないので、損失を補うために全力を尽くし、百度中毒になることを拒否します

6月中旬から下旬にかけて始まった「百度地震」は、現在も継続中だ。百度の「低品質サイト対策が効果を発揮...

licloud: 香港の格安 VPS、100M 帯域幅、年間 16.99 ドル - 768M メモリ/1 コア/10G ハードディスク/399G トラフィック

Licloud は主に香港 VPS 事業を展開しており、現在は香港合理化ネットワーク (ハイブリッド...

完全な計画は検索エンジン最適化から始まります

検索エンジン最適化はウェブサイトの計画から始める必要があります多くの人は、ウェブサイトが完成してから...

高級品ウェブサイトがパンデミックに終止符を打つ:オンライン購入におけるサプライチェーンの混乱

中国の高級品オンラインショッピングの巨大な市場需要は、少しの混乱で簡単に変わることはないだろう。現在...