Giriş bağlantısı sorunlarını giderme

Bu makalede Azure Stream Analytics giriş bağlantılarıyla ilgili yaygın sorunlar, giriş sorunlarının nasıl giderileceği ve sorunların nasıl giderileceği açıklanmaktadır. Birçok sorun giderme adımı Stream Analytics işiniz için kaynak günlüklerinin etkinleştirilmesini gerektirir. Kaynak günlüklerinizi etkinleştirmediyseniz, bkz. Azure Stream Analytics sorun giderme kaynak günlüklerini kullanarak.

İş tarafından alınmayan giriş olayları

  1. Giriş ve çıkış bağlantınızı test edin. Her giriş ve çıkış için Bağlantıyı Sına düğmesini kullanarak giriş ve çıkışlarla bağlantıyı doğrulayın.

  2. Giriş verilerinizi inceleyin.

    1. Her giriş için örnek veri düğmesini kullanın. Giriş örnek verilerini indirin.

    2. Şema ve veri türlerinianlamak için örnek verileri inceleyin.

    3. Olayların gönderildiğinden emin olmak için Olay Hub 'ı ölçümlerini denetleyin. Event Hubs ileti alıyorsanız, ileti ölçümleri sıfırdan büyük olmalıdır.

  3. Giriş önizlemede bir zaman aralığı seçtiğinizden emin olun. Zaman aralığını Seç' i seçin ve ardından sorgunuzu test etmeden önce bir örnek süre girin.

Yanlış biçimlendirilmiş giriş olayları seri durumundan çıkarma hatalarına neden oluyor

Seri kaldırma sorunları, Stream Analytics işinizin giriş akışı hatalı biçimlendirilmiş iletiler içerdiğinde oluşur. Örneğin, hatalı biçimlendirilmiş bir ileti bir JSON nesnesinde eksik parantez veya küme ayracı ya da zaman alanında yanlış bir zaman damgası biçiminde olabilir.

Bir Stream Analytics işi girişten hatalı biçimlendirilmiş bir ileti aldığında, iletiyi bırakır ve bir uyarı verir. Stream Analytics işinizin giriş kutucuğunda bir uyarı simgesi gösterilir. İş çalışır durumda olduğu sürece aşağıdaki uyarı simgesi mevcuttur:

Azure Stream Analytics giriş kutucuğu

Hatanın ayrıntılarını ve hataya neden olan iletiyi (yükü) görüntülemek için kaynak günlüklerini etkinleştirin. Seri durumdan çıkarma hatalarının gerçekleşebileceği birden çok neden vardır. Belirli seri kaldırma hatalarıyla ilgili daha fazla bilgi için bkz. giriş verileri hataları. Kaynak günlükleri etkinleştirilmemişse, Azure portal kısa bir bildirim kullanıma sunulacaktır.

Giriş ayrıntıları uyarı bildirimi

İleti yükünün 32 KB 'den büyük veya ikili biçimde olduğu durumlarda, GitHub örnekleri deposundabulunan CheckMalformedEvents. cs kodunu çalıştırın. Bu kod, bölüm KIMLIĞINI, kaydırmayı okur ve bu uzaklığa ait olan verileri yazdırır.

İş, en yüksek Olay Hub 'ı alıcılarını aşıyor

Event Hubs kullanmak için en iyi yöntem, iş ölçeklenebilirliği için birden çok tüketici grubu kullanmaktır. Belirli bir giriş için Stream Analytics işteki okuyucu sayısı, tek bir tüketici grubundaki okuyucu sayısını etkiler. Tam alıcı sayısı, genişleme topolojisi mantığının iç uygulama ayrıntılarına dayanır ve dışarıdan gösterilmez. Bir iş başlatıldığında veya iş yükseltmeleri sırasında okuyucu sayısı değişebilir.

Alıcı sayısı üst sınırı aştığında aşağıdaki hata iletileri gösterilir. Hata iletisi, bir tüketici grubu altında Olay Hub 'ına yapılan mevcut bağlantıların bir listesini içerir. Etiket, AzureStreamAnalytics bağlantıların Azure Streaming Service 'ten olduğunu gösterir.

The streaming job failed: Stream Analytics job has validation errors: Job will exceed the maximum amount of Event Hub Receivers.

The following information may be helpful in identifying the connected receivers: Exceeded the maximum number of allowed receivers per partition in a consumer group which is 5. List of connected receivers – 
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1, 
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1, 
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1, 
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1, 
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1.

Not

Bir iş yükseltmesi sırasında okuyucu sayısı değiştiğinde, denetim günlüklerine geçici uyarılar yazılır. Stream Analytics işleri bu geçici sorunlardan otomatik olarak kurtarılır.

Event Hubs bir tüketici grubu ekleyin

