Megosztás a következőn keresztül:


Adatok betöltése az Azure Stream Analytics használatával az Azure Cosmos DB for PostgreSQL-ben

A KÖVETKEZŐKRE VONATKOZIK: Azure Cosmos DB for PostgreSQL (a Citus adatbázisbővítménye a PostgreSQL-re)

Az Azure Stream Analytics egy valós idejű elemzési és eseményfeldolgozó motor, amely nagy mennyiségű gyors streamelési adat feldolgozására szolgál az eszközökről, érzékelőkről és webhelyekről. Az Azure IoT Edge-futtatókörnyezetben is elérhető, lehetővé téve az IoT-eszközökön végzett adatfeldolgozást.

Az Azure Cosmos DB for PostgreSQL-hez készült Stream Analytics-architektúrát bemutató ábra.

Az Azure Cosmos DB for PostgreSQL valós idejű számítási feladatokban, például az IoT-ben ragyog. Ezekhez a számítási feladatokhoz a Stream Analytics kód nélküli, teljesíthető és méretezhető alternatívaként szolgálhat az Azure Event Hubsból, az Azure IoT Hubból és az Azure Blob Storage-ból az Azure Cosmos DB for PostgreSQL-be történő előzetes feldolgozáshoz és streameléshez.

A Stream Analytics beállításának lépései

Feljegyzés

Ez a cikk az Azure IoT Hubot használja példaadatforrásként, de a technika a Stream Analytics által támogatott bármely más forrásra alkalmazható. Emellett a következő bemutató adatok az Azure IoT-eszköz telemetriai szimulátorából származnak. Ez a cikk nem foglalkozik a szimulátor beállításával.

  1. Az Azure Portalon bontsa ki a portál bal felső menüjét, és válassza az Erőforrás létrehozása lehetőséget.

  2. Válassza az Analytics>Stream Analytics-feladatot az eredmények listájából.

  3. Töltse ki az Új Stream Analytics-feladatlapot a következő információkkal:

    • Előfizetés – Válassza ki a feladathoz használni kívánt Azure-előfizetést.
    • Erőforráscsoport – Válassza ki ugyanazt az erőforráscsoportot, mint az IoT Hub.
    • Név – Adjon meg egy nevet a Stream Analytics-feladat azonosításához.
    • Régió – Válassza ki az Azure-régiót a Stream Analytics-feladat üzemeltetéséhez. A jobb teljesítmény és az adatátviteli költségek csökkentése érdekében használja a felhasználókhoz legközelebb eső földrajzi helyet.
    • Üzemeltetési környezet – Válassza ki a felhőt az Azure-felhőben való üzembe helyezéshez, vagy az Edge-t egy IoT Edge-eszközön való üzembe helyezéshez.
    • Streamelési egységek – Válassza ki a feladat végrehajtásához szükséges számítási erőforrások streamelési egységeinek számát.
  4. Válassza az Áttekintés + létrehozás, majd a Létrehozás lehetőséget. A jobb felső sarokban egy folyamatban lévő üzembe helyezési értesítésnek kell megjelennie.

    Képernyőkép a Stream Analytics-feladat létrehozása űrlapról.

  5. Feladatbemenet konfigurálása.

    Képernyőkép a feladatbemenet konfigurálásáról a Stream Analyticsben.

    1. Ha az erőforrás üzembe helyezése befejeződött, lépjen a Stream Analytics-feladathoz. Válassza a Bemenetek>streambemenet>hozzáadása IoT Hub lehetőséget.

    2. Töltse ki az IoT Hub oldalt a következő értékekkel:

      • Bemeneti alias – Adjon meg egy nevet a feladat bemenetének azonosításához.
      • Előfizetés – Válassza ki azt az Azure-előfizetést, amely rendelkezik az IoT Hub-fiókkal.
      • IoT Hub – Válassza ki az IoT Hub nevét.
    3. Válassza a Mentés lehetőséget.

    4. A bemeneti adatfolyam hozzáadása után ellenőrizheti vagy letöltheti a beáramló adathalmazt. Az alábbi kód egy példaesemény adatait mutatja be:

      {
         "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. Konfigurálja a feladat kimenetét.

    1. A Stream Analytics feladatlapján válassza a Kimenetek>postgreSQL-adatbázis hozzáadása>(előzetes verzió) lehetőséget.

      Képernyőkép a PostgreSQL-adatbázis kimenetének kiválasztásáról.

    2. Töltse ki az Azure PostgreSQL oldalt a következő értékekkel:

      • Kimeneti alias – Adjon meg egy nevet a feladat kimenetének azonosításához.
      • Válassza a PostgreSQL-adatbázis beállításainak manuális megadása lehetőséget, és adja meg a kiszolgáló teljes tartománynevét, adatbázisát, táblázatát, felhasználónevét és jelszavát. A példaadatkészletben használja a tábla device_data.
    3. Válassza a Mentés lehetőséget.

    A feladat kimenetének konfigurálása az Azure Stream Analyticsben.

  7. Definiálja az átalakítási lekérdezést.

    Átalakítási lekérdezés az Azure Stream Analyticsben.

    1. A Stream Analytics-feladatlapon válassza a Lekérdezés lehetőséget a bal oldali menüből.

    2. Ebben az oktatóanyagban csak az IoT Hub alternatív eseményeit tölti be az Azure Cosmos DB for PostgreSQL-be a teljes adatméret csökkentése érdekében. Másolja és illessze be a következő lekérdezést a lekérdezéspanelre:

      select
         counter,
         iothub.connectiondeviceid,
         iothub.correlationid,
         iothub.connectiondevicegenerationid,
         iothub.enqueuedtime
      from
         [src-iot-hub]
      where counter%2 = 0;
      
    3. Válassza a Lekérdezés mentése lehetőséget.

      Feljegyzés

      A lekérdezés használatával nem csak az adatokat mintául használhatja, hanem a kívánt attribútumokat is kinyerheti az adatfolyamból. A Stream Analytics egyéni lekérdezési lehetősége hasznos az adatok előzetes feldolgozásában/átalakításában, mielőtt betöltené őket az adatbázisba.

  8. Indítsa el a Stream Analytics-feladatot, és ellenőrizze a kimenetet.

    1. Térjen vissza a feladat áttekintési oldalára, és válassza az Indítás lehetőséget.

    2. A Feladat indítása lapon válassza az Now (Most) lehetőséget a feladat kimenetének kezdési időpontjához, majd válassza a Start lehetőséget.

    3. A feladat első indítása egy ideig tart, de miután aktiválta, az adatok érkezésekor továbbra is fut. Néhány perc elteltével lekérdezheti a fürtöt, hogy ellenőrizze, hogy az adatok be vannak-e töltve.

      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)
      

Feljegyzés

A Tesztelési kapcsolat funkció jelenleg nem támogatott az Azure Cosmos DB for PostgreSQL-ben, és akkor is hibát jelezhet, ha a kapcsolat jól működik.

Következő lépések

Megtudhatja, hogyan hozhat létre valós idejű irányítópultot az Azure Cosmos DB for PostgreSQL használatával.