Bagikan melalui


Cara menyerap data dengan menggunakan Azure Stream Analytics di Azure Cosmos DB for PostgreSQL

BERLAKU UNTUK: Azure Cosmos DB for PostgreSQL (didukung oleh ekstensi database Citus ke PostgreSQL)

Azure Stream Analytics adalah analitik real time dan mesin pemrosesan peristiwa yang dirancang untuk memproses data streaming cepat dalam volume tinggi dari perangkat, sensor, dan situs web. Ini juga tersedia di runtime Azure IoT Edge, yang memungkinkan pemrosesan data pada perangkat IoT.

Diagram yang memperlihatkan arsitektur Azure Stream Analytics dengan Azure Cosmos DB for PostgreSQL.

Azure Cosmos DB for PostgreSQL bersinar pada beban kerja real time seperti IoT. Untuk beban kerja ini, Azure Stream Analytics dapat bertindak sebagai alternatif tanpa kode, berkinerja, dan dapat diskalakan untuk pra-proses dan mengalirkan data dari Azure Event Hubs, Azure IoT Hub, dan Azure Blob Storage ke Azure Cosmos DB for PostgreSQL.

Langkah-langkah untuk menyiapkan Azure Stream Analytics

Catatan

Artikel ini menggunakan Azure IoT Hub sebagai contoh sumber data, tetapi teknik ini berlaku untuk sumber lain yang didukung oleh Azure Stream Analytics. Selain itu, data demonstrasi berikut berasal dari Simulator Telemetri Perangkat Azure IoT. Artikel ini tidak mencakup pengaturan simulator.

  1. Di portal Azure, perluas menu portal di kiri atas dan pilih Buat sumber daya.

  2. Pilih Analytics>Pekerjaan Azure Stream Analytics dari daftar hasil.

  3. Isi halaman pekerjaan Analisis Aliran Baru dengan informasi berikut:

    • Langganan - Pilih langganan Azure yang ingin Anda gunakan untuk pekerjaan ini.
    • Grup sumber daya - Pilih grup sumber daya yang sama dengan hub IoT Anda.
    • Nama - Masukkan nama untuk mengidentifikasi pekerjaan Azure Stream Analytics Anda.
    • Wilayah - Pilih wilayah Azure untuk menghosting pekerjaan Azure Stream Analytics Anda. Gunakan lokasi geografis yang paling dekat dengan pengguna Anda untuk performa yang lebih baik dan untuk mengurangi biaya transfer data.
    • Lingkungan hosting - Pilih Cloud untuk disebarkan ke cloud Azure, atau Edge untuk disebarkan ke perangkat IoT Edge.
    • Unit streaming - Pilih jumlah unit streaming untuk sumber daya komputasi yang Anda butuhkan untuk menjalankan pekerjaan.
  4. Pilih Tinjau + buat, lalu pilih Buat. Anda akan melihat pemberitahuan Penyebaran sedang berlangsung di kanan atas.

    Cuplikan layar yang memperlihatkan formulir pekerjaan buat Azure Stream Analytics.

  5. Konfigurasikan input pekerjaan.

    Cuplikan layar yang menunjukkan konfigurasi input pekerjaan di Azure Stream Analytics.

    1. Setelah penyebaran sumber daya selesai, navigasikan ke pekerjaan Stream Analytics Anda. Pilih Input>Tambahkan input>aliran IoT Hub.

    2. Isi halaman IoT Hub dengan nilai berikut ini:

      • Alias input - Masukkan nama untuk mengidentifikasi input pekerjaan.
      • Langganan - Pilih langganan Azure yang memiliki akun IoT Hub Anda.
      • IoT Hub – Pilih nama hub IoT Anda.
    3. Pilih Simpan.

    4. Setelah aliran input ditambahkan, Anda juga dapat memverifikasi atau mengunduh himpunan data yang mengalir. Kode berikut menunjukkan data untuk contoh peristiwa:

      {
         "deviceId": "sim000001",
         "time": "2022-04-25T13:49:11.6892185Z",
         "counter": 1,
         "EventProcessedUtcTime": "2022-04-25T13:49:41.4791613Z",
         "PartitionId": 3,
         "EventEnqueuedUtcTime": "2022-04-25T13:49:12.1820000Z",
         "IoTHub": {
           "MessageId": null,
           "CorrelationId": "990407b8-4332-4cb6-a8f4-d47f304397d8",
           "ConnectionDeviceId": "sim000001",
           "ConnectionDeviceGenerationId": "637842405470327268",
           "EnqueuedTime": "2022-04-25T13:49:11.7060000Z"
         }
      }
      
  6. Mengonfigurasi output pekerjaan.

    1. Pada halaman pekerjaan Analisis Aliran, pilih Output>Tambahkan>database PostgreSQL (pratinjau).

      Cuplikan layar yang memperlihatkan pemilihan output database PostgreSQL.

    2. Isi halaman Azure PostgreSQL dengan nilai berikut:

      • Alias output - Masukkan nama untuk mengidentifikasi output pekerjaan.
      • Pilih Sediakan pengaturan database PostgreSQL secara manual dan masukkan Nama domain server yang sepenuhnya memenuhi syarat, Database, Tabel, Nama Pengguna, dan Kata Sandi. Dari contoh himpunan data, gunakan tabel device_data.
    3. Pilih Simpan.

    Mengonfigurasi output pekerjaan di Azure Stream Analytics.

  7. Tentukan kueri transformasi.

    Kueri transformasi di Azure Stream Analytics.

    1. Pada halaman pekerjaan Azure Stream Analytics, pilih Kueri dari menu sebelah kiri.

    2. Untuk tutorial ini, Anda hanya menyerap peristiwa alternatif dari IoT Hub ke Azure Cosmos DB for PostgreSQL, untuk mengurangi ukuran data keseluruhan. Salin dan tempel kueri berikut ke panel kueri:

      select
         counter,
         iothub.connectiondeviceid,
         iothub.correlationid,
         iothub.connectiondevicegenerationid,
         iothub.enqueuedtime
      from
         [src-iot-hub]
      where counter%2 = 0;
      
    3. Pilih Simpan kueri.

      Catatan

      Anda menggunakan kueri untuk tidak hanya mengambil sampel data, tetapi juga untuk mengekstrak atribut yang diinginkan dari aliran data. Opsi kueri kustom dengan Azure Stream Analytics sangat membantu dalam pra-pemrosesan/transformasi data sebelum diserap ke dalam database.

  8. Mulai pekerjaan Stream Analytics dan periksa output.

    1. Kembali ke halaman ringkasan pekerjaan dan pilih Mulai.

    2. Pada halaman Mulai pekerjaan , pilih Sekarang untuk waktu mulai output Pekerjaan, lalu pilih Mulai.

    3. Pekerjaan membutuhkan waktu untuk memulai pertama kalinya, tetapi setelah dipicu, pekerjaan terus berjalan saat data tiba. Setelah beberapa menit, Anda dapat mengkueri kluster untuk memverifikasi bahwa data dimuat.

      citus=> SELECT * FROM public.device_data LIMIT 10;
      
       counter | connectiondeviceid |            correlationid             | connectiondevicegenerationid |         enqueuedtime
      ---------+--------------------+--------------------------------------+------------------------------+------------------------------
             2 | sim000001          | 7745c600-5663-44bc-a70b-3e249f6fc302 | 637842405470327268           | 2022-05-25T18:24:03.4600000Z
             4 | sim000001          | 389abfde-5bec-445c-a387-18c0ed7af227 | 637842405470327268           | 2022-05-25T18:24:05.4600000Z
             6 | sim000001          | 3932ce3a-4616-470d-967f-903c45f71d0f | 637842405470327268           | 2022-05-25T18:24:07.4600000Z
             8 | sim000001          | 4bd8ecb0-7ee1-4238-b034-4e03cb50f11a | 637842405470327268           | 2022-05-25T18:24:09.4600000Z
            10 | sim000001          | 26cebc68-934e-4e26-80db-e07ade3775c0 | 637842405470327268           | 2022-05-25T18:24:11.4600000Z
            12 | sim000001          | 067af85c-a01c-4da0-b208-e4d31a24a9db | 637842405470327268           | 2022-05-25T18:24:13.4600000Z
            14 | sim000001          | 740e5002-4bb9-4547-8796-9d130f73532d | 637842405470327268           | 2022-05-25T18:24:15.4600000Z
            16 | sim000001          | 343ed04f-0cc0-4189-b04a-68e300637f0e | 637842405470327268           | 2022-05-25T18:24:17.4610000Z
            18 | sim000001          | 54157941-2405-407d-9da6-f142fc8825bb | 637842405470327268           | 2022-05-25T18:24:19.4610000Z
            20 | sim000001          | 219488e5-c48a-4f04-93f6-12c11ed00a30 | 637842405470327268           | 2022-05-25T18:24:21.4610000Z
      (10 rows)
      

Catatan

Fitur Uji Koneksi saat ini tidak didukung untuk Azure Cosmos DB for PostgreSQL dan mungkin melemparkan kesalahan, bahkan ketika koneksi berfungsi dengan baik.

Langkah berikutnya

Pelajari cara membuat dasbor real-time dengan Azure Cosmos DB for PostgreSQL.