Azure Veri Gezgini (Kusto)

Özet

Öğe Açıklama
Sürüm Durumu Genel Kullanılabilirlik
Ürünler Excel
Power BI (Anlam modelleri)
Power BI (Veri Akışları)
Doku (Veri Akışı 2. Nesil)
Power Apps (Veri Akışları)
Dynamics 365 Customer Insights
Desteklenen Kimlik Doğrulama Türleri Kuruluş Hesabı
İşlev Başvurusu Belgeleri

Not

Dağıtım zamanlamaları ve konağa özgü özellikler nedeniyle bazı özellikler tek bir üründe mevcut olabilir, ancak diğerleri mevcut olmayabilir.

Önkoşullar

  • Azure aboneliği. Azure ücretsiz deneme sürümünü edinin'e gidin.

  • Microsoft Entra Id üyesi olan bir kuruluş e-posta hesabı. Bu makalede, Azure Veri Gezgini yardım kümesi örneklerine bağlanmak için bu hesap kullanılır.

Desteklenen özellikler

  • İçeri Aktar
  • DirectQuery (Power BI anlam modelleri)
  • Gelişmiş seçenekler
    • Sorgu sonucu kayıt numarasını sınırla
    • Sorgu sonucu veri boyutunu Bayt cinsinden sınırla
    • Sonuç kümesi kesilmesini devre dışı bırakma
    • Ek set deyimleri

Power Query Desktop'tan Azure Veri Gezgini'a Bağlan

Power Query Desktop'tan Azure Veri Gezgini bağlanmak için:

  1. Veri alma deneyiminde Azure Veri Gezgini (Kusto) seçeneğini belirleyin. Power Query Desktop'taki veri alma deneyimi uygulamalar arasında farklılık gösterir. Uygulamanız için Power Query Desktop veri alma deneyimi hakkında daha fazla bilgi için Veri alma yeri'ne gidin.

  2. Azure Veri Gezgini(Kusto)'da Azure Veri Gezgini kümenizin adını belirtin. Bu örnekte, örnek yardım kümesine erişmek için kullanın https://help.kusto.windows.net . Diğer kümeler için URL, https://< ClusterName> biçimindedir.<Region.kusto.windows.net>.

    Ayrıca, bağlandığınız kümede barındırılan bir veritabanını ve veritabanındaki tablolardan birini veya gibi StormEvents | take 1000bir sorguyu seçebilirsiniz.

  3. Herhangi bir gelişmiş seçenek kullanmak istiyorsanız, seçeneği belirtin ve bu seçenekle kullanılacak verileri girin. Daha fazla bilgi: gelişmiş seçenekleri kullanarak Bağlan

    Not

    Tüm gelişmiş seçenekleri ve veri bağlantısı seçimini görüntülemek için aşağı kaydırmanız gerekebilir.

  4. İçeri aktar veya DirectQuery veri bağlantısı modunu seçin (yalnızca Power BI Desktop). Daha fazla bilgi: İçeri aktarma veya Doğrudan Sorgu modu ne zaman kullanılır?

  5. Devam etmek için Tamam'ı seçin.

    Kümenin URL'sinin girilmiş olduğu Azure Veri Gezgini (Kusto) iletişim kutusunun ekran görüntüsü.

  6. Kümeyle henüz bağlantınız yoksa Oturum aç'ı seçin. Bir kuruluş hesabıyla oturum açın ve Bağlan'yi seçin.

    Kuruluş hesabı oturum açmaya hazır azure Veri Gezgini için oturum açma iletişim kutusunun ekran görüntüsü.

  7. Gezgin'de istediğiniz veritabanı bilgilerini seçin, ardından verileri yüklemek için Yükle'yi veya Power Query düzenleyicisinde verileri dönüştürmeye devam etmek için Verileri Dönüştür'ü seçin. Bu örnekte, Örnekler veritabanında StormEvents seçilmiştir.

    Gezgin'in açık ve Örnekler veritabanında StormEvents verilerini içeren ekran görüntüsü.

Power Query Online'dan Azure Veri Gezgini'a Bağlan

