Azure SQL ile HTAP üzerinden maliyet tasarrufu

Databricks
Event Hubs
İşlevler
SQL Veritabanı
Stream Analytics

Bu makalede, karma işlem/analitik işleme (HTAP) mimarisine yönelik bir çözüm özetlenmektedir. İşlemleri işlemek için çoğu sistem düşük gecikmeli, yüksek hacimli işlemsel iş yüklerini kullanır. Analiz için yüksek gecikmeli, düşük hacimli iş yükleri daha normaldir. HTAP mimarileri her iki iş yükü türü için bir çözüm sunar. Bellek içi veritabanlarını kullanarak HTAP, büyük hacimde verileri sorguları iyileştirmek için teknolojileri birleştirir.

Azure SQL Veritabanı bu htap çözümünün çekirdeğini oluşturur. Yaklaşım, verileri yatay olarak dağıtılmış veritabanlarına veya parçalara böler. Diğer ana bileşenler şunlardır:

  • Veri alımı için Azure Event Hubs.
  • Veri işleme için Azure Stream Analytics.
  • Bölümlendirme için Azure Işlevleri.
  • olay depolama için Azure Blob Depolama.

Birlikte, bu hizmetler şu şekilde bir HTAP çözümü sağlar:

  • Arşivlenmiş veriler hakkındaki öngörülere hızlı erişim sağlayarak maliyetleri azaltır. Bu çözüm ile, seyrek erişimli yolun gecikmelerinin saatiyle Saniyeler içinde düşürülme gecikme süresi.
  • Uzun süreli depolamaya otomatik olarak veri ekleyerek arşivlemeyi basitleştirir.
  • Verileri parçalara ayırarak ve esnek bir veritabanı kullanarak ölçeklenebilirliği en üst düzeye çıkarır.

Olası kullanım örnekleri

Bu çözüm, büyük hacimde geçmiş verilere düşük gecikmeli erişim gerektiren kuruluşlar için geçerlidir. Örnekler arasında şunlar yer almaktadır:

  • Kişiselleştirilmiş deneyimler sağlamak üzere müşteri geçmişine ve demografik bilgilerine erişen çevrimiçi perakendeciler.
  • Akıllı güç kılavuzlarını yönetmek için cihaz verilerini analiz ile birleştiren enerji sağlayıcıları.
  • Geçmiş ve gerçek zamanlı verilerde desenler tanımlayarak sahtekarlık önlemeye yönelik işyerleri.
  • Sorunları belirlemek için gerçek zamanlı olay işleme kullanan üreticiler.

Mimari

verilerin merkezinde Azure SQL Veritabanı bir P çözümü aracılığıyla nasıl akacağını gösteren mimari diyagramı.

Bu mimarinin SVG dosyasını indirin.

  1. Şirket içi tesislerden gelen telemetri Event Hubs.
  2. Blob Depolama Event Hubs verileri yakalar ve gelecekte analiz edilmek üzere depolar.
  3. Stream Analytics verileri işler. çözümün etkin yolunda, önceki iki aydan verileri sorgular Azure Cosmos DB. Azure Cosmos DB, tek basamaklı milisaniyelik yanıt sürelerini garanti eder.
  4. veri işleme veya depolama sırasında hata oluşursa, sistem bunları Azure tablo Depolama günlüğe kaydeder.
  5. Azure işlevleri, verileri arşivlemek için SQL Veritabanı elastik veritabanı istemci kitaplığını kullanır. Bu işlem, ekleme işlemlerini iyileştirmek için verileri bölümler. çözüm, verileri çeşitli Azure SQL veritabanlarına yatay olarak dağıtarak parçalar oluşturur. Her veritabanı, tabloları sıkıştırmak için bölümlenmiş bir kümelenmiş sütunlu dizin kullanır. Bu soğuk yoldaki yanıt süreleri genellikle bir saniyenin altında.
  6. Azure Databricks kümesi Blob Depolama verileri yeniden işler. Özellikle, avro dosyalarını seri hale getirip Azure Databricks ve verileri isteğe bağlı analiz için Event Hubs gönderir.

Bileşenler

  • Event Hubs , büyük veriler için tam olarak yönetilen bir akış platformudur.

  • Stream Analytics , bulutta ve uç cihazlarda sorgular çalıştırarak gerçek zamanlı sunucusuz akış işlemleri sağlar.

  • Azure Cosmos DB , genel olarak dağıtılmış, çok modelli bir veritabanıdır. Azure Cosmos DB, çözümleriniz herhangi bir sayıda coğrafi bölgede işleme ve depolama alanı esnek olabilir.

  • tablo DepolamaAzure Depolamabir parçasıdır. Bu hizmet, yapılandırılmış NoSQL verilerini bulutta depolar.

  • SQL Veritabanı , Azure SQL ailesinin bir parçası olan ilişkisel bir veritabanı hizmetidir. tam olarak yönetilen bir hizmet olarak, SQL Veritabanı veritabanı yönetim işlevlerini işler. SQL Veritabanı ayrıca, performansı ve dayanıklılığı en iyileştiren aı destekli otomatik özellikler de sağlar. Sunucusuz işlem ve hiper ölçek depolama seçenekleri, kaynakları isteğe bağlı olarak otomatik olarak ölçeklendirir.

  • Elastik veritabanı araçları , ölçekli veritabanları oluşturmanıza ve yönetmenize yardımcı olur. bu SQL Veritabanı özelliği, parçalı uygulamalar geliştirmek için kullanabileceğiniz bir istemci kitaplığı içerir.

  • Blob Depolama , Depolamabir parçası olan bir hizmettir. Blob Depolama, büyük miktarlarda yapılandırılmamış veriler için iyileştirilmiş bulut nesne depolama alanı sunar.

  • Azure Databricks bir veri analizi platformudur. Tam olarak yönetilen Spark kümeleri, birden fazla kaynaktan oluşan büyük veri akışlarını işler. Azure Databricks, constructureless veri kümelerini temizler ve dönüştürür. İşlenen verileri işletimsel veritabanlarından veya veri ambarlarından yapılandırılmış verilerle birleştirir. Azure Databricks Ayrıca ölçeklenebilir makine öğrenimi ve derin öğrenme modellerini dağıtır.

  • Power BI , analiz hizmetleri ve uygulamaları koleksiyonudur. ilişkisiz veri kaynaklarını bağlamak ve göstermek için Power BI kullanabilirsiniz.

