Kümeler arası join işleci

Kümeler arası sorgular hakkında genel bilgi için bkz. Kümeler arası veya veritabanı arası sorgular

Farklı kümelerde yer alan veri kümelerini birleştirme işlemi yapmak mümkündür. Örneğin:

T | ... | join (cluster("SomeCluster").database("SomeDB").T2 | ...) on Col1 // (1)

cluster("SomeCluster").database("SomeDB").T | ... | join (cluster("SomeCluster2").database("SomeDB2").T2 | ...) on Col1 // (2)

Yukarıdaki örnekte, geçerli kümenin "SomeCluster" veya "SomeCluster2" olmadığını varsayarak birleştirme işlemi, kümeler arası bir birleşimdir.

Aşağıdaki örnekte:

cluster("SomeCluster").database("SomeDB").T | ... | join (cluster("SomeCluster").database("SomeDB2").T2 | ...) on Col1 

her iki işlenen de aynı kümede kaynaklandığı için birleştirme işlemi, kümeler arası birleştirme değildir.

Kusto kümeler arası birleşimle karşılaştığında, birleştirme işlemi nerede yürütülecek otomatik olarak karar verir. Bu kararın olası üç sonucu olabilir:

  • Sol işlenenin kümesinde birleştirme işlemi yürütün, sağ işlenen önce bu küme tarafından getirülür. (örnekte birleştirme (1) yerel kümede yürütülür)
  • Birleştirmeyi sağ işlenenin kümesinde yürütün, sol işlenen ilk olarak bu küme tarafından getirir. (örnekte join (2) "SomeCluster2" üzerinde yürütülür)
  • Birleştirme işlemi yerel olarak yürütün (yani sorguyu alan kümede), her iki işlenen de önce yerel küme tarafından getirülür.

Asıl karar, belirli bir sorguya bağlıdır. Otomatik birleştirme uzaktan uzaktan yürütme stratejisi (basitleştirilmiş sürüm): "İşleçlerden biri yerel ise, birleştirme yerel olarak yürütülür. her iki işlenen de uzaksa, birleştirme doğru işlenenin kümesinde yürütülür".

Bazen otomatikmoting stratejisi izlenmese sorgunun performansı geliştirebilir. Bu durumda, en büyük işlenenin kümesinde birleştirme işlemi yürütün.

Örneğin (1)cluster("SomeCluster").database("SomeDB").T2 | ...tarafından üretilen veri kümesi tarafından üretilen veri kümesinden çok daha küçükse , "SomeCluster" üzerinde birleştirme işlemi yürütmek daha verimlidir.

Bu işlem Kusto'ya birleştirmeye yönelik bir yardım ipucu vererek yapılabilir. Söz dizimi aşağıdaki gibidir:

T | ... | join hint.remote=<strategy> (cluster("SomeCluster").database("SomeDB").T2 | ...) on Col1

Aşağıdakiler için yasal değerlerdir strategy

  • left - sol işlenenin kümesinde birleştirmeyi yürütün
  • right - doğru işlenenin kümesinde birleştirmeyi yürütme
  • local - geçerli kümenin kümesinde birleştirmeyi yürütme
  • auto - (varsayılan) Kusto'nun otomatik bağlantı kararı vermesine izin ver

Not

İpucuna neden olan strateji birleştirme işlemi için geçerli değilse birleştirme yakınlığı ipucu Kusto tarafından yoksayılır.

Bu özellik, bu özellik Azure İzleyici