Power Query Online'dan Azure Veri Gezgini bağlanmak için:

  1. Veri alma deneyiminde Azure Veri Gezgini (Kusto) seçeneğini belirleyin. Farklı uygulamaların Power Query Online veri alma deneyimine ulaşmak için farklı yolları vardır. Power Query Online'a uygulamanızdan veri alma deneyimine nasıl ulaşabileceğiniz hakkında daha fazla bilgi için Nereden veri alınacağı bölümüne gidin.

    Azure Veri Gezgini vurgulanmış veri al penceresinin ekran görüntüsü.

  2. veri kaynağına Bağlan bölümünde Azure Veri Gezgini kümenizin adını belirtin. Bu örnekte, örnek yardım kümesine erişmek için kullanın https://help.kusto.windows.net . Diğer kümeler için URL, https://< ClusterName> biçimindedir.<Region.kusto.windows.net>.

    Ayrıca, bağlandığınız kümede barındırılan bir veritabanını ve veritabanındaki tablolardan birini veya gibi StormEvents | take 1000bir sorguyu seçebilirsiniz.

    Kümenin URL'sinin girilmiş olduğu Azure Veri Gezgini (Kusto) için veri kaynağı seçin sayfasının ekran görüntüsü.

  3. Herhangi bir gelişmiş seçenek kullanmak istiyorsanız, seçeneği belirtin ve bu seçenekle kullanılacak verileri girin. Daha fazla bilgi: gelişmiş seçenekleri kullanarak Bağlan

  4. Gerekirse, Veri ağ geçidinde şirket içi veri ağ geçidini seçin.

  5. Kümeyle henüz bağlantınız yoksa Oturum aç'ı seçin. Kuruluş hesabıyla oturum açın.

  6. Başarıyla oturum açtıktan sonra İleri'yi seçin.

  7. Veri seçin sayfasında, istediğiniz veritabanı bilgilerini seçin, ardından Power Query düzenleyicisinde verileri dönüştürmeye devam etmek için Verileri Dönüştür veya İleri'yi seçin. Bu örnekte, Örnekler veritabanında StormEvents seçilmiştir.

    Örnekler veritabanındaki StormEvents verilerini içeren Veri seç sayfasının ekran görüntüsü.

Gelişmiş seçenekleri kullanarak Bağlan

Hem Power Query Desktop hem de Power Query Online, gerekirse sorgunuza ekleyebileceğiniz bir dizi gelişmiş seçenek sağlar.

Aşağıdaki tabloda, Power Query Desktop ve Power Query Online'da ayarlayabileceğiniz tüm gelişmiş seçenekler listelenmiştir.

Gelişmiş seçenek Açıklama
Sorgu sonucu kayıt numarasını sınırla Sonuçta döndürülecek en fazla kayıt sayısı.
Sorgu sonucu veri boyutunu Bayt cinsinden sınırla Sonuçta döndürülecek bayt cinsinden en büyük veri boyutu.
Sonuç kümesi kesilmesini devre dışı bırakma İstek seçeneğini kullanarak sonuç kesilmesini notruncation etkinleştirin veya devre dışı bırakın.
Ek Set Deyimleri Sorgu süresi için sorgu seçeneklerini ayarlar. Sorgu seçenekleri, bir sorguyu yürütme ve sonuçları döndürmeyi denetler. Birden çok Set deyimi noktalı virgülle ayrılabilir.

Power Query kullanıcı arabiriminde bulunmayan ek gelişmiş seçenekler hakkında bilgi için Bkz. M Sorgusunda Azure Veri Gezgini bağlayıcı seçeneklerini yapılandırma.

İçeri aktarma veya Doğrudan Sorgu modu ne zaman kullanılır?

İçeri aktarma modunda veriler Power BI'a taşınır. DirectQuery modunda veriler doğrudan kümenizden sorgulanır.

Şu durumlarda İçeri Aktarma modunu kullanın:

  • Veri kümeniz küçük.
  • Neredeyse gerçek zamanlı verilere ihtiyacınız yoktur.
  • Verileriniz zaten toplanmış veya Kusto'da toplama işlemi gerçekleştirmiş oluyorsunuz.

Aşağıdaki durumlarda DirectQuery modunu kullanın:

  • Veri kümeniz çok büyük.
  • Neredeyse gerçek zamanlı verilere ihtiyacınız vardır.

DirectQuery kullanma hakkında daha fazla bilgi edinmek için Power BI'da DirectQuery kullanma hakkında bölümüne gidin.

Verileri sorgulamak için Azure Veri Gezgini'ni kullanma ipuçları

Aşağıdaki bölümlerde Kusto sorgu dilini Power Query ile kullanmaya yönelik ipuçları ve püf noktaları yer almaktadır.

Power BI'da karmaşık sorgular

