Power Query'de sorgu değerlendirmesine ve sorguyu kaynağa döndürmeye genel bakış

Bu makale, M sorgularının nasıl işlendiğine ve veri kaynağı isteklerine nasıl dönüştürüldüklerine ilişkin temel bir genel bakış sağlar.

Power Query M betiği

Power Query tarafından oluşturulan, sizin tarafınızdan gelişmiş düzenleyicide el ile yazılmış veya boş bir belge kullanılarak girilen tüm sorgular, Power Query M formül dilindeki işlevlerden ve söz diziminden oluşur. Bu sorgu Power Query altyapısı tarafından yorumlanır ve değerlendirilir ve sonuçları çıkarılır. M betiği, sorguyu değerlendirmek için gereken yönergeler kümesi görevi görür.

İpucu

M betiğini verilerinizin nasıl hazırlandığını açıklayan bir tarif olarak düşünebilirsiniz.

M betiği oluşturmanın en yaygın yolu Power Query düzenleyicisini kullanmaktır. Örneğin, SQL Server veritabanı gibi bir veri kaynağına bağlandığınızda ekranınızın sağ tarafında uygulanan adımlar adlı bir bölüm olduğunu fark edersiniz. Bu bölümde sorgunuzda kullanılan tüm adımlar veya dönüşümler görüntülenir. Bu anlamda Power Query düzenleyicisi, peşinde olduğunuz dönüşümler için uygun M betiğini oluşturmanıza yardımcı olan bir arabirim görevi görür ve kullandığınız kodun geçerli olmasını sağlar.

Not

M betiği Power Query düzenleyicisinde aşağıdakiler için kullanılır:

  • Sorguyu bir dizi adım olarak görüntüleyin ve yeni adımların oluşturulmasına veya değiştirilmesine izin verin.
  • Diyagram görünümünü görüntüleme.

Uygulanan adımların ve veri önizleme görünümünün resmi.

Önceki görüntüde aşağıdaki adımları içeren uygulanan adımlar bölümü vurgulanmıştır:

  • Kaynak: Veri kaynağına bağlantıyı yapar. Bu durumda, bir SQL Server veritabanı bağlantısıdır.
  • Gezinti: Veritabanındaki belirli bir tabloya gider.
  • Diğer sütunlar kaldırıldı: Tablodan hangi sütunların tutulacaklarını seçer.
  • Sıralanmış satırlar: Tabloyu bir veya daha fazla sütun kullanarak sıralar.
  • En üstteki satırlar korundu: Tabloyu, tablonun en üstünden yalnızca belirli sayıda satırı tutacak şekilde filtreler.

Bu adım adları kümesi, Power Query'nin sizin için oluşturduğu M betiğini görüntülemenin kolay bir yoludur. Tam M betiğini görüntülemenin birkaç yolu vardır. Power Query'de Görünüm sekmesinde Gelişmiş Düzenleyici seçebilirsiniz. Giriş sekmesindeki Sorgu grubundan da Gelişmiş Düzenleyici seçebilirsiniz. Power Query'nin bazı sürümlerinde, Görünüm sekmesine gidip Düzen grubunda Betik görünümü Sorgu betiği'ni seçerek sorgu betiğini göstermek için formül çubuğunun görünümünü>de değiştirebilirsiniz.

Tam M betiğini ve uygulanan adımların ilgili adlarını içeren görüntü.

Uygulanan adımlar bölmesinde bulunan adların çoğu M betiğinde olduğu gibi de kullanılır. Sorgunun adımları, M dilinde tanımlayıcılar olarak adlandırılan bir ad kullanılarak adlandırılır. Bazen M'deki adım adlarının çevresinde fazladan karakterler kaydırılır, ancak bu karakterler uygulanan adımlarda gösterilmez. Bu ek karakterler nedeniyle tırnak içinde tanımlayıcı olarak kategorize edilen örneğidir#"Kept top rows". Tırnak içine alınmış tanımlayıcı, anahtar sözcükler, boşluklar, açıklamalar, işleçler ve noktalama işaretleri dahil olmak üzere sıfır veya daha fazla Unicode karakterden oluşan herhangi bir dizinin tanımlayıcı olarak kullanılmasına izin vermek için kullanılabilir. M dilindeki tanımlayıcılar hakkında daha fazla bilgi edinmek için sözcük temelli yapı bölümüne gidin.

Power Query düzenleyicisi aracılığıyla sorgunuzda yaptığınız tüm değişiklikler sorgunuzun M betiğini otomatik olarak güncelleştirir. Örneğin, başlangıç noktası olarak önceki görüntüyü kullanarak, İlk satırlar tutuldu adım adını İlk 20 satır olarak değiştirirseniz, bu değişiklik betik görünümünde otomatik olarak güncelleştirilir.

