Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Azure Stream Analytics çıkış bağlantılarıyla ilgili yaygın sorunlar ve bunların nasıl giderilir açıklanmaktadır. Ele alınan sorunlar arasında çıkış üretmeyen işler, gecikmeli ilk çıkış, geride kalan çıkış, Azure SQL Veritabanı anahtar ihlalleri ve SQL yeniden deneme davranışı yer alır. Birçok sorun giderme adımı, Stream Analytics işiniz için kaynak ve diğer tanılama günlüklerinin etkinleştirilmesini gerektirir. Kaynak günlükleriniz etkinleştirilmediyse bkz . Kaynak günlüklerini kullanarak Azure Stream Analytics sorunlarını giderme.
Görev çıktı üretmiyor
Her çıkış için Bağlantıyı Test Et düğmesini kullanarak çıkışlara bağlantıyı doğrulayın.
Azure portalıyla Stream Analytics işini izleme bölümüne, Monitor sekmesinde bakın. Değerler toplandığından ölçümlerde birkaç dakikalık gecikme olur.
- Giriş Olayları değeri sıfırdan büyükse, iş giriş verilerini okuyabilir. Giriş Olayları değeri sıfırdan büyük değilse, işin girişiyle ilgili bir sorun vardır. Daha fazla bilgi için Giriş bağlantılarında sorun giderme bölümüne bakın. İşinizde referans veri girişi varsa, Giriş Olayları metriğini incelerken mantıksal ada göre bölme uygulayın. Yalnızca başvuru verilerinizden hiçbir giriş olayı yoksa, bu büyük olasılıkla bu giriş kaynağının doğru başvuru veri kümesini getirmek için düzgün yapılandırılmamış olduğu anlamına gelir.
- Veri Dönüştürme Hataları değeri sıfırdan büyükse ve artıyorsa, veri dönüştürme hataları hakkında ayrıntılı bilgi için Azure Stream Analytics veri hataları bölümüne bakın.
- Çalışma Zamanı Hataları değeri sıfırdan büyükse, işiniz verileri alır ancak sorgu işlenirken hatalar oluşturur. Hataları bulmak için denetim günlüklerine gidin ve Başarısız durumunu filtreleyin.
-
Giriş Olayları değeri sıfırdan büyükse ve Çıkış Olayları değeri sıfıra eşitse, aşağıdaki deyimlerden biri doğrudur:
- Sorgu işleme sıfır çıkış olayıyla sonuçlandı.
- Olaylar veya alanlar hatalı biçimlendirilmiş olabilir ve sorgu işlemeden sonra sıfır çıkış elde edilir.
- İş, bağlantı veya kimlik doğrulaması nedeniyle çıkış havuzuna veri gönderemedi.
İşlem günlüğü iletileri, sorgu mantığının tüm olayları filtrelediği durumlar dışında neler olduğu da dahil olmak üzere ek ayrıntıları açıklar. Birden çok olayın işlenmesi hata oluşturursa, hatalar her 10 dakikada bir toplanır.
İlk çıkış gecikiyor
Stream Analytics işi başlatıldığında giriş olayları okunur. Ancak, belirli durumlarda çıkışta bir gecikme olabilir.
Zamansal sorgu öğelerindeki büyük zaman değerleri çıkış gecikmesine katkıda bulunabilir. Büyük zaman pencerelerinde doğru sonucu üretmek için akış görevi, zaman penceresini doldurmak amacıyla verileri mümkün olan en geç zamandan başlayarak okur. Veriler en fazla yedi gün eski olabilir. Bekleyen giriş olayları okunana kadar çıktı üretilmez. Sistem akış işlerini yükselttiğinde bu sorun ortaya çıkar. Yükseltme gerçekleştiğinde iş yeniden başlatılır. Bu tür yükseltmeler genellikle birkaç ayda bir gerçekleşir.
Stream Analytics sorgunuzu tasarlarken ihtiyatlı olun. İşin sorgu söz dizimindeki zamana bağlı öğeler için büyük bir zaman penceresi kullanırsanız, iş başladığında veya yeniden başlatıldığında ilk çıktıda gecikmeye neden olabilir. Yedi güne kadar birkaç saatten uzun bir süre, büyük bir zaman aralığı olarak kabul edilir.
Bu tür ilk çıkış gecikmesi için bir azaltma, verileri bölümleme gibi sorgu paralelleştirme tekniklerini kullanmaktır. İsterseniz, iş yetişene kadar aktarım hızını artırmak için daha fazla Akış Birimi ekleyebilirsiniz. Daha fazla bilgi için Stream Analytics işleri oluştururken dikkat edilmesi gerekenler konusuna bakın.
Bu faktörler ilk çıktının zamanlamasını etkiler:
Yuvarlanan, sıçramalı ve kayan pencerelerin GROUP BY yan tümcesi gibi pencereli toplamaların kullanımı:
- Yuvarlanan veya atlamalı pencere toplulaştırmaları için sonuçlar, pencere zaman aralığının sonunda oluşur.
- Kayan pencere için, bir olay kayan pencereye girdiğinde veya bu pencereden çıktığında sonuçlar ortaya çıkar.
- Örneğin bir saatten uzun gibi geniş bir pencere boyutu kullanmayı planlıyorsanız, atlamalı veya kayan bir pencere seçmeniz en iyisidir. Bu pencere türleri, çıkışı daha sık görmenize olanak verir.
DATEDIFF ile JOIN gibi zamansal birleşimlerin kullanımı:
- Eşleşen olayların her iki tarafı da gelir gelmez eşleşmeler oluşturulur.
- LEFT OUTER JOIN gibi eşleşmesi olmayan veriler, sol taraftaki her olay için DATEDIFF penceresinin sonunda oluşturulur.
LIMIT DURATION ile ISFIRST, LAST ve LAG gibi zamansal analiz işlevlerinin kullanımı:
- Analiz işlevleri için çıkış her olay için oluşturulur. Hiç gecikme yok.
Çıkış, artan gecikme süresiyle geride kalıyor
Bir işin normal çalışması sırasında, çıktı giderek daha uzun gecikme sürelerine sahip olabilir. Çıkış bu şekilde geride kalırsa, aşağıdaki faktörleri inceleyerek kök nedenleri saptayabilirsiniz:
- Aşağı akış alıcısının hızının sınırlanıp sınırlanmadığı
- Üst kaynağın kısıtlanıp kısıtlanmadığı
- Sorgudaki işleme mantığının yoğun işlem gücü kullanıp kullanmadığı
Çıktı ayrıntılarını görmek için Azure portalında akış işini seçin ve ardından İş diyagramı'nı seçin. Her girdi için, her bölümleme başına bir backlog olay metriği vardır. Ölçüm artmaya devam ederse sistem kaynaklarının kısıtlandığının göstergesidir. Artış büyük olasılıkla çıkış havuzu azaltma veya yüksek CPU kullanımından kaynaklanır. Daha fazla bilgi için bkz . İş diyagramını kullanarak veri temelli hata ayıklama.
Azure SQL Veritabanı çıkışıyla anahtar ihlali uyarısı
Bir Azure SQL veritabanını Stream Analytics işine çıkış olarak yapılandırdığınızda, kayıtları hedef tabloya toplu olarak ekler. Genel olarak, Azure Stream Analytics çıkış havuzuna en az bir kez teslim garantisi sağlar. Bir SQL tablosunda benzersiz bir kısıtlama tanımlandığında, bir SQL çıkışına tam olarak bir kez teslim sağlamaya devam edebilirsiniz.
SQL tablosunda benzersiz anahtar kısıtlamaları ayarladığınızda, Azure Stream Analytics yinelenen kayıtları kaldırır. Verileri toplu işlemlere böler ve tek bir yinelenen kayıt bulunana kadar toplu işlemleri yinelemeli olarak ekler. Bölme ve ekleme işlemi yinelenenleri tek tek yok sayar. Çok sayıda yinelenen satır içeren bir akış görevi için bu işlem verimsizdir ve zaman alır. Önceki saat için Etkinlik günlüğünüzde birden çok anahtar ihlali uyarı iletisi görürseniz, SQL çıkışınız işin tamamını yavaşlatıyor olabilir.
Bu sorunu çözmek için IGNORE_DUP_KEY seçeneğini etkinleştirerek anahtar ihlaline neden olan dizini yapılandırın. Bu seçenek, SQL'in toplu ekleme işlemleri sırasında yinelenen değerleri yok saymasını sağlar. Azure SQL Veritabanı yalnızca hata yerine bir uyarı iletisi oluşturur. Sonuç olarak, Azure Stream Analytics artık birincil anahtar ihlali hataları üretmez.
Birkaç dizin türü için IGNORE_DUP_KEY yapılandırırken aşağıdaki gözlemlere dikkat edin:
- ALTER INDEX kullanan bir birincil anahtar veya benzersiz kısıtlama için IGNORE_DUP_KEY ayarlayamazsınız. İndeksi silmeniz ve yeniden oluşturmanız gerekir.
- benzersiz bir dizin için ALTER INDEX kullanarak IGNORE_DUP_KEY ayarlayabilirsiniz. Bu, PRIMARY KEY/UNIQUE kısıtlamasından farklıdır ve CREATE INDEX veya INDEX tanımı kullanılarak oluşturulur.
- IGNORE_DUP_KEY seçeneği sütun deposu dizinlerine uygulanmaz, çünkü bunlar üzerinde benzersizliği zorunlu kılamazsınız.
Azure SQL Veritabanı çıkış yeniden deneme mantığı
SQL çıkışına sahip bir Stream Analytics işi ilk olay toplu işlemini aldığında aşağıdaki adımlar gerçekleşir:
- Görev, SQL'e bağlanmayı deniyor.
- İş, hedef tablonun şemasını getirir.
- İş, sütun adlarını ve türlerini hedef tablo şemasına göre doğrular.
- Görev, toplu işlemdeki çıktı kayıtlarından bellek içi bir veri tablosu hazırlar.
- İş, BulkCopy API'sini kullanarak veri tablosunu SQL'e yazar.
Bu adımlar sırasında SQL çıkışı aşağıdaki hata türleriyle karşılaşabilir:
Üstel geri çekilme stratejisiyle yeniden denenen geçici hatalar. En düşük yeniden deneme aralığı tek tek hata koduna bağlıdır, ancak aralıklar genellikle 60 saniyeden kısadır. Üst sınır en fazla beş dakika olabilir.
Oturum açma hataları ve güvenlik duvarı sorunları , önceki denemeden en az 5 dakika sonra yeniden denenip başarılı olana kadar yeniden deneniyor.
Atama hataları ve şema kısıtlaması ihlalleri gibi veri hataları çıkış hata ilkesiyle işlenir. Bu hatalar, hataya neden olan tek tek kayıt atlayarak veya yeniden deneyene kadar ikili bölünmüş toplu işlemleri yeniden denenerek işlenir. Birincil benzersiz anahtar kısıtının ihlali her zaman işlenir.
SQL hizmeti sorunları veya iç kod hataları olduğunda geçici olmayan hatalar oluşabilir. Örneğin, (Kod 1132) Elastik Havuz gibi hatalar depolama sınırına ulaştığında yeniden denemeler hatayı çözmez. Bu senaryolarda Stream Analytics işi düşüş yaşar.
BulkCopy5. Adımda zaman aşımları gerçekleşebilirBulkCopy.BulkCopybazen işlem zaman aşımlarıyla karşılaşabilir. Varsayılan yapılandırılan en düşük zaman aşımı beş dakikadır ve art arda basıldığında ikiye katlanır. Zaman aşımı 15 dakikanın üzerine çıktığında,BulkCopyiçin maksimum toplu iş boyutu ipucu, toplu iş başına 100 olay kalana kadar yarıya indirilir.Önemli
Ağa eklenmemiş ASA işleri için, ASA'dan gelen bağlantıların kaynak IP adresine hiçbir şekilde güvenmeyin. Bunlar, zaman zaman gerçekleşen hizmet altyapısı işlemlerine bağlı olarak genel veya özel IP'ler olabilir.
Azure Stream Analytics'te sütun adları küçük harftir (1,0)
Özgün uyumluluk düzeyini (1.0) kullanırken Azure Stream Analytics sütun adlarını küçük harfle değiştirir. Bu davranış daha sonraki uyumluluk düzeylerinde düzeltildi. Büyük/küçük harf durumunu korumak için uyumluluk düzeyi 1.1 veya sonraki bir sürüme geçin. Daha fazla bilgi için Stream Analytics işleri için uyumluluk düzeyi bölümüne bakın.
Yardım alın
Daha fazla yardım için Azure Stream Analytics için Microsoft Soru-Cevap soru sayfamızı deneyin.