Karmaşık sorgular Kusto'da Power Query'den daha kolay ifade edilir. Bunlar Kusto işlevleri olarak uygulanmalı ve Power BI'da çağrılmalıdır. Bu yöntem, Kusto sorgunuzda deyimlerle let DirectQuery kullanılırken gereklidir. Power BI iki sorguyu birleştirdiğinden ve let işleçle join deyimler kullanılamadığından söz dizimi hataları oluşabilir. Bu nedenle, birleştirmenin her bir bölümünü kusto işlevi olarak kaydedin ve Power BI'ın bu iki işlevi bir araya toplamasına izin verin.

Göreli tarih-saat işlecinin benzetimini oluşturma

Power Query gibi ago()göreli bir tarih-saat işleci içermez. simülasyonunu ago()yapmak için DateTime.FixedLocalNow ve #duration Power Query M işlevlerinin birleşimini kullanın.

işlecini ago() kullanarak bu sorgu yerine:

    StormEvents | where StartTime > (now()-5d)
    StormEvents | where StartTime > ago(5d)

Aşağıdaki eşdeğer sorguyu kullanın:

let
    Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents", []),
    #"Filtered Rows" = Table.SelectRows(Source, each [StartTime] > (DateTime.FixedLocalNow()-#duration(5,0,0,0)))
in
    #"Filtered Rows"

M Sorgusunda Azure Veri Gezgini bağlayıcı seçeneklerini yapılandırma

Azure Veri Gezgini bağlayıcısının seçeneklerini M sorgu dilindeki Power Query gelişmiş düzenleyicisinden yapılandırabilirsiniz. Bu seçenekleri kullanarak, Azure Veri Gezgini kümenize gönderilen oluşturulan sorguyu denetleyebilirsiniz.

let
    Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents", [<options>])
in
    Source

M sorgunuzda aşağıdaki seçeneklerden herhangi birini kullanabilirsiniz:

