ScholarGate
Asistan

Paxos ve Raft

Paxos ve Raft, gerçek dünya koordinasyon sistemlerinin temelini oluşturan çoğaltılmış bir günlük üzerinde çökme hatasına dayanıklı uzlaşma sağlayan en etkili iki pratik uzlaşma protokolüdür.

PaperMind ile konu bulYakındaMakale ve konu bul
Tools & resources
Slaytları indir
Learn & explore
VideoYakında

Tanım

Paxos ve Raft, çökme hatalarına rağmen bir dizi kopyanın sıralı bir komut dizisi (çoğaltılmış bir günlük) üzerinde anlaşmasını sağlayan, kopyaların çoğunluğu erişilebilir kaldığı sürece taahhüt edilen girdilerin asla kaybolmamasını veya yeniden sıralanmamasını garanti eden oydaşma tabanlı protokollerdir.

Kapsam

Bu konu, tek kararlı Paxos, Çoklu-Paxos ve mühendislik iyileştirmeleriyle Paxos ailesini ve anlaşılırlık amacıyla aynı güvenceleri açık bir lider, günlük çoğaltma ve üyelik değişimi etrafında yeniden düzenleyen Raft protokolünü kapsamaktadır. Teklif sunanlar/kabul edenler ve liderler/takipçiler rolleri, oydaşma kesişimi, lider seçimi ve dönemleri, günlük eşleştirme ile anlık görüntüler ve yeniden yapılandırmanın pratik endişeleri ele alınmaktadır.

Temel sorular

  • Oydaşma kesişimi ve teklif numaralandırması, turlar ve lider değişiklikleri boyunca Paxos'u nasıl güvende tutmaktadır?
  • Raft, uzlaşmayı lider seçimi, günlük çoğaltma ve güvenlik olarak nasıl ayrıştırmaktadır?
  • Bu protokolleri üretim sistemlerine dönüştürürken hangi mühendislik zorlukları ortaya çıkmaktadır?

Temel kuramlar

Tek Kararlı ve Çoklu-Paxos
Paxos, monoton teklif numaraları ve çoğunluk oydaşmaları tarafından yönetilen hazırlık ve kabul aşamaları aracılığıyla tek bir değer üzerinde uzlaşmaya varmaktadır; Çoklu-Paxos ise, istikrarlı bir lider tarafından yönetilen bir karar akışı boyunca hazırlık aşamasını amorti ederek çoğaltılmış bir günlük oluşturmaktadır.
Raft'ın Ayrıştırması
Raft, her dönem için tek bir lider seçerek, liderin takipçilerin çoğalttığı girdileri eklemesini sağlayarak ve bir günlük eşleştirme özelliğini uygulayarak Paxos ile aynı güvenliği elde etmektedir; bu, anlaşılırlık ve uygulama kolaylığı için bilinçli olarak minimalizmden ödün verilmesiyle gerçekleştirilmektedir.
Spesifikasyondan Çalışan Sisteme
Paxos'u pratikte dağıtmak, disk hatalarını, lider kiralamalarını, günlük sıkıştırmayı ve yeniden yapılandırmayı ele almayı gerektirmektedir; bu detaylar orijinal algoritmada genellikle göz ardı edilse de doğruluk ve performans için esastır.

Klinik önem

Paxos ve Raft, yaygın olarak kullanılan koordinasyon hizmetleri, dağıtılmış veritabanları ve yapılandırma depoları içinde çalışmaktadır; bu protokolleri anlamak, hatalar karşısında kopyaları güçlü bir şekilde tutarlı tutması gereken herhangi bir sistemi inşa etmek veya işletmek için esastır.

Tarihçe

Lamport, Paxos'u 1998 tarihli 'part-time parliament' makalesinde tanımlamış ve 2001'deki 'Paxos made simple' adlı çalışmasında açıklığa kavuşturmuştur; Chandra ve meslektaşları, 2007 yılında Paxos'u büyük ölçekte hayata geçirmenin gerçeklerini rapor etmişlerdir; Ongaro ve Ousterhout ise 2014 yılında Raft'ı tanıtarak eşdeğer güvencelerin öğretilmesini ve uygulanmasını çok daha kolay hale getirmişlerdir.

Tartışmalar

Uzlaşma Protokollerinde Anlaşılırlık ve Minimalizm Tartışması
Raft, Paxos'tan daha kolay anlaşılır olacak şekilde açıkça tasarlanmıştır; bu durum, ek yapısının (güçlü bir lider) esnekliği feda edip etmediği konusunda tartışmalara yol açmaktadır. Savunucuları, anlaşılırlığın uygulama hatalarını azalttığını savunurken, diğerleri ise Paxos varyantlarının daha genel olabileceğini belirtmektedir.

Öne çıkan isimler

  • Leslie Lamport
  • Diego Ongaro
  • John Ousterhout
  • Tushar Chandra

İlgili konular

Temel eserler

  • lamport1998
  • ongaro2014
  • chandra2007

Sıkça sorulan sorular

Paxos ve Raft temel olarak farklı algoritmalar mıdır?
Hayır—aynı çoğunluk oydaşma çekirdeği ve eşdeğer güvenlik güvenceleriyle aynı problemi çözmektedirler. Raft, protokolü daha kolay anlaşılır ve uygulanabilir hale getirmek için Paxos'u esas olarak güçlü bir lider ve açık bir günlük etrafında yeniden düzenlemektedir.

Bu kavram için yöntemler

İlgili kavramlar