Ana içeriğe geç

Genel Bakış

Greenfield Depolama Sağlayıcısı Nedir

Depolama Sağlayıcısı (SP), depolama hizmetleri için bir altyapı sağlayıcısıdır. Greenfield doğrulayıcıları ile birlikte çalışarak tam bir depolama hizmeti sunarlar. Doğrulayıcılar, konsensüs ile meta verileri ve finansal defterleri depolarken, SP'ler gerçek verileri (yük verileri) Greenfield zincirini defter ve tek gerçek kaynak olarak kullanarak depolar. SP'ler, kullanıcıların ve dApp'lerin Greenfield'de verilerini yönetmeleri için bir dizi kullanışlı hizmet sunar.

Greenfield Depolama Sağlayıcıları Nasıl Çalışır

SP'ler öncelikle kendi Hizmet Payını Greenfield blok zincirine yatırarak kayıt olmalıdır. Greenfield doğrulayıcıları daha sonra SP'leri seçmek için bir yönetişim prosedürü uygulayarak oy kullanacaklardır. Ağa katıldıklarında veya çıktıklarında, SP'lerin kullanıcılar için veri yedekliliğini sağlamak amacıyla belirli eylemleri takip etmesi gerekmektedir; aksi takdirde Hizmet Payı üzerinde ceza ile karşılaşacaklardır.

ipucu

Öneri: SP'ler, kullanıcıların veri yüklemesine, indirmesine ve yönetmesine olanak tanıyan halka açık API'ler sunarlar.

Bu API'ler, mevcut geliştiricilerin onlar için kod yazmasını kolaylaştırmak amacıyla Amazon S3 API'lerine benzer şekilde tasarlanmıştır. SP'ler, kullanıcı taleplerini yazma (yükleme) ve okuma (indirme) sürecine yanıt vermekten, ayrıca kullanıcı izinlerini ve kimlik doğrulamalarıyla ilgilenmekten sorumludur.

Her SP kendi yerel tam düğümünü sürdürür; bu, Greenfield ağı ile güçlü bir bağlantı sağlar. Bu, SP'nin durumsal değişiklikleri doğrudan izleyebilmesini, verileri doğru bir biçimde dizine alabilmesini, zamanında işlem talepleri gönderebilmesini ve yerel verileri doğru bir şekilde yönetebilmesini sağlar.

SP'leri yeteneklerini sergilemeye teşvik etmek ve yüksek kaliteli SLA ile profesyonel bir depolama sistemi sunmaları önerilmektedir; bu nedenle bilgilerini duyurmaları ve topluluğa kendilerini kanıtlamaları tavsiye edilir.

Mimari

sp-arch-flow

Depolama Sağlayıcı Mimarisi

SP, aşağıda gösterilen on beş çekirdek modül içerir:

  • Gater: SP için bir geçit işlevi görür, HTTP hizmetleri sağlar ve S3 protokolüne uyar. Kullanıcı taleplerine karşılık gelen görevleri oluşturur ve bunları SP içindeki diğer modüllere iletir. Gater, özelleştirmeye izin vermediği için, modüler dosyada tanımlanan bir arayüz yoktur.

  • Authenticator: Kimlik doğrulaması doğrulama işlemlerinden sorumludur.

  • Approver: Onay taleplerini işlemekten sorumludur, özellikle MigrateBucketApproval gibi.

  • Uploader: Kullanıcı hesaplarından PutObject taleplerini yönetir ve yük verilerini ana SP'nin parça deposuna kaydeder.

  • Downloader: Kullanıcı hesaplarından GetObject taleplerini ve Greenfield sistemindeki diğer bileşenlerden GetChallengeInfo taleplerini yönetmekten sorumludur.

tehlike

Dikkat: Her modülün işlevselliğini tam anlayabilmek için ilgili dökümantasyona başvurmanız önerilir.

  • Executor: Arka planda çalışan görevleri yönetir. Bu modül, Manager modülünden görevler talep edebilir, bunları yerine getirebilir ve sonuçları veya durumu Manager'a geri bildirebilir.

  • Manager: SP'nin görev planlamasını yönetmekten ve diğer yönetim işlevlerinden, örneğin bucket göçü ve sp çıkış prosedürü gibi sorumludur.

  • P2P: SP'ler arasında kontrol bilgisi etkileşimini yönetmekten sorumludur.

  • Receiver: Ana SP'den veri alır, yük veri bütünlük hash'ini hesaplar, imzalar ve bunu Greenfield blok zincirinde mühürlenmek üzere ana SP'ye geri döner.

  • Signer: Greenfield blok zincirindeki SP verilerini imzalamaktan sorumlu olup, tüm SP'nin özel anahtarlarını tutar. SP hesabının sıra numarası nedeniyle, tekil olmalıdır.

  • Metadata: SP'deki meta bilgi için etkili sorgu arayüzleri sağlar. Bu modül, düşük gecikme ve yüksek performanslı SP gereksinimlerini karşılar.

  • BlockSyncer: Greenfield blok zincirindeki blok bilgilerini kaydeder.

  • PieceStore: Temel depolama sağlayıcılarıyla etkileşimi yönetir; örneğin, AWS S3, MinIO, OSS vb.

  • SPDB: Arka planda çalışan işlerin tüm bağlamlarını ve SP'nin meta verilerini saklar.

  • BSDB: Greenfield blok zincirinden gelen tüm olay verilerini saklar ve bunları SP'nin Metadata hizmetine sunar.

Greenfield SP'de özelleştirilmiş gereksinimleri nasıl uygulayabilirsiniz

Kod seviyesinden, SP yalnızca bir uygulama katmanı değil, aynı zamanda kullanıcıların kendi ihtiyaçlarına göre kendi mantıklarını uygulamalarına olanak tanıyan GfSp adlı bir çerçeveye genişletilmiştir. Kullanıcılar belirli işlevleri uygulamak isterlerse, soyut arayüzlerde tanımlanan bu yöntemleri geçersiz kılabilirler. Kullanıcıların özelleştirilmiş gereksinimleri uygulamalarına gerek yoksa, GfSp varsayılan uygulamaları kullanacaktır.

not

SP'lerin sağladığı avantajlar arasında esneklik ve uyum sağlamadaki yetenek bulunmaktadır.

Dokuz önemli soyutlama katmanı vardır:

  • lifecycle: Hizmetleri yönetmek için iki soyut arayüz sağlar: Service ve Lifecycle, SP'de hizmetleri kontrol etmek ve yönetmek için.
  • module: GfSp'deki farklı modüllerle etkileşim kurmak için birden fazla soyut arayüz sağlar. Bu nedenle, kullanıcılar kendi gereksinimlerini karşılamak için ilgili yöntemleri uygulayabilirler.
  • consensus: Greenfield blok zincirinde veri sorgulamak için soyut arayüzler sağlar.
  • piecestore: Temel depolama sistemleriyle etkileşim kurmak için kullanılır.
  • spdb: Arka plan görevlerini ve SP'nin meta verilerini saklamak için soyut arayüzler sağlar.
  • bsdb: SP'deki meta verileri sorgulamak için soyut arayüzler sağlar.
  • rcmgr: SP'deki CPU ve bellek kaynaklarını yönetmek için soyut arayüzler sağlar.
  • task: SP arka plan hizmetleriyle etkileşim kurmak için en küçük uint hakkında soyut arayüzler sağlar.
  • taskqueue: Görev planlaması ve yürütülmesi hakkında soyut arayüzler sağlar.