Uygulanan adım adının ilk 20 satır olarak değiştirildiği ve M betiğinin de güncelleştirildiği görüntü.

M betiğinin tamamını veya çoğunu sizin için oluşturmak için Power Query düzenleyicisini kullanmanızı öneririz ancak M betiğinizin parçalarını el ile ekleyebilir veya değiştirebilirsiniz. M dili hakkında daha fazla bilgi edinmek için M dilinin resmi belgeler sitesine gidin.

Not

M kodu olarak da adlandırılan M betiği, M dilini kullanan tüm kodlar için kullanılan bir terimdir. Bu makale bağlamında M betiği, Power Query sorgusunun içinde bulunan ve gelişmiş düzenleyici penceresinden veya formül çubuğundaki betik görünümünden erişilebilen kodu da ifade eder.

Power Query'de sorgu değerlendirmesi

Aşağıdaki diyagramda, Power Query'de bir sorgu değerlendirildiğinde gerçekleşen işlem incelenmiştir.

Genel bakış olarak sorgu değerlendirme diyagramı.

  1. Gelişmiş düzenleyicide bulunan M betiği Power Query altyapısına gönderilir. Kimlik bilgileri ve veri kaynağı gizlilik düzeyleri gibi diğer önemli bilgiler de dahildir.
  2. Power Query, veri kaynağından hangi verilerin ayıklanması gerektiğini belirler ve veri kaynağına bir istek gönderir.
  3. Veri kaynağı, istenen verileri Power Query'ye aktararak Power Query'den gelen isteğe yanıt verir.
  4. Power Query, veri kaynağından gelen verileri alır ve gerekirse Power Query altyapısını kullanarak tüm dönüştürmeleri yapar.
  5. Önceki noktadan türetilen sonuçlar bir hedefe yüklenir.

Not

Bu örnekte veri kaynağı olarak SQL Veritabanı içeren bir sorgu gösterildiyse de, kavram veri kaynağı olan veya olmayan sorgular için geçerlidir.

Power Query M betiğinizi okuduğunda, sorgunuzu daha verimli bir şekilde değerlendirmek için bir iyileştirme işlemi aracılığıyla betiği çalıştırır. Bu işlemde, sorgunuzdan hangi adımların (dönüşümlerin) veri kaynağınıza yükleneceğini belirler. Ayrıca Power Query altyapısı kullanılarak hangi diğer adımların değerlendirilmesi gerektiğini de belirler. Bu iyileştirme işlemi, Power Query'nin sorgunuzun yürütmesini iyileştirmek için olası yürütmenin büyük bir kısmını veri kaynağına göndermeye çalıştığı sorguyu katlama olarak adlandırılır.

Önemli

Power Query M formül dilindeki (M dili olarak da bilinir) tüm kurallara uyulur. En önemlisi, gecikmeli değerlendirme iyileştirme sürecinde önemli bir rol oynar. Bu işlemde, Power Query sorgunuzdan belirli dönüşümlerin değerlendirilmesini anlayabilir. Power Query, sorgunuzun çıkışında gerekli olmadığından başka hangi dönüşümlerin değerlendirilmesinin gerekmediğini de anlar.

Ayrıca, birden çok kaynak söz konusu olduğunda, sorgu değerlendirilirken her veri kaynağının veri gizliliği düzeyi dikkate alınır. Daha fazla bilgi: Veri Gizliliği Güvenlik Duvarı'nın arka planı

Aşağıdaki diyagramda bu iyileştirme işleminde gerçekleşen adımlar gösterilmektedir.

İyileştirme işlemini açıklayan sorgu değerlendirme diyagramı.

  1. Gelişmiş düzenleyicide bulunan M betiği Power Query altyapısına gönderilir. Kimlik bilgileri ve veri kaynağı gizlilik düzeyleri gibi diğer önemli bilgiler de sağlanır.
  2. Sorgu katlama mekanizması, veri kaynağının özelliklerini, tablo şemalarını, veri kaynağındaki farklı tablolar arasındaki ilişkileri ve daha fazlasını belirlemek için veri kaynağına meta veri istekleri gönderir.
  3. Alınan meta verilere bağlı olarak, sorgu katlama mekanizması veri kaynağından ayıklanması gereken bilgileri ve Power Query altyapısında hangi dönüştürme kümesinin gerçekleşmesi gerektiğini belirler. Yönergeleri, veri kaynağından verileri alma ve gerekirse Power Query altyapısında gelen verileri dönüştürmeyle ilgilenen diğer iki bileşene gönderir.
  4. Yönergeler Power Query'nin iç bileşenleri tarafından alındıktan sonra, Power Query veri kaynağı sorgusu kullanarak veri kaynağına bir istek gönderir.
  5. Veri kaynağı isteği Power Query'den alır ve verileri Power Query altyapısına aktarır.
  6. Veriler Power Query'nin içine girdikten sonra, Power Query'nin içindeki dönüştürme altyapısı (karma altyapısı olarak da bilinir), geri katlanamayan veya veri kaynağına boşaltılamayan dönüştürmeleri yapar.
  7. Önceki noktadan türetilen sonuçlar bir hedefe yüklenir.

