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.
Stream Analytics, Dört tür kaynaktan giriş olarak Azure veri akışlarıyla birinci sınıf tümleştirmeye sahiptir:
Bu giriş kaynakları Stream Analytics işinizle aynı Azure aboneliğinde veya farklı bir abonelikte bulunabilir.
Sıkıştırma
Stream Analytics tüm giriş kaynakları için sıkıştırmayı destekler. Desteklenen sıkıştırma türleri şunlardır: None, Gzip ve Deflate. Sıkıştırma desteği başvuru verileri için kullanılamaz. Giriş verileri sıkıştırılmış Avro verileriyse Stream Analytics bunu saydam bir şekilde işler. Sıkıştırma türünü Avro serileştirme ile belirtmeniz gerekmez.
Giriş oluşturma, düzenleme veya test
Akış işinizde mevcut girişleri eklemek ve görüntülemek veya düzenlemek için Azure portalını, Visual Studio'yu ve Visual Studio Code'ı kullanabilirsiniz. Ayrıca Azure portalı, Visual Studio ve Visual StudioCode'dan giriş bağlantılarını test edebilir ve örnek verilerden sorguları test edebilirsiniz. Sorgu yazdığınızda, FROM yan tümcesindeki girişi listelersiniz. Kullanılabilir girişlerin listesini portaldaki Sorgu sayfasından alabilirsiniz. Birden çok giriş kullanmak istiyorsanız, JOIN veya birden çok SELECT sorgu yazabilirsiniz.
Uyarı
En iyi yerel geliştirme deneyimi için Visual Studio Code için Stream Analytics araçlarını kullanmanızı kesinlikle öneririz. Visual Studio 2019 (sürüm 2.6.3000.0) için Stream Analytics araçlarında bilinen özellik boşlukları vardır ve bundan sonra geliştirilmeyecektir.
Event Hubs'dan veri akışı
Azure Event Hubs, yüksek oranda ölçeklenebilir bir yayınlama-abonelik olay toplama hizmetidir. Bir olay hub'ı saniyede milyonlarca olay toplayabilir, böylece bağlı cihazlarınız ve uygulamalarınız tarafından üretilen büyük miktarda veriyi işleyip analiz edebilirsiniz. Event Hubs ve Stream Analytics birlikte gerçek zamanlı analiz için uçtan uca bir çözüm sağlayabilir. Event Hubs, olayları Azure'a gerçek zamanlı olarak aktarmanıza olanak tanır ve Stream Analytics işleri bu olayları gerçek zamanlı olarak işleyebilir. Örneğin, Event Hubs'a web tıklamaları, algılayıcı okumaları veya çevrimiçi günlük olayları gönderebilirsiniz. Ardından gerçek zamanlı filtreleme, toplama ve bağıntı için giriş verileri için Event Hubs'ı kullanmak üzere Stream Analytics işleri oluşturabilirsiniz.
EventEnqueuedUtcTime bir olayın olay hub'ına gelişinin zaman damgasıdır ve Event Hubs'tan Stream Analytics'e gelen olayların varsayılan zaman damgasıdır. Olay yükünde bir zaman damgası kullanarak verileri akış olarak işlemek için TIMESTAMP BY anahtar sözcüğünü kullanmanız gerekir.
Event Hubs Tüketici grupları
Her "etkinlik merkezi" girişini, kendi tüketici grubuna sahip olacak şekilde yapılandırmanız gerekir. Bir iş kendi kendine birleşim işlemi içerdiğinde veya birden çok girişe sahip olduğunda, bazı girişler sonraki aşamada birden fazla okuyucu tarafından okunabilir. Bu durum, tek bir tüketici grubundaki okuyucu sayısını etkiler. Event Hubs'ın bölüm başına tüketici grubu başına beş okuyucu sınırını aşmasını önlemek için, her Stream Analytics işi için bir tüketici grubu atamanız en iyi yöntemdir. Standart katman olay hub'ı için 20 tüketici grubu sınırı da vardır. Daha fazla bilgi için bkz. Azure Stream Analytics girişlerinde sorun giderme.
Event Hubs'dan giriş oluşturma
Aşağıdaki tabloda, bir olay hub'ından veri girişi akışı yapmak için Azure portalındaki Yeni giriş sayfasındaki her özellik açıklanmaktadır:
| Mülkiyet | Açıklama |
|---|---|
| Giriş takma adı | İşin sorgusunda bu girdiye referans vermek için kullandığınız anlamlı bir ad. |
| Abonelik | Olay hub'ı kaynağının bulunduğu Azure aboneliğini seçin. |
| Event Hub ad alanı | Event Hubs ad alanı, olay hub'ları için bir kapsayıcıdır. Bir olay hub'ı oluşturduğunuzda, ad alanını da oluşturursunuz. |
| Olay Hub'ı adı | Girdi olarak kullanılacak Event Hub'ın adı. |
| Event Hub tüketici grubu (önerilir) | Her Stream Analytics işi için ayrı bir tüketici grubu kullanmanızı öneririz. Bu dize, olay hub'ından veri almak için kullanılacak tüketici grubunu tanımlar. Hiçbir tüketici grubu belirtilmezse, Stream Analytics işi $Default tüketici grubunu kullanır. |
| Kimlik doğrulama modu | Olay hub'ına bağlanmak için kullanmak istediğiniz kimlik doğrulamasının türünü belirtin. Olay hub'ı ile kimlik doğrulaması yapmak için bir bağlantı dizesi veya yönetilen kimlik kullanabilirsiniz. Yönetilen kimlik alternatifi için, Stream Analytics işine sistem tarafından atanan bir yönetilen kimlik veya olay hub'ı ile kimlik doğrulaması için kullanıcı tarafından atanan bir yönetilen kimlik oluşturabilirsiniz. Yönetilen kimlik kullandığınızda, yönetilen kimliğin Azure Event Hubs Veri Alıcısı veya Azure Event Hubs Veri Sahibi rollerinin üyesi olması gerekir. |
| Event Hub ilke adı | Event Hubs'a erişim sağlayan paylaşılan erişim ilkesi. Her paylaşılan erişim ilkesinin bir adı, ayarladığınız izinleri ve erişim anahtarları vardır. Event Hubs ayarlarını el ile sağlama seçeneğini belirlemediğiniz sürece bu seçenek otomatik olarak doldurulur. |
| Bölüm anahtarı | Bu, yalnızca işiniz uyumluluk düzeyi 1.2 veya üzerini kullanacak şekilde yapılandırılmışsa kullanılabilen isteğe bağlı bir alandır. Girişiniz bir özellik tarafından bölümlenmişse, bu özelliğin adını buraya ekleyebilirsiniz. Bu özellik üzerinde bir PARTITION BY veya GROUP BY yan tümcesi içeriyorsa sorgunuzun performansını geliştirmek için kullanılır. Bu iş uyumluluk düzeyi 1.2 veya üzerini kullanıyorsa, bu alan varsayılan olarak PartitionId. |
| Olay serileştirme biçimi | Gelen veri akışının serileştirme biçimi (JSON, CSV, Avro). JSON biçiminin belirtimle uyumlu olduğundan ve ondalık sayılar için baştaki 0'ı içermediğinden emin olun. |
| Kodlama | UTF-8 şu anda desteklenen tek kodlama biçimidir. |
| Olay sıkıştırma türü | Gelen veri akışını okumak için kullanılan sıkıştırma türü: hiçbiri (varsayılan), gzip veya deflate gibi. |
| Şema kayıt defteri | Olay hub'ından alınan olay verileri için şemalar içeren şema kayıt defterini seçebilirsiniz. |
Verileriniz bir Event Hubs akış girişinden geldiğinde Stream Analytics sorgunuzda aşağıdaki meta veri alanlarına erişebilirsiniz:
| Mülkiyet | Açıklama |
|---|---|
| EventProcessedUtcTime | Stream Analytics'in olayı işlediği tarih ve saat. |
| EventEnqueuedUtcTime | Event Hubs'ın olayları aldığı tarih ve saat. |
| PartitionId | Giriş bağdaştırıcısı için sıfır tabanlı bölüm kimliği. |
Örneğin, bu alanları kullanarak aşağıdaki örneğe benzer bir sorgu yazabilirsiniz:
SELECT
EventProcessedUtcTime,
EventEnqueuedUtcTime,
PartitionId
FROM Input
Uyarı
Event Hubs'ı IoT Hub Yolları için uç nokta olarak kullanırken , GetMetadataPropertyValue işlevini kullanarak IoT Hub meta verilerine erişebilirsiniz.
IoT Hub'dan veri akışı
Azure IoT Hub, IoT senaryoları için iyileştirilmiş yüksek oranda ölçeklenebilir bir yayınlama-abonelik olay alma sistemidir.
Stream Analytics'teki bir IoT Hub'dan gelen olayların varsayılan zaman damgası, olayın EventEnqueuedUtcTimeIoT Hub'ına ulaştığı zaman damgasıdır. Olay yükünde bir zaman damgası kullanarak verileri akış olarak işlemek için TIMESTAMP BY anahtar sözcüğünü kullanmanız gerekir.
IoT Hub Tüketici grupları
Her Stream Analytics IoT Hub girişini kendi tüketici grubuna sahip olacak şekilde yapılandırmanız gerekir. Bir iş kendi kendine birleşim içerdiğinde veya birden çok girişi olduğunda, bazı girişler alt kademedeki birden fazla okuyucu tarafından okunabilir. Bu durum, tek bir tüketici grubundaki okuyucu sayısını etkiler. Bölüm başına tüketici grubu başına beş okuyucu olan Azure IoT Hub sınırının aşılmasını önlemek için, her Stream Analytics işi için bir tüketici grubu seçmek en iyi yöntemdir.
IoT Hub'ı veri akışı girişi olarak yapılandırma
Aşağıdaki tabloda, bir IoT Hub'ı akış girişi olarak yapılandırdığınızda Azure portalındaki Yeni giriş sayfasındaki her özellik açıklanmaktadır.
| Mülkiyet | Açıklama |
|---|---|
| Giriş takma adı | İşin sorgusunda bu girdiye referans vermek için kullandığınız anlamlı bir ad. |
| Abonelik | IoT Hub kaynağının bulunduğu aboneliği seçin. |
| IoT Hub | Giriş olarak kullanılacak IoT Hub'ın adı. |
| Tüketici grubu | Her Stream Analytics işi için farklı bir tüketici grubu kullanmanızı öneririz. Tüketici grubu IoT Hub'dan veri almak için kullanılır. Stream Analytics, aksini belirtmediğiniz sürece $Default tüketici grubunu kullanır. |
| Paylaşılan erişim ilkesi adı | IoT Hub'a erişim sağlayan paylaşılan erişim ilkesi. Her paylaşılan erişim ilkesinin bir adı, ayarladığınız izinleri ve erişim anahtarları vardır. |
| Paylaşılan erişim ilkesi anahtarı | IoT Hub'a erişimi yetkilendirmek için kullanılan paylaşılan erişim anahtarı. IoT Hub ayarlarını el ile sağlama seçeneğini belirlemediğiniz sürece bu seçenek içinde otomatik olarak doldurulur. |
| Bitiş noktası | IoT Hub için uç nokta. |
| Bölüm anahtarı | Bu, yalnızca işiniz uyumluluk düzeyi 1.2 veya üzerini kullanacak şekilde yapılandırılmışsa kullanılabilen isteğe bağlı bir alandır. Girişiniz bir özellik tarafından bölümlenmişse, bu özelliğin adını buraya ekleyebilirsiniz. Bu özellikte PARTITION BY veya GROUP BY yan tümcesi içeriyorsa sorgunuzun performansını geliştirmek için kullanılır. Bu iş uyumluluk düzeyi 1.2 veya üzerini kullanıyorsa, bu alan varsayılan olarak "PartitionId" olarak adlandırılır. |
| Olay serileştirme biçimi | Gelen veri akışının serileştirme biçimi (JSON, CSV, Avro). JSON biçiminin belirtimle uyumlu olduğundan ve ondalık sayılar için baştaki 0'ı içermediğinden emin olun. |
| Kodlama | UTF-8 şu anda desteklenen tek kodlama biçimidir. |
| Olay sıkıştırma türü | Gelen veri akışını okumak için kullanılan sıkıştırma türü: hiçbiri (varsayılan), gzip veya deflate gibi. |
IoT Hub'dan akış verileri kullandığınızda, Stream Analytics sorgunuzda aşağıdaki meta veri alanlarına erişebilirsiniz:
| Mülkiyet | Açıklama |
|---|---|
| EventProcessedUtcTime | Olayın işlendiği tarih ve saat. |
| EventEnqueuedUtcTime | IoT Hub'ın olayı aldığı tarih ve saat. |
| PartitionId | Giriş bağdaştırıcısı için sıfır tabanlı bölüm kimliği. |
| IoTHub.MessageId | IoT Hub'da iki yönlü iletişimi ilişkilendirmek için kullanılan kimlik. |
| IoTHub.CorrelationId | IoT Hub'daki ileti yanıtlarında ve geri bildirimlerinde kullanılan bir kimlik. |
| IoTHub.ConnectionDeviceId | Bu iletiyi göndermek için kullanılan kimlik doğrulama kimliği. Bu değer, IoT Hub tarafından hizmete bağlı iletilere damgalanır. |
| IoTHub.ConnectionDeviceGenerationId | Kimliği doğrulanmış cihazın, bu mesajı göndermek için kullanılan nesil kimliği. Bu değer, IoT Hub tarafından servise bağlı iletilere damgalanır. |
| IoTHub.EnqueuedTime | IoT Hub'ın iletiyi aldığı zaman. |
Blob depolama veya Data Lake Storage Gen2'den veri akışı sağla
Bulutta depolanabilen büyük miktarlarda yapılandırılmamış veri içeren senaryolar için Azure Blob depolama veya Azure Data Lake Storage 2. Nesil uygun maliyetli ve ölçeklenebilir bir çözüm sunar. Blob depolama veya Azure Data Lake Storage Gen2'deki veriler dinamik olmayan veriler olarak kabul edilir. Ancak bu veriler Stream Analytics tarafından veri akışı olarak işlenebilir.
Log işleme, Stream Analytics'te bu tür verileri kullanmak için yaygın olarak kullanılan bir senaryodur. Bu senaryoda, telemetri veri dosyaları bir sistemden yakalanır ve anlamlı verileri ayıklamak için ayrıştırılıp işlenmesi gerekir.
Stream Analytics'te bir Blob depolama veya Azure Data Lake Storage Gen2 olayının varsayılan zaman damgası, (en son değiştirildiği zaman damgası olan) BlobLastModifiedUtcTime'dir. Bir blob saat 13:00'te bir depolama hesabına yüklenirse ve Azure Stream Analytics işi Şimdi 13:01 seçeneği kullanılarak başlatılırsa, değiştirme süresi iş çalışma süresinin dışında olduğundan alınmaz.
Bir blob saat 13:00'te bir depolama hesabı kapsayıcısına yüklenirse ve Azure Stream Analytics işi Özel Saat kullanılarak saat 13:00 veya daha önceki bir saatte başlatılırsa, değiştirme zamanı iş çalışma döneminin içinde olduğu için blob alınır.
Azure Stream Analytics işi Şimdi kullanılarak saat 13:00'te başlatılırsa ve 13:01'de depolama hesabı kapsayıcısına bir blob yüklenirse, Azure Stream Analytics blobu alır. Her bloba atanan saat damgası yalnızca BlobLastModifiedTime temel alınarak yapılır. Blob'un içinde yer aldığı klasörün atanan zaman damgasıyla hiçbir ilişkisi yoktur. Örneğin, 2019/10-01/00/b1.txtBlobLastModifiedTime2019-11-11 içeren bir blob varsa, bu blob için atanan zaman damgası 2019-11-11 olur.
Olay yükünde bir zaman damgası kullanarak verileri akış olarak işlemek için TIMESTAMP BY anahtar sözcüğünü kullanmanız gerekir. Stream Analytics görevi, blob dosyası mevcutsa her saniye Azure Blob Depolama veya Azure Data Lake Storage Gen2 girişinden veri çeker. Blob dosyası kullanılamıyorsa, en fazla 90 saniye gecikme süresine sahip üstel geri alma olur.
Uyarı
Stream Analytics, mevcut blob dosyasına içerik eklemeyi desteklemez. Stream Analytics her dosyayı yalnızca bir kez görüntüler ve iş verileri okuduktan sonra dosyada gerçekleşen değişiklikler işlenmez. En iyi yöntem, bir blob dosyasının tüm verilerini aynı anda karşıya yüklemek ve ardından farklı, yeni bir blob dosyasına daha yeni olaylar eklemektir.
Birçok blobun sürekli eklendiği ve Stream Analytics'in eklendikçe blobları işlediği senaryolarda, bazı blobların ayrıntı BlobLastModifiedTimedüzeyi nedeniyle nadir durumlarda atlanması mümkündür. Blobları birbirinden en az iki saniye ayırarak bu durumu azaltabilirsiniz. Bu seçenek uygun değilse, büyük hacimli olayların akışını yapmak için Event Hubs'ı kullanabilirsiniz.
Blob depolamayı akış girişi olarak yapılandırma
Aşağıdaki tabloda, Blob depolamayı akış girişi olarak yapılandırdığınızda Azure portalındaki Yeni giriş sayfasındaki her özellik açıklanmaktadır.
| Mülkiyet | Açıklama |
|---|---|
| Giriş takma adı | İşin sorgusunda bu girdiye referans vermek için kullandığınız anlamlı bir ad. |
| Abonelik | Depolama kaynağının bulunduğu aboneliği seçin. |
| Depolama hesabı | Blob dosyalarının bulunduğu depolama hesabının adı. |
| Depolama hesabı anahtarı | Depolama hesabıyla ilişkili gizli anahtar. Ayarları el ile sağlama seçeneğini belirlemediğiniz sürece bu seçenek otomatik olarak doldurulur. |
| Kapsayıcı | Kapsayıcılar bloblar için mantıksal bir gruplandırma sağlar. Yeni bir kapsayıcı oluşturmak için Mevcut kapsayıcıyı kullan'ı veya Yeni oluştur'u seçebilirsiniz. |
| Kimlik doğrulama modu | Depolama hesabına bağlanmak için kullanmak istediğiniz kimlik doğrulamasının türünü belirtin. Depolama hesabıyla kimlik doğrulaması yapmak için bir bağlantı dizesi veya yönetilen kimlik kullanabilirsiniz. Yönetilen kimlik seçeneği için Stream Analytics işine sistem tarafından atanan bir yönetilen kimlik veya depolama hesabıyla kimlik doğrulaması yapmak için kullanıcı tarafından atanan yönetilen kimlik oluşturabilirsiniz. Yönetilen kimlik kullandığınızda, yönetilen kimlik depolama hesabında uygun bir rolün üyesi olmalıdır. |
| Yol deseni (isteğe bağlı) | Belirtilen kapsayıcı içindeki blobları bulmak için kullanılan dosya yolu. Kapsayıcının kökünden blobları okumak istiyorsanız, bir yol deseni ayarlamayın. Yol içinde, şu üç değişkenin bir veya daha fazla örneğini belirtebilirsiniz: {date}, {time}veya {partition}Örnek 1: cluster1/logs/{date}/{time}/{partition}Örnek 2: cluster1/logs/{date}Karakter * , yol ön eki için izin verilen bir değer değildir. Yalnızca geçerli Azure blob karakterlerine izin verilir. Kapsayıcı adlarını veya dosya adlarını eklemeyin. |
| Tarih biçimi (isteğe bağlı) | Yolda tarih değişkenini kullanırsanız, dosyaların düzenlendiği tarih biçimi. Örnek: YYYY/MM/DD Blob giriş yolunda {date} veya {time} bulunduğunda, klasörler artan zaman sırasına göre incelenir. |
| Saat biçimi (isteğe bağlı) | Yoldaki zaman değişkenini kullanırsanız, dosyaların düzenlendiği zaman biçimi. Şu anda desteklenen tek değer saat cinsindendir HH . |
| Bölüm anahtarı | Bu, yalnızca işiniz uyumluluk düzeyi 1.2 veya üzerini kullanacak şekilde yapılandırılmışsa kullanılabilen isteğe bağlı bir alandır. Girişiniz bir özellik tarafından bölümlenmişse, bu özelliğin adını buraya ekleyebilirsiniz. Bu özellikte PARTITION BY veya GROUP BY yan tümcesi içeriyorsa sorgunuzun performansını geliştirmek için kullanılır. Bu iş uyumluluk düzeyi 1.2 veya üzerini kullanıyorsa, bu alan varsayılan olarak "PartitionId" olarak adlandırılır. |
| Giriş bölümlerinin sayısı | Bu alan yalnızca yol deseninde {partition} mevcut olduğunda bulunur. Bu özelliğin değeri =1 tamsayıdır >. pathPattern içinde {partition} nerede görünürse görünsin, 0 ile bu alan -1 değeri arasında bir sayı kullanılır. |
| Olay serileştirme biçimi | Gelen veri akışının serileştirme biçimi (JSON, CSV, Avro). JSON biçiminin belirtimle uyumlu olduğundan ve ondalık sayılar için baştaki 0'ı içermediğinden emin olun. |
| Kodlama | CSV ve JSON için utf-8 şu anda desteklenen tek kodlama biçimidir. |
| Sıkıştırma | Gelen veri akışını okumak için kullanılan sıkıştırma türü: hiçbiri (varsayılan), gzip veya deflate gibi. |
Verileriniz bir Blob depolama kaynağından geldiğinde, Stream Analytics sorgunuzda aşağıdaki meta veri alanlarına erişebilirsiniz:
| Mülkiyet | Açıklama |
|---|---|
| BlobName | Olayın geldiği kaynak blobun adı. |
| EventProcessedUtcTime | Stream Analytics'in olayı işlediği tarih ve saat. |
| BlobLastModifiedUtcTime | Blobun en son değiştirildiği tarih ve saat. |
| PartitionId | Giriş bağdaştırıcısı için sıfır tabanlı bölüm kimliği. |
Örneğin, bu alanları kullanarak aşağıdaki örneğe benzer bir sorgu yazabilirsiniz:
SELECT
BlobName,
EventProcessedUtcTime,
BlobLastModifiedUtcTime
FROM Input
Apache Kafka'dan veri akışı
Azure Stream Analytics, verileri almak için doğrudan Apache Kafka kümelerine bağlanmanızı sağlar. Çözüm düşük koddur ve tamamen Microsoft'taki Azure Stream Analytics ekibi tarafından yönetilir ve iş uyumluluğu standartlarını karşılamasına olanak sağlar. Kafka girişi geriye dönük olarak uyumludur ve sürüm 0.10'dan başlayarak en son istemci sürümüne sahip tüm sürümleri destekler. Kullanıcılar, yapılandırmalara bağlı olarak bir sanal ağ içindeki Kafka kümelerine ve genel uç nokta içeren Kafka kümelerine bağlanabilir. Yapılandırma, mevcut Kafka yapılandırma kurallarına dayanır. Desteklenen sıkıştırma türleri None, Gzip, Snappy, LZ4 ve Zstd'dir.
Daha fazla bilgi için bkz . Kafka'dan Azure Stream Analytics'e veri akışı yapma (Önizleme).