こんにちは、私はGua Geです。 以前、ストレージプロジェクトに取り組んでいたとき、社内で使用されているファイルシステムを整理しました。現在、社内で使用されているファイルシステムには、GlusterFS、FastDFSなどがあります。ファイルシステムは、大量の小さなファイルや高い同時実行性の下ではパフォーマンスが急激に低下し、パフォーマンスのボトルネックが発生するため、分散オブジェクトストレージプラットフォームの構築を計画しています。以下は、市場で人気のある非構造化ファイル ストレージ製品の概要と比較です。
分散ファイルストレージの起源 データ爆発の時代において、生成されるデータの量は GB、TB、PB、ZB と増加し続けています。データの価値を掘り起こすことも、企業が常に追求している究極の目標です。しかし、膨大な量のデータをマイニングしたい場合、まず考慮する必要があるのは、テラバイト単位のデータなど、膨大な量のデータの保存です。 データストレージについて話すときは、ディスクのデータの読み取り速度と書き込み速度について話す必要があります。 1990 年代初頭には、一般的なハードディスクの記憶容量は約 1G で、ハードディスクの読み取り速度は約 4.4MB/秒でした。ハードディスクの読み込みには5分程度かかっていましたが、現在ではハードディスクの容量は1TB程度と、1000倍近くまで拡大しています。しかし、ハードディスクの読み取り速度は約100MB/秒です。ハードドライブの読み取りには約 2.5 時間かかります。そのため、TB レベルのデータに基づく分析の場合、計算分析は言うまでもなく、ハードディスクからデータを読み取るだけでも数日かかります。では、ビッグデータの保存、計算、分析はどのように処理するのでしょうか? 一般的に使用される分散ファイルストレージ 一般的な分散ファイルシステム GFS、HDFS、Luster、Ceph、GridFS、mogileFS、TFS、FastDFS など。それぞれ異なる分野に適しています。これらはシステム レベルの分散ファイル システムではなく、アプリケーション レベルの分散ファイル ストレージ サービスです。 分散ファイルストレージモデルの比較 よく知られているオープンソースの分散ファイルストレージ 1. GFS (Google ファイル システム) Google が独自のニーズを満たすために開発した、Linux ベースの独自の分散ファイルシステム。 Google はシステムの技術的な詳細の一部を公開していますが、システムのソフトウェア部分はオープンソース ソフトウェアとして公開していません。 2. HDFS Hadoop は、HDFS と呼ばれる分散ファイル システム (Hadoop Distributed File System) を実装します。 Hadoop は、Apache Lucene の作成者である Doug Cutting によって開発された、広く使用されているテキスト検索ライブラリです。それはApache Nutchから生まれました。 後者はオープンソースの Web 検索エンジンであり、それ自体が Luene プロジェクトの一部です。 Aapche Hadoop アーキテクチャは、MapReduce アルゴリズムのオープン ソース アプリケーションであり、Google が帝国を築く上で重要な基礎となります。 3.TFS TFS (Taobao FileSystem) は、主に大量の非構造化データを対象とした、拡張性、可用性、パフォーマンスに優れたインターネット指向の分散ファイルシステムです。一般的なLinuxマシンクラスタ上に構築されており、外部に高い信頼性を提供することができます。 高度な同時ストレージアクセスを実現します。 TFS は、通常ファイル サイズが 1 MB を超えない大規模な小さなファイル ストレージを Taobao に提供します。これは、Taobao の小さなファイル ストレージの需要を満たし、さまざまな Taobao アプリケーションで広く使用されています。 HA アーキテクチャとスムーズな拡張を採用し、ファイルシステム全体の可用性とスケーラビリティを確保します。同時に、フラットなデータ編成構造により、ファイル名をファイルの物理アドレスにマップできるため、ファイル アクセス プロセスが簡素化され、TFS に一定の範囲で優れた読み取りおよび書き込みパフォーマンスが提供されます。 多くの分散ファイルシステムの起源となった Google の学術論文。 HDFS と TFS は、Google の GFS を参考に設計されています。 典型的な分散ファイルストレージアーキテクチャ設計 Hadoop の HDFS を例に挙げてみます。結局のところ、これは最も広く使用されているオープンソースの分散ファイルストレージです。 Hadoop 分散ファイル システム (HDFS) は、市販のハードウェア上で実行するのに適した分散ファイル システムとして設計されています。 HDFS は、安価なマシンへの導入に適した、耐障害性が非常に高いシステムです。 HDFS は高スループットのデータ アクセスを提供でき、大規模なデータ セット上のアプリケーションに非常に適しています。 HDFS は、ファイル システム データをストリーミングするという目的を達成するために、いくつかの POSIX 制約を緩和します。 大規模データセット HDFS 上で実行されるアプリケーションには非常に大きなデータ セットがあります。 HDFS 上の典型的なファイル サイズは、通常、G バイトから T バイトの間です。したがって、HDFS は大容量のファイル ストレージをサポートするように調整されています。全体的に高いデータ転送帯域幅を提供し、クラスター内の数百のノードに拡張できる必要があります。単一の HDFS インスタンスは、数千万のファイルをサポートできる必要があります。 シンプルな一貫性モデル HDFS アプリケーションには、「一度書き込み、何度も読み取り」のファイル アクセス モデルが必要です。ファイルが作成され、書き込まれ、閉じられた後は、変更する必要はありません。この仮定により、データの一貫性の問題が簡素化され、高スループットのデータ アクセスが可能になります。 Map/Reduce アプリケーションや Web クローラー アプリケーションは、このモデルに非常に適しています。将来的にはこのモデルを拡張して、ファイルへの追加の書き込み操作をサポートする予定です。 異機種ハードウェアおよびソフトウェアプラットフォーム間の移植性 HDFS は、プラットフォームの移植性を念頭に置いて設計されました。この機能により、大規模データ アプリケーション プラットフォームとしての HDFS の推進が容易になります。 ネームノードとデータノード HDFS はマスター/スレーブ アーキテクチャを採用しています。 HDFS クラスターは、Namenode と一定数のデータノードで構成されます。 Namenode は、ファイル システムの名前空間とファイルへのクライアント アクセスの管理を担当する中央サーバーです。 通常、クラスターにはノードごとに 1 つのデータノードがあり、それが配置されているノード上のストレージを管理する役割を担います。 HDFS はファイル システムの名前空間を公開し、ユーザーはファイルの形式でデータを保存できます。内部的には、ファイルは 1 つ以上のデータ ブロックに分割され、一連のデータノードに保存されます。 Namenode は、ファイルやディレクトリを開く、閉じる、名前を変更するなどのファイル システムの名前空間操作を実行します。また、データ ブロックを特定のデータノード ノードにマッピングする決定も行います。データノードは、ファイル システム クライアントからの読み取りおよび書き込み要求を処理する役割を担います。データ ブロックは、Namenode の統一されたスケジュールに従って作成、削除、複製されます。 Namenode と Datanode は、一般的な市販マシン上で実行できるように設計されています。これらのマシンでは通常、GNU/Linux オペレーティング システム (OS) が実行されます。 HDFS は Java で開発されているため、Java をサポートするマシンであれば、Namenode または Datanode をデプロイできます。 HDFS は移植性の高い Java 言語を使用しているため、さまざまな種類のマシンに導入できます。一般的なデプロイメント シナリオでは、マシン上で 1 つの Namenode インスタンスのみが実行され、クラスター内の他のマシンはそれぞれ Datanode インスタンスを実行します。このアーキテクチャでは、単一のマシン上で複数のデータノードを実行することを排除するものではありませんが、これはあまり一般的ではありません。 分散ストレージの未来 現代社会が産業時代から情報化時代へと移行する中で、情報技術の発展と人間生活のインテリジェント化により、データが爆発的に増加し、データは世界で最も価値のある資源になりつつあります。 物理的な保存形式に応じて、データ保存は集中型ストレージと分散型ストレージに分けられます。集中型ストレージは主に従来のストレージアレイ (従来のストレージ) に基づいていますが、分散型ストレージ (クラウド ストレージ) は主にソフトウェア定義ストレージに基づいています。 従来のストレージは、高い信頼性、優れた安定性、豊富な機能で常に知られていますが、同時に、水平方向のスケーラビリティが低い、価格が高い、データ接続が難しいなどの欠点も露呈しています。データアイランドが形成されやすく、データセンターの管理と保守のコストが高くなります。 分散ストレージ: データはネットワーク上の複数の独立したデバイスに保存されます。一般的には、標準の x86 サーバーとネットワーク相互接続が使用され、関連するストレージ ソフトウェアがそれら上で実行されます。システム全体としては外部世界に対してストレージ サービスを提供します。 。 つまり、分散ファイルストレージは、ストレージスペースの利用率を向上させるだけでなく、弾力的な拡張を実現し、運用コストを削減し、リソースの無駄を回避し、将来のデータ爆発時代のシナリオにより適しています。 |
<<: OpenStack と ZStack の詳細な比較: アーキテクチャ、デプロイメント、コンピューティング ストレージとネットワーク、運用と保守の監視など。
>>: 調査により、パブリッククラウド管理ツールが不足していることが判明
最近とても忙しくて、パソコンを使う時間がありませんでした。午後、SEO交流グループに参加したところ、...
昨日、ネットユーザーがDianshiフォーラムで「Googleツールバーをインストールすると、Goo...
米国政府による潜在的な規制は、AWS などのクラウド コンピューティング プロバイダーとその顧客に影...
[[383073]]著者は、正確にスケジュールされたタスクと遅延キュー処理機能を備えた、高同時実行シ...
Richard A. Spires 氏は、Learning Tree International の...
こんな状況を見たことありませんか?検索エンジンの検索結果には、ウェブサイトのタイトルとスナップショッ...
macrobash はインドに登録されたホスティング会社です (登録番号 U72300DL2010P...
小紅書はオフライン店舗を閉鎖した。 「金融グラフィティ」の報道によると、小紅書は最近、上海のオンライ...
2012年1月のcomScoreのレポートによると、Bingの現在の米国における市場シェアは、201...
[[421467]] COVID-19 パンデミックとそのロックダウン措置により、クラウド コンピュ...
今は最高の時であり、最悪の時でもある。この時代、インターネット界の大物たちがよく口にする言葉がありま...
インターネットの漸進的な発展に伴い、検索エンジンも同時に成長してきました。現在、国内市場で最も競争力...
中国の老舗ブランド「景文インターネット」の「618」イベントが始まりました:(1)香港VPS、日本V...
10月12日、2017年杭州雲奇カンファレンスにおいて、Alibaba Cloudは新世代のコンピュ...
Yecao Cloud は今年特別な Double Eleven プロモーションを開始しました。香港...