Vlastní deserializátory .NET pro Azure Stream Analytics v sadě Visual Studio (Preview)
Důležité
Vlastní deserializátor .net pro Azure Stream Analytics bude vyřazen 30. září 2024. Po tomto datu nebude možné tuto funkci použít. Do tohoto data přejděte na předdefinovaný deserializátor JSON, AVRO nebo CSV.
Azure Stream Analytics má integrovanou podporu pro tři formáty dat: JSON, CSV a Avro. S vlastními deserializátory .NET můžete číst data z jiných formátů, jako jsou vyrovnávací paměť protokolu, Bond a další uživatelsky definované formáty pro cloudové i hraniční úlohy.
Tento kurz ukazuje, jak vytvořit vlastní deserializátor .NET pro cloudovou úlohu Azure Stream Analytics pomocí sady Visual Studio. Informace o vytváření deserializérů .NET v editoru Visual Studio Code najdete v tématu Vytváření deserializérů .NET pro úlohy Azure Stream Analytics v editoru Visual Studio Code.
V tomto kurzu se naučíte:
- Vytvořte vlastní deserializátor pro vyrovnávací paměť protokolu.
- Vytvořte úlohu Azure Stream Analytics v sadě Visual Studio.
- Nakonfigurujte úlohu Stream Analytics tak, aby používala vlastní deserializátor.
- Spusťte úlohu Stream Analytics místně, abyste mohli otestovat a ladit vlastní deserializátor.
Požadavky
Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet.
Nainstalujte Visual Studio 2019 (doporučeno) nebo Visual Studio 2017. Podporují se edice Enterprise (Ultimate nebo Premium), Professional a Community. Edice Express není podporovaná.
Nainstalujte nástroje Stream Analytics pro Visual Studio nebo aktualizujte na nejnovější verzi.
Otevřete Průzkumníka cloudu v sadě Visual Studio a přihlaste se ke svému předplatnému Azure.
Vytvořte kontejner v účtu služby Azure Storage. Kontejner, který vytvoříte, se použije k ukládání prostředků souvisejících s vaší úlohou Stream Analytics. Pokud už máte účet úložiště s existujícími kontejnery, můžete je použít. Pokud ne, budete muset vytvořit nový kontejner.
Vytvoření vlastního deserializátoru
Otevřete Visual Studio a vyberte Soubor > nový > projekt. Vyhledejte Stream Analytics a vyberte vlastní projekt deserializátoru Azure Stream Analytics (.NET). Pojmenujte projekt, například Protobuf Deserializer.
V Průzkumník řešení klikněte pravým tlačítkem na projekt Protobuf Deserializer a v nabídce vyberte Spravovat balíčky NuGet. Pak nainstalujte balíčky NuGet Microsoft.Azure.StreamAnalytics a Google.Protobuf .
Přidejte třídu MessageBodyProto a Třídu MessageBodyDeserializer do projektu.
Sestavte projekt Protobuf Deserializer.
Přidání projektu Azure Stream Analytics
V Průzkumník řešení klikněte pravým tlačítkem na řešení Protobuf Deserializer a vyberte Přidat > nový projekt. V části Azure Stream Analytics > Stream Analytics zvolte aplikaci Azure Stream Analytics. Pojmenujte ji ProtobufCloudDeserializer a vyberte OK.
Klikněte pravým tlačítkem myši na odkazy pod projektem ProtobufCloudDeserializer Azure Stream Analytics. V části Projekty přidejte Protobuf Deserializer. Měl by se automaticky naplnit.
Konfigurace úlohy Stream Analytics
Poklikejte na JobConfig.json. Použijte výchozí konfigurace s výjimkou následujících nastavení:
Nastavení Navrhovaná hodnota Globální prostředek Nastavení úložiště Zvolit zdroj dat z aktuálního účtu Globální úložiště Nastavení předplatné < vaše předplatné > Globální účet úložiště Nastavení < váš účet úložiště > Prostředek Nastavení vlastního úložiště kódu Zvolit zdroj dat z aktuálního účtu Vlastní úložiště kódu Nastavení účtu úložiště < váš účet úložiště > Kontejner Nastavení vlastního úložiště kódu < kontejner úložiště > V části Vstupy poklikejte na Input.json. Použijte výchozí konfigurace s výjimkou následujících nastavení:
Nastavení Navrhovaná hodnota Source Blob Storage Prostředek Zvolit zdroj dat z aktuálního účtu Předplatné < vaše předplatné > Účet úložiště < váš účet úložiště > Kontejner < kontejner úložiště > Formát serializace události Jiné (Protobuf, XML, proprietární...) Prostředek Načtení z odkazu na projekt ASA nebo CodeBehind Název sestavení CSharp ProtobufDeserializer.dll Název třídy MessageBodyProto.MessageBodyDeserializer Typ komprese události Nic Do souboru Script.asaql přidejte následující dotaz.
SELECT * FROM Input
Stáhněte si ukázkový vstupní soubor protobuf. Ve složce Vstupy klikněte pravým tlačítkem na Input.json a vyberte Přidat místní vstup. Potom poklikejte na local_Input.json a nakonfigurujte následující nastavení:
Nastavení Navrhovaná hodnota Alias pro vstup Vstup Typ zdroje Datový proud Formát serializace události Jiné (Protobuf, XML, proprietární...) Název sestavení CSharp ProtobufDeserializer.dll Název třídy MessageBodyProto.MessageBodyDeserializer Cesta k místnímu vstupnímu souboru < cesta k souboru pro stažený ukázkový vstupní soubor protobuf>
Spuštění úlohy Stream Analytics
Otevřete Script.asaql a vyberte Spustit místně.
Prohlédněte si výsledky v místních výsledcích spuštění Stream Analytics.
Úspěšně jste implementovali vlastní deserializátor pro úlohu Stream Analytics! V tomto kurzu jste místně otestovali vlastní deserializátor. Pro skutečná data byste správně nakonfigurovali vstup a výstup. Pak odešlete úlohu do Azure ze sady Visual Studio a spusťte úlohu v cloudu pomocí vlastního deserializátoru, který jste právě implementovali.
Ladění deserializátoru
Deserializátor .NET můžete ladit místně stejným způsobem jako standardní kód .NET.
Klikněte pravým tlačítkem na název projektu ProtobufCloudDeserializer a nastavte ho jako spouštěný projekt.
Přidejte do funkce zarážky.
Stisknutím klávesy F5 spusťte ladění. Program se podle očekávání bude zastavovat na zarážkách.
Vyčištění prostředků
Odstraňte skupinu prostředků, úlohu streamování a všechny související prostředky, pokud je už nepotřebujete. Odstraněním úlohy se zabrání zaúčtování jednotek streamování, které daná úloha spotřebovává. Pokud plánujete používat tuto úlohu v budoucnu, můžete ji zastavit a znovu ji spustit později, až ji budete potřebovat. Pokud nebudete tuto úlohu nadále používat, odstraňte všechny prostředky vytvořené podle tohoto kurzu pomocí následujícího postupu:
V nabídce vlevo na portálu Azure Portal vyberte Skupiny prostředků a potom zvolte název vytvořeného prostředku.
Na stránce skupiny prostředků zvolte Odstranit, do textového pole zadejte prostředek, který chcete odstranit, a potom vyberte Odstranit.
Další kroky
V tomto kurzu jste zjistili, jak implementovat vlastní deserializátor .NET pro serializaci vstupu vyrovnávací paměti protokolu. Další informace o vytvářenívlastníchch