Not

M betiğinde kullanılan dönüşümlere ve veri kaynağına bağlı olarak, Power Query gelen verilerin akışının mı yoksa arabelleğinin mi olacağını belirler.

Sorguyu kaynağa döndürmeye genel bakış

Sorguyu kaynağa döndürmenin amacı, sorgunuzun dönüşümlerini hesaplayabilen bir veri kaynağına sorgu değerlendirmesinin büyük bir kısmını boşaltmak veya göndermektir.

Sorgu katlama mekanizması, M betiğinizi veri kaynağınız tarafından yorumlanabilecek ve yürütülebilecek bir dile çevirerek bu hedefe ulaşır. Ardından değerlendirmeyi veri kaynağınıza gönderir ve bu değerlendirmenin sonucunu Power Query'ye gönderir.

Bu işlem genellikle veri kaynağınızdan gerekli tüm verileri ayıklamaya ve Power Query altyapısında gerekli tüm dönüştürmeleri çalıştırmaya kıyasla çok daha hızlı bir sorgu yürütme sağlar.

Veri alma deneyimini kullandığınızda Power Query, veri kaynağınıza bağlanmanızı sağlayan işlemde size yol gösterir. Power Query bunu yaparken, M dilinde veri işlevlerine erişim olarak kategorilere ayrılmış bir dizi işlev kullanır. Bu belirli işlevler, veri kaynağınızın anlayabileceği bir dil kullanarak veri kaynağınıza bağlanmak için mekanizmalar ve protokoller kullanır.

Ancak sorgunuzda izleyebileceğiniz adımlar, sorguyu katlama mekanizmasının iyileştirmeye çalıştığı adımlar veya dönüşümlerdir. Ardından Power Query altyapısı kullanılarak işlenmek yerine veri kaynağınıza yüklenip boşaltılmadıklarını denetler.

Önemli

Genellikle sorgunun Kaynak adımı olarak gösterilen tüm veri kaynağı işlevleri, veri kaynağındaki verileri kendi yerel dilinde sorgular. Sorguyu kaynağa döndürme mekanizması, veri kaynağı işlevinizden sonra sorgunuza uygulanan tüm dönüşümlerde kullanılır, böylece bunlar tek bir veri kaynağı sorgusuna çevrilebilir ve birleştirilebilir veya veri kaynağına yüklenebilen çok sayıda dönüşüm olabilir.

Sorgunun nasıl yapılandırıldığına bağlı olarak, sorguyu katlama mekanizmasının üç olası sonucu olabilir:

  • Tam sorguyu kaynağa döndürme: Tüm sorgu dönüştürmeleriniz veri kaynağına geri gönderildiğinde ve Power Query altyapısında en az işlem gerçekleştiğinde.
  • Kısmi sorguyu kaynağa döndürme: Sorgunuzda yalnızca birkaç dönüştürme olduğunda ve tümünü değil, veri kaynağına geri gönderilebilir. Bu durumda, veri kaynağınızda dönüşümlerinizin yalnızca bir alt kümesi yapılır ve sorgu dönüşümlerinizin geri kalanı Power Query altyapısında gerçekleşir.
  • Sorguyu kaynağa döndürme yok: Sorgu, dönüştürmeler desteklenmediğinden veya bağlayıcı sorguyu kaynağa döndürmeyi desteklemediğinden veri kaynağınızın yerel sorgu diline çevrilemez dönüştürmeler içerdiğinde. Bu durumda Power Query, veri kaynağınızdan ham verileri alır ve Power Query altyapısı düzeyinde gerekli dönüştürmeleri işleyerek istediğiniz çıkışı elde etmek için Power Query altyapısını kullanır.

Not

Sorgu katlama mekanizması öncelikle Microsoft SQL Server ve OData Akışı gibi yapılandırılmış veri kaynakları için bağlayıcılarda kullanılabilir ancak bunlarla sınırlı değildir. İyileştirme aşamasında altyapı bazen sorgudaki adımları yeniden sıralayabilir.

Daha fazla işleme kaynağına sahip ve sorgu katlama özelliklerine sahip bir veri kaynağından yararlanılması, işlem Power Query altyapısında değil veri kaynağında gerçekleştirilirken sorgu yükleme sürelerinizi hızlandırabilir.

Sonraki adımlar

Sorgu katlama mekanizmasının üç olası sonucunun ayrıntılı örnekleri için Sorgu katlama örnekleri'ne gidin.

Uygulanan Adımlar bölmesinde bulunan sorgu katlama göstergeleri hakkında bilgi için Sorgu katlama göstergeleri'ne gidin