Aracılığıyla paylaş


Azure Stream Analytics işlerinizden Azure SQL Veritabanı tablosuna yazma

Azure Stream Analytics, akış sorgunuzun çıktısı olarak Azure SQL Veritabanı'na destek sağlar. Bu makalede, Azure portalında Stream Analytics işiniz için çıkış olarak SQL Veritabanı'nın nasıl kullanılacağı açıklanmaktadır.

Önkoşullar

  1. Stream Analytics görevi oluşturun.

  2. Stream Analytics işinizin çıkış yazacağı bir Azure SQL Veritabanı oluşturun.

SQL Veritabanı'nda yeni bir tabloya yazma

Bu bölümde, azure SQL veritabanınızda henüz oluşturulmamış bir tabloya yazmak için işinizi nasıl yapılandırabileceğiniz açıklanmaktadır.

  1. Stream Analytics işinizde İş topolojisi altında Çıkışlar'ı seçin. Ekle'ye tıklayın ve SQL Veritabanı'nı seçin.

    Stream Analytics'te SQL DB çıkışını gösteren ekran görüntüsü.

  2. İşinizin sorgusunda kullanılacak bir çıkış takma ad seçin. Veritabanınızın adını ve kimlik doğrulama modunu belirtin. SQL çıkış yapılandırma seçenekleri hakkında daha fazla bilgi edinebilirsiniz.

  3. Azure SQL Veritabanınızda oluşturmak istediğiniz tablo adını girin. Kaydet'e tıklayın. Not: Bu çıkışın kaydedilmesi SQL Veritabanınızda tabloyu oluşturmaz. Sonraki adımlar, tablonun ne zaman oluşturulduğu hakkında daha fazla ayrıntı sağlar.

    Stream Analytics'te SQL DB çıkış yapılandırmasını gösteren ekran görüntüsü.

  4. İş Topolojisi'nin altında Sorgu'yu seçin ve çıktıyı, önceki adımda sağladığınız tabloya yazmak için sorguda takma adı kullanın. Sorgu mantığını test etmek ve iş tarafından oluşturulacak çıkışın şemasını gösteren Test sonuçlarını görüntülemek için Sorguyu test et'e tıklayın. Not: Sorgunuzu test etmek için giriş kaynağınızda gelen akış verilerine sahip olmanız veya test sorgusu için örnek verileri karşıya yüklemeniz gerekir. Test Stream Analytics sorgusu hakkında daha fazla bilgi edinebilirsiniz.

    Stream Analytics'te sorgu testlerini gösteren ekran görüntüsü.

    Stream Analytics'teki sorgu testleri sonuçlarını gösteren ekran görüntüsü.

  5. Sütun adını ve türünü görüntülemek için SQL tablo şeması'na tıklayın. Tablo oluştur'a tıklar ve tablonuz SQL veritabanında oluşturulur.

    Stream Analytics'ten SQL veritabanında tablo oluşturmayı gösteren ekran görüntüsü.

    Stream Analytics sorgunuz farklı bir şema oluşturacak şekilde değiştirildiyse SQL Veritabanınızda tablo tanımınızı değiştirmeniz gerekir. Bu, Stream Analytics işinin havuza yazmaya çalışırken veri dönüştürme hatalarıyla karşılaşmamasını sağlar.

  6. Sorgunuz tamamlandıktan sonra Genel Bakış'ı ve İşi başlat'ı seçin. Ardından akış sorgunuzun çıkışını görmek için SQL Veritabanı tablosuna gidebilirsiniz.

SQL Veritabanı'ndan var olan bir tabloyu seçme

