Düzenle

Aracılığıyla paylaş


Azure SQL ile HTAP aracılığıyla maliyet tasarrufu

Azure Databricks
Azure Event Hubs
Azure Functions
Azure SQL Database
Azure 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 gecikme süreli, yüksek hacimli operasyonel iş yüklerini kullanır. Analiz için daha yüksek gecikme süresi, daha düşük hacimli iş yükleri daha tipiktir. HTAP mimarileri her iki iş yükü türü için de bir çözüm sunar. HTAP, bellek içi veritabanlarını kullanarak büyük hacimlerdeki verilerdeki sorguları iyileştirmek için teknolojileri birleştirir.

Mimari

HTAP çözümünde verilerin merkezinde Azure SQL Veritabanı ile nasıl aktığını gösteren mimari diyagramı.

Bu mimarinin bir Visio dosyasını indirin.

Veri akışı

  1. Event Hubs, telemetri verilerini şirket içi tesislerden alır.
  2. Blob Depolama Event Hubs verilerini yakalar ve gelecekteki analizler için depolar.
  3. Stream Analytics verileri işler. Çözümün sık erişimli yolunda Azure Cosmos DB, önceki iki aya ait verileri sorgular. Azure Cosmos DB, tek basamaklı milisaniye yanıt sürelerini garanti eder.
  4. Veri işleme veya depolama sırasında hatalar oluşursa sistem bunları Azure Tablo Depolama günlüğe kaydeder.
  5. Azure İşlevleri, verileri arşivlerken SQL Veritabanı elastik veritabanı istemci kitaplığını kullanır. Bu işlem, ekleme işlemlerini iyileştirmek için verileri bölümlere ayırır. Çözüm, verileri birkaç Azure SQL veritabanına yatay olarak dağıtarak parçalar oluşturur. Her veritabanı, tabloları sıkıştırmak için bölümlenmiş kümelenmiş sütunlu dizin kullanır. Bu soğuk yolda yanıt süreleri genellikle bir saniyenin altındadır.
  6. Azure Databricks kümesi Blob Depolama verilerini yeniden işler. Özellikle, Azure Databricks Avro dosyalarını seri durumdan çıkararak verileri isteğe bağlı analiz için Event Hubs'a 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 sorgu çalıştırarak gerçek zamanlı sunucusuz akış işleme sağlar.

  • Azure Cosmos DB , genel olarak dağıtılmış, çok modelli bir veritabanıdır. Azure Cosmos DB ile çözümleriniz, işleme hızını ve depolama alanını istediğiniz sayıda coğrafi bölgede esnek bir şekilde ölçeklendirebilir.

  • Tablo Depolama, Azure Depolama'nin bir 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önetimi işlevlerini işler. SQL Veritabanı ayrıca performansı ve dayanıklılığı en iyi duruma getiren yapay zeka destekli, otomatik özellikler 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çeği genişletilmiş 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, Depolama parçası olan bir hizmettir. Blob Depolama, büyük miktarlarda yapılandırılmamış veri için iyileştirilmiş bulut nesne depolaması sunar.

  • Azure Databricks bir veri analizi platformudur. Tam olarak yönetilen Spark kümeleri, birden çok kaynaktan büyük veri akışlarını işler. Azure Databricks, yapısız veri kümelerini temizler ve dönüştürür. İşlenen verileri işletimsel veritabanlarından veya veri ambarlarından alınan yapılandırılmış verilerle birleştirir. Azure Databricks ayrıca ölçeklenebilir makine öğrenmesi ve derin öğrenme modelleri eğitip dağıtır.

  • Power BI , analiz hizmetleri ve uygulamalarından oluşan bir koleksiyondur. İlişkili olmayan veri kaynaklarına bağlanmak ve bunları görüntülemek için Power BI'ı kullanabilirsiniz.

Senaryo ayrıntıları

Azure SQL Veritabanı bu HTAP çözümünün temelini oluşturur. Bu 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ümleme için Azure İşlevleri.
  • Olay depolama için Azure Blob Depolama.

Bu hizmetler birlikte şunları sağlayan bir HTAP çözümü sağlar:

  • Arşivlenmiş veriler hakkındaki içgörülere hızlı erişim sağlayarak maliyetleri azaltır. Bu çözümle seyrek erişimli yoldaki gecikme süreleri saatlerden saniyenin altına düşer.
  • Uzun vadeli depolamaya otomatik olarak veri ekleyerek arşivlemeyi basitleştirir.
  • Verileri parçalayarak ve elastik veritabanı kullanarak ölçeklenebilirliği en üst düzeye çıkarır.

Olası kullanım örnekleri

