Aracılığıyla paylaş


Apache Cassandra için Azure Yönetilen Örneği'nde gerçekleştirilmiş görünümler

Apache Cassandra için Azure Yönetilen Örneği, saf açık kaynak Apache Cassandra kümeleri için tam olarak yönetilen bir hizmettir. Hizmet, her iş yükünün belirli ihtiyaçlarına bağlı olarak yapılandırmaların geçersiz kılınmasına da olanak tanır. Bu özellik gerektiğinde maksimum esneklik ve denetim sağlar. Bu makalede gerçekleştirilmiş görünümlerin nasıl etkinleştirileceği açıklanır.

Gerçekleştirilmiş görünüm desteği

Gerçekleştirilmiş görünümler varsayılan olarak devre dışı bırakılır, ancak bunları kümenizde etkinleştirebilirsiniz. Apache Cassandra için Azure Yönetilen Örneği kullanıcılarını gerçekleştirilmiş görünümleri kullanmaktan kaçınmaya teşvik ediyoruz. Bunlar deneysel. Özellikle:

  • Gerçekleştirilmiş görünümlerin uygulanması, kapsamlı olarak modellenmemiş ve simülasyonu yapılmış dağıtılmış bir sistem tasarımıdır. Özellikleri hakkında resmi bir kanıt yoktur.
  • Gerçekleştirilmiş bir görünümün temel tablosuyla eşitlenmemiş olup olmadığını belirlemenin hiçbir yolu yoktur.
  • Taban tablosunda bir değişiklik olduğunda, materyalize görünümün senkronizasyon süresinin bir üst sınırı yoktur.
  • Bir hata varsa ve malzeme edilmiş bir görünüm senkronize değilse, durumu çözmenin tek yolu malzeme edilmiş görünümü bırakmak ve yeniden oluşturmaktır.

Daha fazla bilgi için Deneysel olarak işaretlenmiş Apache Mail Arşivleri Maddi Görünümler ve bunu yapma teklifi bölümüne bakın.

Microsoft, materyalize görünümlerle ilgili herhangi bir hizmet düzeyi sözleşmesi veya destek sunmaz.

Gerçekleştirilmiş görünümlere alternatifler

Çoğu NoSQL deposu gibi Apache Cassandra da normalleştirilmiş bir veri modeline sahip olacak şekilde tasarlanmamıştır. Verileri birden fazla yerde güncellemeniz gerekiyorsa, gerekli tüm deyimleri "BATCH"'in bir parçası olarak gönderin. Bu yaklaşımın gerçekleştirilmiş görünümlere göre iki avantajı vardır:

  • BATCH toplu işteki tüm ifadelerin taahhüt edildiğini veya hiçbirinin taahhüt edilmediğini garanti eder.
  • Tüm deyimler aynı çekirdek ve işleme semantiğine sahiptir.

İş yükünüz gerçekten normalleştirilmiş bir veri modeline ihtiyaç duyuyorsa PostgreSQL için Azure Cosmos DB gibi ölçeklenebilir bir ilişkisel depo düşünün.

Gerçekleştirilmiş görünümleri etkinleştirme

Cassandra veri merkezinize ait rawUserConfig alanını enable_materialized_views: true olarak ayarlayın. Kümenizdeki her veri merkezini güncelleştirmek için aşağıdaki Azure CLI komutunu kullanın:

FRAGMENT="enable_materialized_views: true"
ENCODED_FRAGMENT=$(echo "$FRAGMENT" | base64 -w 0)
# or
# ENCODED_FRAGMENT="ZW5hYmxlX21hdGVyaWFsaXplZF92aWV3czogdHJ1ZQo="
resourceGroupName='MyResourceGroup'
clusterName='cassandra-hybrid-cluster'
dataCenterName='dc1'
az managed-cassandra datacenter update \
  --resource-group $resourceGroupName \
  --cluster-name $clusterName \
  --data-center-name $dataCenterName \
  --base64-encoded-cassandra-yaml-fragment $ENCODED_FRAGMENT