Veri değişikliği için tasarım

Bu makalede ekleme, güncelleştirme ve silmeleri iyileştirmeye yönelik tasarım konuları ele alınmaktadır. Bazı durumlarda, ilişkisel veritabanlarına yönelik tasarımlarda yaptığınız gibi veri değişikliği için en iyi duruma gelen tasarımlara karşı sorgulama için en iyi duruma getiren tasarımlar arasındaki dengeyi değerlendirmeniz gerekir (ancak tasarım dengelemelerini yönetme teknikleri ilişkisel veritabanında farklıdır). Tablo Tasarım Desenleri bölümü, Tablo hizmeti için bazı ayrıntılı tasarım desenlerini açıklar ve bu dengeleri vurgular. Uygulamada, varlıkları sorgulamak için iyileştirilmiş birçok tasarımın varlıkları değiştirmek için de iyi çalıştığını göreceksiniz.

Ekleme, güncelleştirme ve silme işlemlerinin performansını iyileştirme

Bir varlığı güncelleştirmek veya silmek için PartitionKey ve RowKey değerlerini kullanarak varlığı tanımlayabilmeniz gerekir. Bu açıdan, varlıkları değiştirmek için PartitionKey ve RowKey seçiminiz, varlıkları mümkün olduğunca verimli bir şekilde tanımlamak istediğiniz için nokta sorgularını desteklemek için seçtiğiniz ölçütlere benzer ölçütleri izlemelidir. Güncelleştirmek veya silmek için gereken PartitionKey ve RowKey değerlerini bulmak için bir varlığı bulmak için verimsiz bir bölüm veya tablo taraması kullanmak istemezsiniz.

Tablo tasarım desenleri bölümündeki aşağıdaki desenler performansı iyileştirmeyi veya ekleme, güncelleştirme ve silme işlemlerinizi ele alır:

  • Yüksek hacimli silme düzeni - Tüm varlıkları aynı anda silinmek üzere kendi ayrı tablolarında depolayarak yüksek hacimli varlıkların silinmesini etkinleştirin; tabloyu silerek varlıkları silebilirsiniz.
  • Veri serisi deseni - Yaptığınız istek sayısını en aza indirmek için tam veri serisini tek bir varlıkta depolayın.
  • Geniş varlıklar düzeni - 252'den fazla özelliğe sahip mantıksal varlıkları depolamak için birden çok fiziksel varlık kullanın.
  • Büyük varlıklar deseni - Büyük özellik değerlerini depolamak için blob depolamayı kullanın.

Depolanan varlıklarınızda tutarlılık sağlama

Veri değişikliklerini iyileştirmek için anahtar seçiminizi etkileyen diğer önemli faktör, atomik işlemleri kullanarak tutarlılığı nasıl sağlayacağınızdır. EGT'yi yalnızca aynı bölümde depolanan varlıklar üzerinde çalışmak için kullanabilirsiniz.

Tablo tasarım desenleri tutarlılığı yönetmeye yönelik makaledeki aşağıdaki desenler:

  • Bölüm içi ikincil dizin deseni - Hızlı ve verimli aramalar ve farklı RowKey değerleri kullanarak alternatif sıralama düzenlerini etkinleştirmek için farklı RowKey değerlerini (aynı bölümde) kullanarak her varlığın birden çok kopyasını depolayın.
  • Bölümler arası ikincil dizin deseni - Farklı RowKey değerleri kullanarak her varlığın birden çok kopyasını ayrı bölümlerde veya ayrı tablolarda depolayarak hızlı ve verimli aramalar ve farklı RowKey değerleri kullanarak alternatif sıralama düzenleri sağlayın.
  • Nihai tutarlı işlemler düzeni - Azure kuyruklarını kullanarak bölüm sınırları veya depolama sistemi sınırları arasında nihai tutarlı davranışı etkinleştirin.
  • Dizin varlıkları düzeni - Varlık listelerini döndüren verimli aramalar sağlamak için dizin varlıklarını koruyun.
  • Normalleştirme düzeni - tek bir nokta sorgusuyla ihtiyacınız olan tüm verileri almanızı sağlamak için ilgili verileri tek bir varlıkta birleştirin.
  • Veri serisi deseni - Yaptığınız istek sayısını en aza indirmek için tam veri serisini tek bir varlıkta depolayın.

Varlık grubu işlemleri hakkında bilgi için Varlık grubu işlemleri bölümüne bakın.

Verimli değişiklikler için tasarımınızın verimli sorguları kolaylaştırdığından emin olun

Çoğu durumda, verimli sorgulamaya yönelik bir tasarım verimli değişikliklerle sonuçlanır, ancak her zaman belirli senaryonuz için bunun söz konusu olup olmadığını değerlendirmeniz gerekir. Tablo Tasarım Desenleri makalesindeki bazı desenler varlıkları sorgulama ve değiştirme arasındaki dengeleri açıkça değerlendirir ve her zaman her işlem türünün sayısını dikkate almanız gerekir.

Tablo tasarım desenleri makalesindeki aşağıdaki desenler, verimli sorgular için tasarım ve verimli veri değişikliği tasarlama arasındaki dengeleri ele alır:

  • Bileşik anahtar deseni - İstemcinin tek bir nokta sorgusuyla ilgili verileri aramasını sağlamak için bileşik RowKey değerlerini kullanın.
  • Günlük kuyruğu deseni - Ters tarih ve saat düzeninde sıralayan bir RowKey değeri kullanarak bölüme en son eklenen n varlığı alın.