Bu çözüm, büyük hacimli geçmiş verilere düşük gecikme süreli erişim gerektiren kuruluşlar için geçerlidir. Örnekler şunları içerir:

  • Kişiselleştirilmiş deneyimler sağlamak için müşteri geçmişine ve demografik bilgilere erişen çevrimiçi perakendeciler.
  • Akıllı güç kılavuzlarını yönetmek için cihaz verilerini analizle birleştiren enerji sağlayıcıları.
  • Geçmiş ve gerçek zamanlı verilerdeki desenleri belirleyerek sahtekarlık önlemeyle uğraşan işletmeler. Bu senaryo finans ve finansal hizmetler sektörleri için geçerlidir.
  • Sorunları belirlemek için gerçek zamanlı olay işlemeye dayanan üreticiler. Bu senaryo üretim sektörü için geçerlidir.

Dikkat edilmesi gereken noktalar

Bu önemli noktalar, bir iş yükünün kalitesini artırmak için kullanılabilecek bir dizi yol gösteren ilke olan Azure İyi Tasarlanmış Çerçeve'nin yapı taşlarını uygular. Daha fazla bilgi için bkz . Microsoft Azure İyi Tasarlanmış Çerçeve.

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

  • Verileri arşivledikten sonra güncelleştirmeniz veya silmeniz gerekmez.
  • Veri şeması yalnızca zaman içinde çok az değişiklik gösterir.

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

Performans verimliliği

Performans verimliliği, kullanıcılar tarafından anlamlı bir şekilde yerleştirilen talepleri karşılamak amacıyla iş yükünüzü ölçeklendirme becerisidir. Daha fazla bilgi için bkz . Performans verimliliği sütununa genel bakış.

  • Performansı iyileştirmek için:

    • Parçalama ile tablo sıkıştırmayı birleştirin.
    • Tabloları tarihe göre bölümleme. Her parça farklı bir dönemden veriler içerir.
    • Dizinleri tarih bölümlemeyle hizalayın.
  • Saniyede 50.000'den fazla iletinin ölçeğini artırmak için İşlevler'in içinden elastik veritabanı istemci kitaplığını kullanarak şunları yapın:

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

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

  • Ekleme işlemleri sırasında en iyi performans için saklı yordamlarla tablo değerli parametreleri kullanın.

  • CREATE COLUMNSTORE INDEX deyimini 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 ihtiyacınız olan süreyi artırır. Ancak sonuçta elde edilen G/Ç performansı yine de tatmin edici olmalıdır.

Ölçeklenebilirlik

  • Sisteminizi zorlu iş yüklerini karşılayacak şekilde genişletebilmek için parçaları kullanın. Parçalı veritabanları kullandığınızda, ölçeği genişletmek veya daraltmak için parçalar ekleyebilir veya kaldırabilirsiniz. Bölme birleştirme aracı, bölümleri bölmenize ve birleştirmenize yardımcı olur.
  • İşlevler'deki ölçeklendirme işlevinden yararlanın. CPU ve bellek kullanımına göre ölçeklendirilen işlevler oluşturun. İşlevleri, beklenmeyen iş yüklerine uyum sağlamak için yeni örnekler başlatacak şekilde yapılandırın.
  • Avro dosyası yeniden işleme ölçeğini artırmak için Azure Databricks kümenizin boyutunu artırın. Çözüm, Blob Depolama tarafından yakalanan Avro dosyalarını yeniden işlemek için Azure Databricks'i kullanır. Azure Databricks'teki Spark kümeleri Avro dosyasının yolunun tamamını veya bir bölümünü işleyebilir. Azure Databricks küme boyutunu artırarak tüm verileri gerekli bir zaman çerçevesi içinde yeniden işleyebilirsiniz. Azure Databricks'ten artan hacmi işlemek için gerektiğinde ad alanına Event Hubs örnekleri ekleyin.

Dayanıklılık

  • 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 sütununa genel bakış.

Maliyet iyileştirme

Maliyet iyileştirmesi, gereksiz giderleri azaltmanın ve operasyonel verimlilikleri iyileştirmenin yollarını aramaktır. Daha fazla bilgi için bkz . Maliyet iyileştirme sütununa genel bakış.

Bu senaryoyu çalıştırmanın maliyetini keşfetmek için tüm Azure hizmetlerini önceden yapılandıran Azure fiyatlandırma hesaplayıcısını kullanın. Parametreleri almayı beklediğiniz trafikle eşleşecek şekilde ayarlayın.

Aşağıdaki tabloda, 1 kilobaytlık iletilerin değişen miktarları için örnek maliyet profilleri listelenmektedir:

Size İleti birimi Profil
Küçük Saniyede 500'den az ileti Küçük profil
Orta Saniyede 1.500 ileti Orta düzey profil
Büyük Saniyede 5.000'den fazla ileti Büyük profil

Katkıda Bulunanlar

Bu makale Microsoft tarafından yönetilir. Başlangıçta aşağıdaki katkıda bulunanlar tarafından yazılmıştır.

Asıl yazar:

Sonraki adımlar