Dikkat edilmesi gerekenler

Bu çözüm aşağıdaki varsayımları yapar:

  • Verileri arşivledikten sonra güncelleştirmeniz veya silmeniz gerekmez.
  • Veri şeması yalnızca zamana göre en az düzeyde değişir.

Bu çözümü uygularken aşağıdaki noktaları göz önünde bulundurun:

Performansla ilgili önemli noktalar

  • Performansı iyileştirmek için:

    • Parçalı tabloları tablo sıkıştırması ile birleştirin.
    • Tabloları tarihe göre bölümleyin. Her parça, farklı bir dönemdeki verileri içerir.
    • Dizinleri Tarih bölümleme ile hizalayın.
  • Saniyede 50.000 ' den fazla ileti ölçeklendirmek için, Işlevler içinden Esnek veritabanı istemci kitaplığını kullanarak şunları yapın:

    • İletileri bölüme göre gruplandırın.
    • INSERT deyimlerini küçük toplu işlemlere Böl.

    bu yaklaşım, SQL Veritabanı türünde 10 standart S3 veritabanı kullanan sistemler için uygundur. Sütunlu Dizin barındırmak için, en azından Standart katmana ihtiyacınız vardır.

  • Ekleme işlemleri sırasında en iyi performansı elde etmek için, Saklı yordamlarla tablo değerli parametrelerikullanın.

  • CREATE COLUMNSTORE Index ifadesini kullandığınızda COLUMNSTORE_ARCHIVE seçeneğini kullanın. Bu seçenek mümkün olan en yüksek sıkıştırma düzeyini sağlar. Yüksek sıkıştırma düzeyi, verileri depolamak ve almak için gereken süreyi artırır. Ancak elde edilen g/ç performansı yine de tatmin edici olmalıdır.

Ölçeklenebilirlik konusunda dikkat edilmesi gerekenler

  • Sisteminizi yoğun iş yüklerine uyacak şekilde genişletebilmeniz için parçaları kullanın. Parçalı veritabanlarını kullandığınızda ölçeği genişletmek veya içine çıkarmak için parçalar ekleyebilir veya kaldırabilirsiniz. Bölünmüş birleştirme aracı, bölümleri bölmenize ve birleştirmenizeyardımcı olur.
  • Işlevlerde ölçeklendirme işlevlerinden yararlanın. CPU ve bellek kullanımına göre ölçeklenen işlevler oluşturun. İşlevleri, beklenmeyen iş yüklerine uyum sağlamak için yeni örnekler başlatacak şekilde yapılandırın.
  • Avro dosya yeniden işlemesini ölçeklendirmek için Azure Databricks kümenizin boyutunu artırın. çözüm, Blob Depolama yakalandığı Avro dosyalarını yeniden işlemek için Azure Databricks kullanır. Azure Databricks Spark kümeleri, avro dosyasının yolunun tümünü veya bir kısmını işleyebilir. Azure Databricks küme boyutunu artırarak, gerekli bir zaman çerçevesinde bulunan tüm verileri yeniden işleyebilirsiniz. Azure Databricks artan hacmi işlemek için, gerektiği şekilde ad alanına Event Hubs örnekleri ekleyin.

Dayanıklılık konuları

  • Bu senaryodaki tüm bileşenler yönetilir. Bölgesel düzeyde, yerleşik dayanıklılık sunar.
  • Dayanıklı çözümler tasarlama hakkında genel yönergeler için bkz. güvenilirlik ve genel bakış.

Fiyatlandırma

Bu senaryoyu çalıştırmanın maliyetini araştırmak için, tüm Azure hizmetlerini önceden yapılandıran Azure Fiyatlandırma hesaplayıcısı' nı kullanın. Parametreleri, almayı düşündüğünüz trafikle eşleşecek şekilde ayarlayın.

Aşağıdaki tabloda, değişen miktarda 1-kilobayt ileti için örnek maliyet profilleri listelenmektedir:

Boyut İleti birimi Profil
Küçük Saniyede 500 'den az ileti Küçük profil
Orta saniye başına 1.500 ileti Orta boy profil
Büyük Saniyede 5.000 taneden fazla ileti Büyük profil

Sonraki adımlar