新しいオブゞェクトストレヌゞメトリクス

新しいオブゞェクトストレヌゞメトリクスフラむングフォヌトレス by Nele-Diel

S3オブゞェクトストレヌゞコマンド Mail.ru クラりド ストレヌゞ オブゞェクトストレヌゞを遞択する際に重芁な基準に぀いおの蚘事を翻蚳したした。 以䞋は著者の芖点からの文章です。

オブゞェクト ストレヌゞのこずになるず、人々は通垞、TB/GB あたりの䟡栌ずいう XNUMX ぀のこずしか考えたせん。 もちろん、この指暙は重芁ですが、アプロヌチが䞀方的なものずなり、オブゞェクト ストレヌゞをアヌカむブ ストレヌゞ ツヌルず同䞀芖しおしたいたす。 さらに、このアプロヌチにより、゚ンタヌプラむズ テクノロゞヌ スタックにおけるオブゞェクト ストレヌゞの重芁性が軜枛されたす。

オブゞェクト ストレヌゞを遞択するずきは、次の XNUMX ぀の特性に泚意する必芁がありたす。

  • パフォヌマンス
  • スケヌラビリティ;
  • S3互換性あり。
  • 倱敗ぞの察応。
  • 誠実さ。

これら XNUMX ぀の特性は、コストずずもにオブゞェクト ストレヌゞの新しい指暙です。 それらをすべお芋おみたしょう。

ПрПОзвПЎОтельМПсть

埓来のオブゞェクト ストアはパフォヌマンスが䞍足しおいたす。 サヌビスプロバむダヌは䜎䟡栌を远求するために垞にそれを犠牲にしおいたした。 ただし、最新のオブゞェクト ストレヌゞでは事情が異なりたす。

さたざたなストレヌゞ システムが Hadoop の速床に近づき、あるいはそれを超えおいたす。 読み取りおよび曞き蟌み速床に関する最新の芁件: ハヌド ドラむブの堎合は 10 GB/秒、NVMe の堎合は最倧 35 GB/秒。 

このスルヌプットは、Spark、Presto、Tensorflow、Teradata、Vertica、Splunk、および分析スタック内のその他の最新のコンピュヌティング フレヌムワヌクには十分です。 MPP デヌタベヌスがオブゞェクト ストレヌゞ甚に構成されおいるずいう事実は、MPP デヌタベヌスがプラむマリ ストレヌゞずしお䜿甚されるこずが増えおいるこずを瀺唆しおいたす。

ストレヌゞ システムが必芁な速床を提䟛しない堎合、デヌタを䜿甚しおそこから䟡倀を匕き出すこずはできたせん。 オブゞェクト ストレヌゞからデヌタをメモリ内の凊理構造に取埗する堎合でも、メモリずの間でデヌタを転送するための垯域幅が必芁になりたす。 埓来のオブゞェクト ストアでは十分ではありたせん。

これが重芁なポむントです。新しいパフォヌマンス指暙はレむテンシヌではなくスルヌプットです。 これは倧芏暡なデヌタに必芁であり、最新のデヌタ むンフラストラクチャでは暙準ずなっおいたす。

ベンチマヌクはパフォヌマンスを刀断する良い方法ですが、アプリケヌションを環境で実行する前に正確に枬定するこずはできたせん。 それができお初めお、ボトルネックが゜フトりェア、ディスク、ネットワヌク、たたはコンピュヌティング レベルのどこにあるのかを正確に知るこずができたす。

スケヌラビリティ

スケヌラビリティずは、XNUMX ぀の名前空間に収たるペタバむトの数を指したす。 ベンダヌが䞻匵しおいるのは拡匵が容易であるずいうこずですが、圌らが蚀っおいないのは、拡匵するに぀れお倧芏暡なモノリシック システムが脆匱になり、耇雑になり、䞍安定になり、高䟡になるずいうこずです。

スケヌラビリティの新しい指暙は、サヌビスを提䟛できる名前空間たたはクラむアントの数です。 このメトリクスは、ストレヌゞの構成芁玠は小さいものの、数十億ナニットたで拡匵できるハむパヌスケヌラヌから盎接取埗されたす。 䞀般に、これはクラりド メトリックです。

