インターネット分散ストレージ入門

インターネット分散ストレージ入門

Google、Amazon、Tencent などの大手インターネット企業では、事業が広範囲にわたるため、保存する必要があるユーザーデータが大量にあるため、分散ストレージ システムがこのような企業のインフラストラクチャになることがよくあります。分散ストレージには、単一マシンのストレージ エンジンや分散システム プロトコルなど、多くの領域が関係します。この記事は、分散ストレージ システムの基本概念の紹介となります。

分散ストレージが満たすべき基本条件

  • スケーラブル

WeChat Moments の写真を例にとると、WeChat の動作時間が長くなるにつれて、保存する必要がある Moments の写真の数も必然的に増加するため、これらの写真を保存する分散ストレージ システムは拡張可能でなければなりません。

  • 低コスト

大規模なインターネット企業の場合、保存するデータの量が非常に多いため、ストレージシステムをオンラインで運用できるかどうかを検討する上で、コストは非常に重要な指標となります。

  • 高性能

分散ストレージ クラスター全体であっても、単一マシンのストレージ エンジンであっても、高いパフォーマンスを保証する必要があります。そうでなければ、低コストは問題外です。

  • 使いやすさ

分散ストレージ システムは、インフラストラクチャとして、さまざまなビジネスにさらに貢献できるように使いやすくなければなりません。たとえば、Amazon の S3 はインターフェースが統一されており、アクセスが容易です。

分散ストレージシステムが直面する主な技術的課題

  • データ配信

ストレージ システム全体がクラスターです。データが複数のサーバーに均等に分散されるようにするにはどうすればよいでしょうか?特定のデータが複数のサーバーに分割されて保存されていると仮定した場合、サーバー間の読み取りと書き込みをどのように実現できるでしょうか?

  • 一貫性

データの信頼性を確保するために、同じデータを複数のコピーで保存する必要があります。これらの複数のデータコピーの一貫性を確保するにはどうすればよいでしょうか?

  • フォールトトレランス

クラスターの場合、マシンの障害は避けられません。障害をタイムリーに検出し、障害が発生したマシン上のデータとサービスを障害のないマシンに自動的に移行するにはどうすればよいでしょうか?

  • 負荷分散

どのクラスター システムにも負荷分散戦略の問題があり、分散ストレージ システムも例外ではありません。

  • トランザクションと同時実行制御

分散ストレージ システムがトランザクションと同時実行制御機能をサポートする必要がある場合、どのように実現できますか?

  • 使いやすさ

使いやすさについてはすでに述べたので、ここでは繰り返しません。

  • 圧縮/解凍

圧縮によって節約されるスペースと消費される CPU コンピューティング リソースのバランスをとるために、データの特性に基づいて適切な圧縮/解凍アルゴリズムを設計および選択する方法。

分散ストレージシステムにおけるデータ分類

インターネット ビジネスに関係するデータは、一般的に次の 3 つのカテゴリに分類できます。

1. 非構造化データ

代表的な例としては、画像、音声、ビデオファイルなどが挙げられます。

2. 構造化データ

リレーショナル データベースに保存される従来の 2 次元テーブル構造データ。

3. 半構造化データ

構造化データと非構造化データの違いの典型的な例としては、HTML ドキュメントが挙げられます。

分散ストレージシステムの分類

上記のデータ タイプを保存する実際のニーズに基づいて、分散ストレージ システムは徐々に次の 4 つのタイプに進化してきました。

1. 分散ファイルシステム

通常、非構造化データを保存するために使用されます。たとえば、HDFS、TFS (Taobao File System)、FastDFS などです。

2. 分散型キーバリューシステム

これは一般的に、Taobao の Tair、Redis、memcached などの半構造化データを格納するために使用されるハッシュ テーブルとして理解できます。

3. 分散テーブルシステム

非構造化データの保存にも使用されます。分散キーバリューシステムと比較すると、主キーに基づいた読み取りと書き込みを提供するだけでなく、Google の Big Table などの特定の主キー範囲のスキャンもサポートします。

4. 分散データベース

スタンドアロン データベースから開発され、構造化データを保存するために使用されます。典型的な例は、MySQL Sharding クラスターです。

<<:  面接官向け Java 仮想マシンの概要

>>:  WAN 変革: クラウド コンピューティングからユビキタスなエラスティック ネットワークへ

推薦する

Amapと中国気象局が共同でAI版洪水マップを開発し、道路の洪水をリアルタイムで予測

5月31日、AutoNavi Mapは中国気象庁公衆気象サービスセンターと戦略的提携を締結したと発表...

ウェブサイトのユーザーのニーズを早期に把握し、その心理を理解することが鍵となる

ウェブサイトを運用または最適化する際には、ウェブサイトで何ができるのか、ユーザーにどのようなサービス...

私たちが長年行ってきたSEOについてお話ししましょう

このタイトルを書いた主な理由は、2012 年末現在、Baidu の SEO がますます制御不能になっ...

グループ購入ウェブサイトの究極の解決策とは: 垂直性と集中

広く流布している話ですが、ホッキョクレミングはノルウェー北部とユーラシア大陸の高緯度針葉樹林に一年中...

百度とキングソフトは問題の是正に向けて新たな一歩を踏み出したが、批判を浴びている。

百度が数か月以内に行った調整は、検索結果の品質向上に向けた同社の決意を示している。360 Searc...

SEOの10年の歴史を振り返り、SEO終焉の噂を打ち破る

2012年は特別な年です。古代マヤ人が予言した世紀の終わりです。もちろん、私はそれを信じていません。...

Hongmengは1024のプレイに焦点を当てたゲームを配布しました

[[430078]]詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したH...

SEOの6つの暗黙のルールについての簡単な説明

スターには暗黙のルールがあります。目立って先に進みたいなら、お金を払わなければなりません。もちろん、...

Firehostがクラウドホスティングを導入

FireHost は、米国テキサス州ダラスに本社を置いています。同社は、データ保護とユーザーのパフォ...

クラウド コンピューティングのコストを削減する 12 のプログラミング ヒント

翻訳者 |李睿校正 |孫淑娟クラウド コンピューティングのコストを削減するには、開発者を含むチーム全...

百度は新年に向けて外観を変更し、モバイル検索インデックスを追加

23日の夕方、いつものように百度のウェブサイトの状況を確認したところ、百度に若干の変更が加えられてい...

#11.11# kvmla: 日本 (東京\大阪)、香港 (将軍澳沙田 CN2)、シンガポールのすべての VPS が 40% オフ

kvmla が 11.11 プロモーション情報をお届けします: すべての VPS の年間支払いが 4...

顧客の電子メールアドレスを正確に収集するにはどうすればよいでしょうか? 顧客にメリットを簡潔かつ明確に伝える

企業が電子メール マーケティングを実施したい場合、まず必要なのは顧客の電子メール アドレスです。外部...