Kafka kümesindeki bir konunun bölümlenmesi ve çoğaltılması arasındaki fark nedir? Her ikisi de bir konudaki iletilerin kopyalarını saklamak. O zaman gerçek fark nedir?kafka kümesindeki bölüm ve çoğaltma arasındaki fark nedir?
cevap
Konuyu iletiye eklediğinizde, üreticinin API'sini (KeyedMessage message) yöntemini çağırın. Bu, mesajınızın anahtar ve değer içerdiği anlamına gelir. Bir konu oluşturduğunuzda, olmasını istediğiniz bölümlerin sayısını belirtirsiniz. Bu konu için "gönder" yöntemini çağırdığınızda, veriler anahtarınızın karma değerine bağlı olarak yalnızca belirli bir bölüme gönderilir (varsayılan olarak). Her bölümün bir kopyası olabilir, bu da her iki bölümün ve kopyalarının aynı verileri sakladığı anlamına gelir. Sınırlama, hem üreticiniz hem de tüketiciniz sadece ana kopya ile çalışır ve kopyaları sadece artıklık için kullanılır.
belgelerine bakın: http://kafka.apache.org/documentation.html#producerapi Ve temel eğitimi: Bir konu bir düğümün sınırlarının ötesinde büyüyebilsinler http://www.slideshare.net/miguno/apache-kafka-08-basic-training-verisign
Konular birden düğümler arasında bölümlenir. Bölümler hata toleransı için çoğaltılır. Çoğaltma ve lider devralma Kafka ve diğer brokerler/Flume arasındaki en büyük farklardan biridir. Apache Kafka site Gönderen:
Her bölüm "lider" ve "takipçi" olarak hareket sıfır veya daha sunucuları gibi davranan bir sunucu vardır. Lider, okunan tüm üyeler için yazma isteklerini idare eder ve takipçileri pasif olarak lideri tekrarlar. Lider başarısız olursa, takipçilerden biri otomatik olarak yeni lider olur. Her sunucu, bir bölümünün bölümünün bir kısmı ve diğerleri için bir takipçisi olarak hareket eder, bu nedenle yük küme içinde dengeli bir şekilde dengelidir.
Teşekkürler .. çok güzel bir açıklama ... –
Kafka'nın diğer iki önemli özelliği de paralellik ve artıklıktır. Kafka, her bir konuya belirli sayıda bölüm ve kopya vererek bunu gerçekleştirir.
bölmeler
Bölme: Bir Kafka konunun tek parça. Bölüm sayısı, konu başlığına göre yapılandırılabilir. Daha fazla bölüm, konulardan okurken büyük paralellik sağlar. Bölümlerin sayısı, bir tüketici grubunda kaç tüketici olduğunu belirler. Örneğin, bir konu 3 bölümden oluşuyorsa, bölümler arasında bir tüketici grubu dengeleme tüketiminde 3 tüketiciniz olabilir. Bu şekilde 3'lük bir paralellik kazanırsınız. Bu bölüm numarası, ne kadar hızlı veri ürettiğinizi ve veriyi ne kadar hızlı tüketeceğinizi bilene kadar karar vermeniz biraz zordur. Yüksek hacimli olacağını bildiğiniz bir konu varsa, daha fazla bölümlere sahip olmanız gerekir.
taklit
yinelemeler: Bu bölümleri kopyalarıdır. Asla yazılmaz veya okunmaz. Onların tek amacı veri fazlalığı içindir. Konunuzun n kopyası varsa, n-1 aracıları herhangi bir veri kaybı olmadan başarısız olabilir. Ayrıca, bir konuya sahip olduğunuz broker sayısından daha büyük bir çoğaltma faktörü olamaz. Örneğin, 5 Kafka brokeriniz var, maksimum bir çoğaltma faktörü 5 ile bir konuya sahip olabilirsiniz ve herhangi bir veri kaybı olmadan 5-1 = 4 brokeri aşağı inebilir.
- 1. Kafka artifactIds kafka_2.10 ve kafka-clients arasındaki fark nedir?
- 2. Redis ve kafka arasındaki fark
- 3. Kafka 0.8, java kodu kullanarak bölüm ve çoğaltma ile konu oluşturmak mümkün mü? Kafka yılında
- 4. Python'da {} ve [] arasındaki fark nedir?
- 5. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 6. $ arasındaki fark nedir? ve PowerShell
- 7. Bir kullanıcı ve rol arasındaki fark nedir?
- 8. Fark() arasındaki fark nedir mustache.js
- 9. arasındaki fark nedir?
- 10. Java arasındaki fark nedir
- 11. Cassandra'da Paxos ve W + R> = N arasındaki fark nedir?
- 12. arasındaki fark nedir?
- 13. arasındaki fark nedir?
- 14. mongo çoğaltma kümesindeki belirli düğümlerden veri okuma
- 15. app.doScript ve $ .evalFile arasındaki fark nedir?
- 16. gVim ve gVim arasındaki fark nedir?
- 17. isAlpha ve isLetter arasındaki fark nedir?
- 18. Control.Enter ve Control.GotFocus olayları arasındaki fark nedir?
- 19. .got ve .got.plt bölümü arasındaki fark nedir?
- 20. AutomationProperties.AutomationID ve AutomationProperties.Name arasındaki fark nedir?
- 21. Android'de getDir ve getFilesDir arasındaki fark nedir?
- 22. R içinde `=` ve `<-` arasındaki fark nedir?
- 23. uint ve System.UInt32 arasındaki fark nedir?
- 24. PropertyChangeListener ve VetoableChangeListener arasındaki fark nedir?
- 25. XSS'de IDREF ve IDREFS arasındaki fark nedir?
- 26. Cacerts ve keystore arasındaki fark nedir?
- 27. GPLv2 ve GPLv3 arasındaki fark nedir?
- 28. VarIsEmpty ve VarIsEmptyParam işlevleri arasındaki fark nedir
- 29. ActiveSupport'ta mattr_accessor ve cattr_accessor arasındaki fark nedir?
- 30. Hashtable ve Dictionary arasındaki fark nedir?
Anladım .. teşekkürler! –