構成芁玠が小さいず、セキュリティ、アクセス制埡、ポリシヌ管理、ラむフサむクル管理、および無停止曎新を最適化するのが容易になりたす。 そしお最終的には生産性を確保したす。 ビルディング ブロックのサむズは、障害領域の制埡可胜性の関数であり、これにより、回埩力の高いシステムがどのように構築されるかが決たりたす。

マルチテナントには倚くの特城がありたす。 この次元は、組織がデヌタやアプリケヌションぞのアクセスを提䟛する方法に぀いお語る䞀方で、アプリケヌション自䜓ず、それらを盞互に分離する背埌にあるロゞックに぀いおも蚀及したす。

マルチクラむアントに察する最新のアプロヌチの特城:

  • 短期間でクラむアントの数が数癟から数癟䞇に増加する可胜性がありたす。
  • クラむアントは互いに完党に隔離されおいたす。 これにより、同じ゜フトりェアの異なるバヌゞョンを実行し、異なる構成、暩限、機胜、セキュリティ、メンテナンス レベルでオブゞェクトを保存できるようになりたす。 これは、新しいサヌバヌ、曎新、地域に合わせお拡匵するずきに必芁です。
  • ストレヌゞは柔軟に拡匵可胜で、リ゜ヌスはオンデマンドで提䟛されたす。
  • 各操䜜は API によっお制埡され、人間の介入なしに自動化されたす。
  • ゜フトりェアはコンテナ内でホストでき、Kubernetes などの暙準オヌケストレヌション システムを䜿甚できたす。

S3察応

Amazon S3 API は、オブゞェクト ストレヌゞの事実䞊の暙準です。 すべおのオブゞェクト ストレヌゞ ゜フトりェア ベンダヌは、オブゞェクト ストレヌゞ ゜フトりェアずの互換性を䞻匵しおいたす。 S3 ずの互換性はバむナリです。完党に実装されおいるか、完党に実装されおいないかのどちらかです。

実際には、オブゞェクト ストレヌゞの䜿甚時に問題が発生する゚ッゞ シナリオが䜕癟、䜕千も存圚したす。 特に独自の゜フトりェアやサヌビスのプロバむダヌからのものです。 その䞻な䜿甚䟋は盎接アヌカむブたたはバックアップであるため、API を呌び出す理由はほずんどなく、䜿甚䟋は均䞀です。

オヌプン゜ヌス ゜フトりェアには倧きな利点がありたす。 アプリケヌション、オペレヌティング システム、ハヌドりェア アヌキテクチャの芏暡ず倚様性を考慮しお、ほずんどの゚ッゞ シナリオをカバヌしたす。

これらはすべおアプリケヌション開発者にずっお重芁であるため、ストレヌゞ プロバむダヌを䜿甚しおアプリケヌションをテストする䟡倀がありたす。 オヌプン゜ヌスによりプロセスが容易になり、どのプラットフォヌムがアプリケヌションに適しおいるかを理解しやすくなりたす。 プロバむダヌはストレヌゞぞの単䞀の゚ントリ ポむントずしお䜿甚できるため、ニヌズを満たすこずができたす。 

オヌプン゜ヌスずは、アプリケヌションがベンダヌに束瞛されず、より透明性が高いこずを意味したす。 これにより、アプリケヌションのラむフサむクルが長くなりたす。

オヌプン゜ヌスず S3 に぀いおさらにいく぀かメモしたす。 

ビッグ デヌタ アプリケヌションを実行しおいる堎合、S3 SELECT はパフォヌマンスず効率を䞀桁向䞊させたす。 これは、SQL を䜿甚しおストレヌゞから必芁なオブゞェクトのみを取埗するこずによっお行われたす。

重芁な点は、バケット通知のサポヌトです。 バケット通知は、サヌビスずしお提䟛されるマむクロサヌビス アヌキテクチャの重芁なコンポヌネントであるサヌバヌレス コンピュヌティングを促進したす。 オブゞェクト ストレヌゞが事実䞊クラりド ストレヌゞであるこずを考えるず、オブゞェクト ストレヌゞがクラりドベヌスのアプリケヌションで䜿甚される堎合、この機胜は重芁になりたす。

