Aracılığıyla paylaş


Sorgu hızlandırmayı Azure Data Lake Storage

Sorgu hızlandırma, uygulamaların ve analiz çerçevelerinin yalnızca belirli bir işlemi gerçekleştirmek için ihtiyaç duydukları verileri alarak veri işlemeyi önemli ölçüde iyileştirmesini sağlar. Bu, depolanan verilerle ilgili kritik içgörüler elde etmek için gereken süreyi ve işlem gücünü azaltır.

Genel Bakış

Sorgu hızlandırma, uygulamaların diskten veri okunduğu sırada satırları ve sütunları filtrelemesini sağlayan filtreleme koşullarını ve sütun projeksiyonlarını kabul eder. Yalnızca bir koşulun koşullarını karşılayan veriler ağ üzerinden uygulamaya aktarılır. Bu, ağ gecikme süresini ve işlem maliyetini azaltır.

Sorgu hızlandırma isteğinde satır filtresi koşullarını ve sütun projeksiyonlarını belirtmek için SQL'i kullanabilirsiniz. İstek yalnızca bir dosyayı işler. Bu nedenle, SQL'in birleşimler ve toplamalara göre gruplandırma gibi gelişmiş ilişkisel özellikleri desteklenmez. Sorgu hızlandırma, her isteğe giriş olarak CSV ve JSON biçimli verileri destekler.

Sorgu hızlandırma özelliği Data Lake Storage (hiyerarşik ad alanının etkinleştirildiği depolama hesapları) ile sınırlı değildir. Sorgu hızlandırma, depolama hesaplarında hiyerarşik ad alanı etkin olmayan bloblarla uyumludur. Bu, depolama hesaplarında blob olarak depoladığınız verileri işlerken ağ gecikme süresi ve işlem maliyetlerinde aynı düşüşe ulaşabileceğiniz anlamına gelir.

İstemci uygulamasında sorgu hızlandırmanın nasıl kullanılacağına ilişkin bir örnek için bkz. Azure Data Lake Storage sorgu hızlandırmayı kullanarak verileri filtreleme.

Veri akışı

Aşağıdaki diyagramda tipik bir uygulamanın verileri işlemek için sorgu hızlandırmayı nasıl kullandığı gösterilmektedir.

Sorgu hızlandırmaya genel bakış

  1. İstemci uygulaması, koşul ve sütun projeksiyonları belirterek dosya verilerini istemektedir.

  2. Sorgu hızlandırma, belirtilen SQL sorgusunu ayrıştırarak verileri ayrıştırmak ve filtrelemek için işleri dağıtır.

  3. İşlemciler diskten verileri okur, uygun biçimi kullanarak verileri ayrıştırıp belirtilen koşul ve sütun projeksiyonlarını uygulayarak verileri filtreler.

  4. Sorgu hızlandırma, istemci uygulamasına geri akış yapmak için yanıt parçalarını birleştirir.

  5. İstemci uygulaması akışlı yanıtı alır ve ayrıştırıyor. Uygulamanın diğer verileri filtrelemesi gerekmez ve istenen hesaplamayı veya dönüştürmeyi doğrudan uygulayabilir.

Daha düşük maliyetle daha iyi performans

Sorgu hızlandırma, uygulamanız tarafından aktarılan ve işlenen veri miktarını azaltarak performansı iyileştirir.

Toplanan değeri hesaplamak için uygulamalar genellikle bir dosyadaki tüm verileri alır ve verileri yerel olarak işleyip filtreler. Analiz iş yükleri için giriş/çıkış desenlerinin analizi, uygulamaların belirli bir hesaplamayı gerçekleştirmek için genellikle okudukları verilerin yalnızca %20'sini gerektirdiğini ortaya koymaktadır. Bölüm ayıklama gibi teknikler uygulandıktan sonra bile bu istatistik geçerlidir. Bu, verilerin %80'inin ağ üzerinden gereksizce aktarıldığı, ayrıştırıldığı ve uygulamalara göre filtrelendiği anlamına gelir. Gereksiz verileri kaldırmak için tasarlanan bu desen, önemli bir işlem maliyetine neden olur.

Azure'da hem aktarım hızı hem de gecikme süresi açısından sektör lideri bir ağ olsa da, söz konusu ağ üzerinden gereksiz şekilde veri aktarımı uygulama performansı için yine de maliyetlidir. Depolama isteği sırasında istenmeyen verileri filtreleyerek sorgu hızlandırma bu maliyeti ortadan kaldırır.

Ayrıca, gereksiz verileri ayrıştırmak ve filtrelemek için gereken CPU yükü, uygulamanızın işini yapabilmesi için daha fazla sayıda ve daha büyük VM sağlamasını gerektirir. Uygulamalar bu işlem yükünü sorgu hızlandırmaya aktararak önemli maliyet tasarrufu sağlayabilir.

Sorgu hızlandırmadan yararlanabilen uygulamalar

Sorgu hızlandırma, dağıtılmış analiz çerçeveleri ve veri işleme uygulamaları için tasarlanmıştır.

Apache Spark ve Apache Hive gibi dağıtılmış analiz çerçeveleri, çerçeve içinde bir depolama soyutlama katmanı içerir. Bu altyapılar, kullanıcı sorguları için en uygun sorgu planını belirlerken temel G/Ç hizmetinin özellikleri hakkında bilgi edinebilen sorgu iyileştiricileri de içerir. Bu çerçeveler sorgu hızlandırmayı tümleştirmeye başlıyor. Sonuç olarak, bu çerçevelerin kullanıcıları sorgularda değişiklik yapmak zorunda kalmadan geliştirilmiş sorgu gecikme süresi ve daha düşük toplam sahip olma maliyeti görür.

Sorgu hızlandırma, veri işleme uygulamaları için de tasarlanmıştır. Bu tür uygulamalar genellikle analiz içgörülerine doğrudan yol açmayacak büyük ölçekli veri dönüştürmeleri gerçekleştirir ve bu nedenle her zaman yerleşik dağıtılmış analiz çerçevelerini kullanmaz. Bu uygulamalar genellikle temel alınan depolama hizmetiyle daha doğrudan bir ilişkiye sahiptir, böylece sorgu hızlandırma gibi özelliklerden doğrudan yararlanabilirler.

Bir uygulamanın sorgu hızlandırmayı nasıl tümleştirebileceğine ilişkin bir örnek için bkz. Azure Data Lake Storage sorgu hızlandırmayı kullanarak verileri filtreleme.

Fiyatlandırma

Azure Data Lake Storage hizmetindeki artan işlem yükü nedeniyle, sorgu hızlandırmayı kullanmaya yönelik fiyatlandırma modeli normal Azure Data Lake Storage işlem modelinden farklıdır. Sorgu hızlandırma, taranan veri miktarı için bir maliyetin yanı sıra çağırana döndürülen veri miktarı için bir maliyet ücretlendirilir. Daha fazla bilgi için bkz. Azure Data Lake Storage 2. Nesil fiyatlandırması.

Faturalama modelinde yapılan değişikliğe rağmen Sorgu hızlandırmanın fiyatlandırma modeli, çok daha pahalı VM maliyetlerinin azalması göz önünde bulundurularak bir iş yükünün toplam sahip olma maliyetini düşürecek şekilde tasarlanmıştır.

Sonraki adımlar