分散ストレージシステムは、全体的なアーキテクチャの観点からは似ていますが、実装が困難です。自社開発の分散ストレージシステムは、徐々に成熟するまでに通常 2 ~ 3 年かかり、システムをいかに安定させるかが難しさとなります。システム開発プロセスには、アーキテクチャ設計、主要アルゴリズムの実装、品質管理、チームメンバーの育成、オンラインでの運用と保守、アプリケーションの連携などが含まれます。いずれかのリンクに問題があると、プロジェクト全体が失敗する可能性があります。 この記事では、一般的な分散ストレージシステムの開発パスを紹介します。 汎用分散ストレージ システムは設計されるのではなく、アプリケーションのニーズに応じて進化します。特定のビジネスに由来するものですが、一定の汎用性があり、幅広い問題を解決できます。一般的な分散ストレージ プラットフォームの利点は、そのスケール効果にあります。プラットフォームの規模が一定のバランスポイントを超えると、コストの優位性が明らかになります。 一般的な分散ストレージ プラットフォームには、主に 2 つの成長モデルがあります。
2 番目の開発モデルは比較的複雑であり、通常は次の段階を経る必要があります。 はじめに: 特定の問題を解決する 初期段階では、従来のシステムでは解決できなかった、または解決が不十分だった、ビジネスで提起された特別なニーズを解決する必要があります。たとえば、OceanBase システムが最初にリリースされたとき、Taobao のお気に入りビジネスによって発生した 2 つの大きなテーブルを左結合する問題を解決する必要がありました。スタートアップ段階における課題は主に技術的な課題であり、チームメンバーはこの段階で大きな技術的成長を達成できます。 生き残り:アプリが王様 プラットフォームの汎用性を証明するには、多数のビジネスを接続する必要があります。企業戦略のサポートがなければ、この段階では「鶏が先か、卵が先か」という問題に直面することになります。ビジネスがなければプラットフォームを改善することはできず、完璧なプラットフォームがなければ、より多くのビジネスアクセスを引き付けることはできません。この段階では、適切なアプリケーションに接続し、優れたアプリケーション サービスを提供して、良い評判を築くことが最優先事項です。サバイバルステージでは、チームは内部からの課題にも直面します。チームメンバーは立ち上げ期の新鮮味が欠けており、一部のメンバーの仕事への熱意が低下してしまいます。この段階では、チームのビジョンを明確にし、忍耐強く、細部まで注意を払う必要があります。 プラットフォーム化: 使いやすさと保守性の向上 アプリケーションの数が一定レベルまで蓄積されると、使いやすさと保守性を向上させるために多大な努力が必要になります。使いやすさの鍵は、アプリケーションの以前の使用法と互換性のある標準ユーザー インターフェイスを採用し、学習コストとアプリケーション変換コストを削減することです。操作性を向上させるには、より多くの内部システム状態を運用および保守担当者に公開し、便利な展開、監視、運用および保守ツールを開発する必要があります。 成熟度: 継続的な最適化 分散ストレージシステムが成熟段階に入ると、そのアプリケーションの推進はよりスムーズになります。この段階での開発チームの主な仕事は、システムを継続的に最適化し、アプリケーションの要件に応じて機能サポートを追加することです。プラットフォームの規模が拡大し、最適化作業が深まるにつれて、プラットフォームのスケール効果が明らかになり、プラットフォームは成功を収めるでしょう。 ユニバーサルストレージプラットフォームの開発は困難に満ちており、チームメンバーは強い信念と長期的な理想を持ち、孤独に耐えられることが求められます。さらに、システム開発時には技術的な詳細にも注意を払う必要があります。実装の詳細がユーザーからの苦情につながったり、オンライン障害を引き起こしたりする可能性があります。 企業の観点から見ると、汎用分散ストレージプラットフォームを開発するかどうかは、企業の規模によって異なります。小規模なインターネット企業(従業員 100 人未満)の場合は、MySQL オープン ソース リレーショナル データベースなど、より広く使用されているストレージ テクノロジを選択する必要があります。中規模インターネット企業(従業員数100〜1,000人)向け。次に、さまざまな SQL または NoSQL ストレージ テクノロジを組み合わせて、オープン ソース製品を改善したり、オープン ソース製品に基づいて二次開発を行ったりすることができます。たとえば、セクション 7.1 の MySQL Sharding アーキテクチャを実装するために、MySQL データベースに基づいて二次開発を行うことができます。大規模なインターネット企業 (従業員 1,000 人以上) では、分散アーキテクチャやストレージ エンジンなどのコア ストレージ テクノロジを独自に開発する必要があることがよくあります。一般的な分散ストレージシステムの開発サイクルは非常に長くなります。システムアーキテクチャは複数世代にわたって進化する必要があり、チームメンバーも開発プロセスを通じて成長する必要があります。したがって、これを実行する場合は、実行しないか、それに固執する必要があります。 |
>>: 【AWSコミュニティディスカッション活動まとめ4】機械学習のプロセスにおける迂回路について語る
4月12日、Alibaba CloudのネイティブコロケーションシステムKoordinatorが正式...
今日の変化と将来の発展予測は、ますます多くの企業が「クラウド」を積極的に採用し、クラウド コンピュー...
Sysadmin Day を記念して、itldc は 27 日から 7 日間のプロモーションを開始し...
Google は、今年中に発売予定の太陽光発電ドローン「Project Titan」を正式に発表する...
可観測性は新しい用語ではありませんが、近年のクラウドネイティブ技術の発展により、効率性と可用性の向上...
Baidu Union は、Baidu プロモーションの中核製品であり、検索プロモーション製品の拡張...
geecdn(2017年創業)が、いち早く「ブラックフライデー」プロモーションを実施。フランスのOV...
全国人民代表大会常務委員会は本日、オンライン情報の保護強化に関する決定草案を審議する。新華社によると...
一般的なビジネス マネージャーであれば、製品の売上と資本収益を毎日気にするでしょう。また、大規模なネ...
「イカゲーム」の人気に伴い、「イカ」マーケティングも開始されました。このマーケティングには失敗と成功...
drServer.net の 2 つの XEN ブランドの VPS はそれぞれプロモーション用の大型...
多くの人は SEO を行う際に混乱し、ウェブサイトのデータ、トラフィックが変化したかどうか、キーワー...
bluevm は最先端の VPS ベンダーです。同社の製品は非常にコスト効率が良く、信頼性が高いです...
ここ1、2年、コンテナに代表されるクラウドネイティブ技術がIT業界で最もホットな話題となっています。...
メモリアルデー(米国戦没者追悼記念日)に、racknerd は米国ロサンゼルスの DC-02 データ...