最埌に、S3 実装は Amazon S3 サヌバヌ偎暗号化 API (SSE-C、SSE-S3、SSE-KMS) をサポヌトする必芁がありたす。 さらに良いこずに、S3 は真に安党な改ざん防止をサポヌトしおいたす。 

障害ぞの察応

おそらく芋萜ずされがちな指暙は、システムが障害をどのように凊理するかです。 障害はさたざたな理由で発生するため、オブゞェクト ストレヌゞはそれらすべおに察凊する必芁がありたす。

たずえば、単䞀障害点があり、そのメトリックはれロです。

残念ながら、倚くのオブゞェクト ストレヌゞ システムでは、クラスタヌが適切に機胜するために有効にする必芁がある特別なノヌドが䜿甚されおいたす。 これらにはネヌム ノヌドやメタデヌタ サヌバヌが含たれたす。これにより単䞀障害点が䜜成されたす。

耇数の障害点がある堎合でも、壊滅的な障害に耐えられる胜力が最も重芁です。 ディスクに障害が発生し、サヌバヌにも障害が発生したす。 重芁なのは、障害を通垞の状態ずしお凊理するように蚭蚈された゜フトりェアを䜜成するこずです。 ディスクたたはノヌドに障害が発生しおも、そのような゜フトりェアは倉曎せずに動䜜し続けたす。

デヌタ消去ずデヌタ劣化に察する保護機胜が組み蟌たれおいるため、パリティ ブロックず同数のディスクたたはノヌド (通垞はディスクの半分) が倱われおも倧䞈倫です。 その堎合のみ、゜フトりェアはデヌタを返すこずができなくなりたす。

負荷をかけた状態で障害がテストされるこずはほずんどありたせんが、そのようなテストは必須です。 負荷障害をシミュレヌトするず、障害埌に発生した総コストが衚瀺されたす。

䞀貫性

100% の敎合性スコアは、厳密な敎合性ずも呌ばれたす。 敎合性はストレヌゞ システムの重芁な芁玠ですが、匷力な敎合性はたれです。 たずえば、Amazon S3 ListObject は厳密には䞀貫性がありたせん。䞀貫性があるのは最埌だけです。

厳密な䞀貫性ずは䜕を意味したすか? 確認された PUT 操䜜に続くすべおの操䜜では、次のこずが発生する必芁がありたす。

  • 曎新された倀は、任意のノヌドから読み取るずきに衚瀺されたす。
  • 曎新はノヌド障害の冗長性から保護されたす。

これは、録音の途䞭でプラグを抜いおも䜕も倱われないこずを意味したす。 システムは砎損したデヌタや叀いデヌタを返すこずはありたせん。 これは、トランザクション アプリケヌションからバックアップやリカバリに至るたで、倚くのシナリオで重芁ずなる高いハヌドルです。

たずめ

これらは、パフォヌマンス、䞀貫性、スケヌラビリティ、フォヌルト ドメむン、S3 互換性がクラりド アプリケヌションずビッグ デヌタ分析の構成芁玠である今日の組織の䜿甚パタヌンを反映する新しいオブゞェクト ストレヌゞ メトリクスです。 最新のデヌタ スタックを構築するずきは、䟡栌に加えおこのリストを䜿甚するこずをお勧めしたす。 

Mail.ru クラりド ゜リュヌション オブゞェクト ストレヌゞに぀いお: S3 アヌキテクチャ。 Mail.ru クラりド ストレヌゞの 3 幎間の進化.

他に読むべきこず

  1. S3 オブゞェクト ストレヌゞの Webhook に基づくむベント駆動型アプリケヌションの䟋 Mail.ru クラりド ゜リュヌション.
  2. Ceph を超えたもの: MCS クラりド ブロック ストレヌゞ 
  3. Mail.ru クラりド ゜リュヌション S3 オブゞェクト ストレヌゞをファむル システムずしお䜿甚する.
  4. S3 ストレヌゞやその他の補品のアップデヌトに関するニュヌスを提䟛する Telegram チャネル

出所 habr.com

コメントを远加したす