Bu bölümde, işinizi Azure SQL Veritabanınızda zaten var olan bir tabloya yazacak şekilde nasıl yapılandırabileceğiniz açıklanmaktadır.

  1. Stream Analytics işinizde İş topolojisi altında Çıkışlar'ı seçin. Ekle'ye tıklayın ve SQL Veritabanı'nı seçin.

    Stream Analytics'te SQL DB çıkışını gösteren ekran görüntüsü.

  2. İşinizin sorgusunda kullanılmak üzere bir çıkış takma adı seçin. Veritabanınızın adını ve kimlik doğrulama modunu belirtin. SQL çıkış yapılandırma seçenekleri hakkında daha fazla bilgi edinebilirsiniz.

  3. SQL Kimlik Doğrulaması ayrıntılarınızı girerek seçili SQL Veritabanından var olan bir tabloyu seçebilirsiniz. Bu işlem Veritabanınızdan tablo adlarının listesini yükler. Listeden tablo adını seçin veya tablo adını ve Kaydet'i el ile girin.

    SQL veritabanında var olan tabloyu gösteren ekran görüntüsü.

  4. İş Topolojisi'nin altında Sorgu'yu seçin ve çıktıyı seçili tabloya yazmak için sorgunuzdaki diğer adı kullanın. Sorgu mantığını test etmek ve Test sonuçlarını görüntülemek için Sorguyu test et'e tıklayın. Not: Sorgunuzu test etmek için Event Hub/IoT Hub'da gelen akış verileriniz olmalıdır veya sorguyu test etmek için örnek verileri karşıya yükleyebilirsiniz. Test Stream Analytics sorgusu hakkında daha fazla bilgi edinebilirsiniz.

    Stream Analytics'te sorgu testlerini gösteren ekran görüntüsü.

    Stream Analytics'teki sorgu testleri sonuçlarını gösteren ekran görüntüsü.

  5. SQL tablosu şema sekmesinde, gelen verilerden ve seçili tablodan sütun adını ve türünü görebilirsiniz. Gelen veri türünün ve seçili SQL tablosunun eşleşip eşleşmediğini görebilirsiniz. Eşleşme değilse sorgunuzu tablo şemasıyla eşleşecek şekilde güncelleştirmeniz istenir.

    Stream Analytics'te şema karşılaştırmayı gösteren ekran görüntüsü.

  6. Sorgunuz tamamlandıktan sonra Genel Bakış'ı ve İşi başlat'ı seçin. Ardından akış sorgunuzun çıkışını görmek için SQL Veritabanı tablosuna gidebilirsiniz.

Yaygın veri türü uyuşmazlığı nedenleri

Stream Analytics işinizin çıktısının SQL Veritabanı tablonuzda beklenen sütun adları ve veri türleriyle eşleştiğinden emin olmak önemlidir. Bir uyuşmazlık varsa, işiniz veri dönüştürme hatalarıyla karşılaşır ve SQL tablo tanımı değiştirilene kadar sürekli olarak yeniden dener. Veri dönüştürme hatalarına neden olan çıkışı iptal etmek ve bir sonrakine devam etmek için işinizin davranışını değiştirebilirsiniz. En yaygın şema uyuşmazlığı nedenleri aşağıda açıklanmıştır.

  • Tür uyuşmazlığı: Sorgu ve hedef türler uyumlu değil. Satırlar hedefe eklenmez. Sorgudaki türleri hizalamak için TRY_CAST() gibi bir dönüştürme işlevi kullanın. Alternatif seçenek, SQL veritabanınızdaki hedef tabloyu değiştirmektir.
  • Aralık: Hedef tür aralığı, sorguda kullanılandan çok daha küçüktür. Aralık dışı değerleri olan satırlar hedef tabloya eklenemez veya kesilebilir. Hedef sütunu daha büyük bir tür yelpazesine değiştirmeyi değerlendirin.
  • Örtük: Sorgu ve hedef türleri farklıdır ancak uyumludur. Veriler örtük olarak dönüştürülür, ancak bu veri kaybına veya hatalara neden olabilir. Sorgudaki türleri hizalamak veya hedef tabloyu değiştirmek için TRY_CAST() gibi bir dönüştürme işlevi kullanın.
  • Kayıt: Bu tür henüz bu çıktı için desteklenmiyor. Değerin yerini 'record' dizesi alır. Verileri ayrıştırmayı veya dizeye dönüştürmek için bir UDF kullanmayı göz önünde bulundurun.
  • Dizi: Bu tür henüz Azure SQL Veritabanı'nda yerel olarak desteklenmemektedir. Değerin yerini 'record' dizesi alır. Verileri ayrıştırmayı veya dizeye dönüştürmek için bir UDF kullanmayı göz önünde bulundurun.
  • Hedef tabloda sütun eksik: Bu sütun hedef tabloda eksik. Veriler eklenmez. Gerekirse bu sütunu hedef tablonuza ekleyin.

Sonraki adımlar