Seçenek Örnek Açıklama
MaxRows [MaxRows=300000] set deyimini truncationmaxrecords sorgunuza ekler. Bir sorgunun çağırana döndürebileceği varsayılan kayıt sayısı üst sınırını geçersiz kılar (kesme).
MaxSize [MaxSize=4194304] set deyimini truncationmaxsize sorgunuza ekler. Bir sorgunun arayana döndürmesine izin verilen varsayılan maksimum veri boyutunu geçersiz kılar (kesme).
Notruncate [NoTruncate=true] set deyimini notruncation sorgunuza ekler. Çağırana döndürülen sorgu sonuçlarının kesilmesini engellemeyi etkinleştirir.
AdditionalSetStatements [AdditionalSetStatements="set query_datascope=hotcache"] Sağlanan küme deyimlerini sorgunuza ekler. Bu deyimler, sorgu süresi boyunca sorgu seçeneklerini ayarlamak için kullanılır. Sorgu seçenekleri, bir sorguyu yürütme ve sonuçları döndürmeyi denetler.
CaseInsensitive [CaseInsensitive=true] Bağlayıcının büyük/küçük harfe duyarlı olmayan sorgular oluşturmasını sağlar. Sorgular, değerleri karşılaştırırken işleç yerine == işlecini kullanır=~.
ForceUseContains [ForceUseContains=true] Bağlayıcının metin alanlarıyla çalışırken varsayılan has yerine kullanan contains sorgular oluşturmasını sağlar. Çok has daha yüksek performanslı olsa da alt dizeleri işlemez. İki işleç arasındaki fark hakkında daha fazla bilgi için dize işleçlerine gidin.
Timeout [Timeout=#duration(0,10,0,0)] Sorgunun hem istemci hem de sunucu zaman aşımını sağlanan süreyle yapılandırılır.
ClientRequestIdPrefix [ClientRequestIdPrefix="MyReport"] Bağlayıcı tarafından gönderilen tüm sorgular için bir ClientRequestId ön eki yapılandırılır. Bu, sorguların kümede belirli bir rapordan ve/veya veri kaynağından geldiği şekilde tanımlanabilmesini sağlar.

Not

Gerekli davranışa ulaşmak için birden çok seçeneği bir araya getirebilirsiniz: [NoTruncate=true, CaseInsensitive=true]

Kusto sorgu sınırlarına ulaşma

Kusto sorguları, sorgu sınırlarında açıklandığı gibi varsayılan olarak en çok 500.000 satır veya 64 MB döndürür. Azure Veri Gezgini (Kusto) bağlantı penceresinde gelişmiş seçenekleri kullanarak bu varsayılanları geçersiz kılabilirsiniz:

gelişmiş seçenekler.

Bu seçenekler, varsayılan sorgu sınırlarını değiştirmek için sorgunuzla birlikte deyimleri ayarlama sorununu çözer:

  • Sınır sorgu sonucu kayıt numarası bir oluşturur set truncationmaxrecords
  • Bayt cinsinden sorgu sonucu veri boyutunu sınırlamak bir set truncationmaxsize
  • Devre dışı bırak sonuç kümesi kesilmesi bir oluşturur set notruncation

Büyük/küçük harfe duyarlı

Varsayılan olarak, bağlayıcı dize değerlerini karşılaştırırken büyük/küçük harfe duyarlı == işlecini kullanan sorgular oluşturur. Veriler büyük/küçük harfe duyarsızsa, istenen davranış bu değildir. Oluşturulan sorguyu değiştirmek için bağlayıcı seçeneğini kullanın CaseInsensitive :

let
    Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents", [CaseInsensitive=true]),
    #"Filtered Rows" = Table.SelectRows(Source, each [State] == "aLaBama")
in
    #"Filtered Rows"

Sorgu parametrelerini kullanma

Sorgunuzu dinamik olarak değiştirmek için sorgu parametrelerini kullanabilirsiniz.

Sorgu adımlarında sorgu parametresi kullanma

Sorgu parametresini destekleyen herhangi bir sorgu adımında kullanabilirsiniz. Örneğin, sonuçları parametrenin değerine göre filtreleyin. Bu örnekte, Power Query düzenleyicisinde sütunun State sağ tarafındaki açılan menüyü seçin, Metin Filtreleri>Eşittir'i seçin ve ardından Satırları 'Durum' konumunda tut'un altında ALABAMA'yı seçin.

Sonuçları parametre kullanarak filtreleyin.

Azure Veri Gezgini işlevine parametre sağlama

Kusto işlevleri, karmaşık Kusto Sorgu Dili (KQL) sorgularını sürdürmenin harika bir yoludur. Power Query'de KQL eklemek yerine işlevleri kullanmanızı öneririz. İşlev kullanmanın temel avantajı, mantığın oluşturması ve test etmek kolay bir ortamda bir kez korunmasıdır.

İşlevler ayrıca parametreler alabilir ve bu nedenle Power BI kullanıcısına çok fazla esneklik ekler. Power BI'ın verileri dilimlemenin birçok yolu vardır. Ancak tüm filtreler ve dilimleyiciler özgün KQL'nin arkasına eklenir ve çoğu durumda sorgunun erken bir aşamasında filtreleme kullanmak istersiniz. İşlevleri ve dinamik parametreleri kullanmak, son sorguyu özelleştirmenin çok etkili bir yoludur.

İşlev oluşturma

Ücretsiz küme de dahil olmak üzere erişiminiz olan herhangi bir Azure Veri Gezgini kümesinde aşağıdaki işlevi oluşturabilirsiniz. İşlev, rapor kullanıcısı tarafından sağlanan bir sayıdan büyük veya daha küçük satış işlemleri için filtrelenmiş olan yardım kümesindeki tabloyu SalesTable döndürür.

.create-or-alter  function LargeOrSmallSales(Cutoff:long,Op:string=">")
{
    cluster("help").database("ContosoSales").SalesTable
    | where  (Op==">" and SalesAmount >= Cutoff) or (Op=="<"  and SalesAmount <= Cutoff)
}

İşlevi oluşturduktan sonra aşağıdakileri kullanarak test edebilirsiniz:

LargeOrSmallSales(2000,">")
| summarize Sales=tolong(sum(SalesAmount)) by Country

Ayrıca şunları kullanarak da test edebilirsiniz:

LargeOrSmallSales(20,"<")
| summarize Sales=tolong(sum(SalesAmount)) by Country
Power BI'da işlevini kullanma
  1. İşlevi oluşturduğunuz kümeye Bağlan.

  2. Power Query gezgininde, nesne listesinden işlevi seçin. Bağlayıcı, parametreleri analiz eder ve bunları gezginin sağ tarafındaki verilerin üzerinde sunar.

    Gezgindeki verilerin üzerinde Kesme ve İşlem parametrelerinin görüntülendiği ekran görüntüsü.

  3. Parametrelere değer ekleyin ve uygula'yı seçin.

  4. Önizleme göründükten sonra Verileri Dönüştür'ü seçin.

  5. Power Query düzenleyicisine girdikten sonra biri kesme değeri, diğeri de işleç için olan iki parametre oluşturun.

  6. Sorguya LargeOrSmallSales geri dönün ve değerleri formül çubuğundaki sorgu parametreleriyle değiştirin.

    Formül çubuğundaki Cutoff_Param ve Op_Param parametrelerini vurgulayarak LargeOrSmallSales işlevinin ekran görüntüsü.

  7. Düzenleyiciden, iki parametreye yönelik seçenekler sağlamak için iki statik tablo (Veri Girin) oluşturun. Kesme için 10, 50, 100, 200, 500, 1000, 2000 gibi değerlerle bir tablo oluşturabilirsiniz. Opiçin, iki Metin değeri < ve >olan bir tablo.

  8. Tablolardaki iki sütunun, Parametreye bağla seçimi kullanılarak sorgu parametrelerine bağlanması gerekir.

    İşlem'in Op_Param parametresine bağlı olduğu ekran görüntüsü.

Son rapor, iki statik tablo için dilimleyicileri ve özet satışlardaki tüm görselleri içerir.

Power BI'da, tablonun yanında Kesme ve İşlem değeri seçimlerinin görüntülendiği ekran görüntüsü.

Temel tablo önce filtrelenip sonra toplanır.

Bağlantı ayrıntılarında sorgu parametresi kullanma

Sorgudaki bilgileri filtrelemek ve sorgu performansını iyileştirmek için bir sorgu parametresi kullanın.

Gelişmiş Düzenleyici:

  1. Sorgunun aşağıdaki bölümünü bulun:

    Source = AzureDataExplorer.Contents("<Cluster>", "<Database>", "<Query>", [])

    Örneğin:

    Source = AzureDataExplorer.Contents("Help", "Samples", "StormEvents | where State == 'ALABAMA' | take 100", [])
    
  2. Kusto Sorgu Dili (KQL) sorgusuna bir sorgu parametresi ekleyin.

    Bir KQL sorgusunu doğrudan bağlantı iletişim kutusuna yapıştırırsanız, sorgu Power Query'deki kaynak adımın bir parçası olur. Gelişmiş düzenleyiciyi kullanarak veya formül çubuğundaki kaynak deyimi düzenlerken parametreleri sorgunun bir parçası olarak ekleyebilirsiniz. Örnek sorgu olabilir StormEvents | where State == ' " & State & " ' | take 100. State bir parametredir ve çalışma zamanında sorgu şöyle olur:

    StormEvents | where State == 'ALABAMA' | take 100

  3. Sorgunuz tırnak işaretleri içeriyorsa, bunları doğru şekilde kodlayın. Örneğin, KQL'de aşağıdaki sorgu:

    "StormEvents | where State == "ALABAMA" | take 100"
    

    Gelişmiş Düzenleyici aşağıdaki gibi iki tırnak işaretiyle gösterilir:

     "StormEvents | where State == ""ALABAMA"" | take 100"
    

    gibi Statebir parametre kullanıyorsanız, üç tırnak işareti içeren aşağıdaki sorguyla değiştirilmelidir:

    "StormEvents | where State == """ & State & """ | take 100"
    

Azure Veri Gezgini özellikleri için Value.NativeQuery kullanma

Power Query'de desteklenmeyen bir Azure Veri Gezgini özelliğini kullanmak için Power Query M'de Value.NativeQuery yöntemini kullanın. Bu yöntem oluşturulan sorgunun içine bir Kusto Sorgu Dili parçası ekler ve yürütülen sorgu üzerinde daha fazla denetim sahibi olmanız için de kullanılabilir.

Aşağıdaki örnekte, azure Veri Gezgini işlevinin percentiles nasıl kullanılacağı gösterilmektedir:

let
    StormEvents = AzureDataExplorer.Contents(DefaultCluster, DefaultDatabase){[Name = DefaultTable]}[Data],
    Percentiles = Value.NativeQuery(StormEvents, "| summarize percentiles(DamageProperty, 50, 90, 95) by State")
in
    Percentiles

Kusto'ya denetim komutları vermek için Power BI veri yenileme zamanlayıcısını kullanmayın

Power BI, bir veri kaynağında düzenli aralıklarla sorgular verebilen bir veri yenileme zamanlayıcısı içerir. Power BI tüm sorguların salt okunur olduğunu varsaydığından, denetim komutlarını Kusto'ya zamanlamak için bu mekanizma kullanılmamalıdır.