Event Hubs örneğinize yeni bir tüketici grubu eklemek için aşağıdaki adımları izleyin:

  1. Azure portalında oturum açın.

  2. Olay Hub 'ınızı bulun.

  3. Varlıklar başlığı altında Event Hubs ' yi seçin.

  4. Olay Hub 'ını ada göre seçin.

  5. Event Hubs örneği sayfasında, varlıklar başlığı altında tüketici grupları' nı seçin. $Default adlı bir tüketici grubu listelenir.

  6. Yeni bir tüketici grubu eklemek için + Tüketici grubu ' nu seçin.

    Event Hubs bir tüketici grubu ekleyin

  7. Olay Hub 'ını işaret etmek için Stream Analytics işinde girişi oluşturduğunuzda, burada tüketici grubunu belirttiniz. $Default , hiçbiri belirtilmediğinde kullanılır. Yeni bir tüketici grubu oluşturduktan sonra, Stream Analytics işinde Olay Hub 'ı girişini düzenleyin ve yeni tüketici grubunun adını belirtin.

Bölüm başına okuyucu Event Hubs sınırı aşıyor

Akış sorgusu sözdiziminiz aynı giriş olayı hub kaynağına birden çok kez başvuruyorsa, iş altyapısı aynı tüketici grubundan sorgu başına birden çok okuyucu kullanabilir. Aynı tüketici grubuna çok fazla başvuru olduğunda, iş, beş sınırını aşabilir ve bir hata oluşturdu. Bu durumlarda, aşağıdaki bölümde açıklanan çözümü kullanarak birden çok tüketici grubunda birden çok giriş kullanarak daha fazla giriş yapabilirsiniz.

Bölüm başına okuyucu sayısının beş Event Hubs sınırını aşması gereken senaryolar şunlardır:

  • Çoklu SELECT deyimleri: aynı Olay Hub 'ına başvuran bırden çok select deyimi kullanıyorsanız, her SELECT deyimi yeni bir alıcının oluşturulmasına neden olur.

  • BIRLEŞIM: bir BIRLEŞIM kullandığınızda, aynı Olay Hub 'ına ve tüketici grubuna başvuran birden çok giriş olması mümkündür.

  • Kendi kendine JOIN: bir kendi kendine JOIN işlemi kullandığınızda, aynı Olay Hub 'ına birden çok kez başvurmak mümkündür.

Aşağıdaki en iyi yöntemler, bölüm başına okuyucu sayısının beş Event Hubs sınırını aştığı senaryolara karşı azaltmaya yardımcı olabilir.

WıTH yan tümcesini kullanarak sorgunuzu birden çok adıma bölme

WıTH yan tümcesi, sorgudaki FROM yan tümcesi tarafından başvurulabilen geçici bir adlandırılmış sonuç kümesini belirtir. WıTH yan tümcesini tek bir SELECT ifadesinin yürütme kapsamında tanımlarsınız.

Örneğin, bu sorgu yerine:

SELECT foo 
INTO output1
FROM inputEventHub

SELECT bar
INTO output2
FROM inputEventHub 
…

Bu sorguyu kullanın:

WITH data AS (
   SELECT * FROM inputEventHub
)

SELECT foo
INTO output1
FROM data

SELECT bar
INTO output2
FROM data
…

Girişlerin farklı tüketici gruplarına bağlı olduğundan emin olun

Üç veya daha fazla girişin aynı Event Hubs tüketici grubuna bağlandığı sorgular için, ayrı tüketici grupları oluşturun. Bu, ek Stream Analytics girişlerinin oluşturulmasını gerektirir.

Farklı tüketici gruplarıyla ayrı girişler oluşturun

Aynı Olay Hub 'ı için farklı tüketici gruplarıyla ayrı girişler oluşturabilirsiniz. Aşağıdaki BIRLEŞIM sorgusu, ınputone ve ınputtwo 'in aynı Olay Hub kaynağına başvurduğu bir örnektir. Herhangi bir sorgunun farklı tüketici gruplarıyla ayrı girdileri olabilir. BIRLEŞIM sorgusu yalnızca bir örnektir.

WITH 
DataOne AS 
(
SELECT * FROM InputOne 
),

DataTwo AS 
(
SELECT * FROM InputTwo 
),

SELECT foo FROM DataOne
UNION 
SELECT foo FROM DataTwo

Bölüm başına okuyucu IoT Hub sınırı aşıyor

Stream Analytics işler, IoT Hub olayları bağlamak ve okumak için IoT Hub yerleşik Olay Hub 'ı ile uyumlu uç noktasını kullanır. Bölüm başına okuma, IoT Hub sınırlarını aşarsa, bu sorunu çözmek için Olay Hub 'ı çözümlerini kullanabilirsiniz. Yerleşik uç nokta için IoT Hub Portal uç noktası oturumunda veya IoT Hub SDKaracılığıyla bir tüketici grubu oluşturabilirsiniz.

Yardım alın

Daha fazla yardım için, Azure Stream Analytics Için Microsoft Q&soru sayfasınıdeneyin.

Sonraki adımlar