Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Azure Stream Analytics obsługuje usługę Azure SQL Database jako dane wyjściowe dla zapytania przesyłania strumieniowego. W tym artykule wyjaśniono, jak używać bazy danych SQL jako wyjścia zadania Stream Analytics w portalu Azure.
Wymagania wstępne
Utwórz zadanie usługi Stream Analytics.
Utwórz usługę Azure SQL Database, do której zadanie usługi Stream Analytics będzie zapisywać dane wyjściowe.
Zapisz do nowej tabeli w bazie danych SQL
W tej sekcji opisano sposób konfigurowania zadania do zapisywania w tabeli w usłudze Azure SQL Database, która nie została jeszcze utworzona.
W zadaniu usługi Stream Analytics wybierz pozycję Dane wyjściowe w obszarze Topologia zadania. Kliknij pozycję Dodaj i wybierz pozycję SQL Database.
Wybierz alias danych wyjściowych, który będzie używany w zapytaniu zadania. Podaj nazwę bazy danych i tryb uwierzytelniania. Więcej informacji na temat opcji konfiguracji danych wyjściowych SQL można znaleźć tutaj.
Wprowadź nazwę tabeli , którą chcesz utworzyć w usłudze Azure SQL Database. Kliknij przycisk Zapisz. Uwaga: zapisanie tych danych wyjściowych nie powoduje utworzenia tabeli w usłudze SQL Database. Następne kroki zawierają więcej szczegółów na temat tworzenia tabeli.
Wybierz pozycję Zapytanie w obszarze Topologia zadania i użyj aliasu w zapytaniu, aby zapisać dane wyjściowe w nazwie tabeli podanej w poprzednim kroku. Kliknij pozycję Zapytanie testowe , aby przetestować logikę zapytania i wyświetlić wyniki testu , które zawierają schemat danych wyjściowych, które zostaną wygenerowane przez zadanie. Uwaga: aby przetestować zapytanie, musisz mieć przychodzące dane przesyłane strumieniowo w źródle wejściowym lub przekazać przykładowe dane do zapytania testowego. Możesz dowiedzieć się więcej na temat zapytania testowego usługi Stream Analytics.
Kliknij Schemat tabeli SQL, aby wyświetlić nazwę i typ kolumny. Kliknij pozycję Utwórz tabelę , a tabela zostanie utworzona w bazie danych SQL.
Jeśli zapytanie usługi Stream Analytics zostało zmodyfikowane w celu utworzenia innego schematu, musisz zmienić definicję tabeli w usłudze SQL Database. Dzięki temu zadanie usługi Stream Analytics nie napotka błędów konwersji danych podczas próby zapisania w ujściu.
Po zakończeniu zapytania wybierz pozycję Przegląd i Uruchom zadanie. Następnie możesz przejść do tabeli bazy danych SQL, aby zobaczyć wynik zapytania strumieniowego.
Wybieranie istniejącej tabeli z usługi SQL Database
W tej sekcji opisano sposób konfigurowania zadania w celu zapisania w tabeli, która już istnieje w usłudze Azure SQL Database.
W zadaniu usługi Stream Analytics wybierz pozycję Dane wyjściowe w obszarze Topologia zadania. Kliknij pozycję Dodaj i wybierz pozycję SQL Database.
Wybierz alias danych wyjściowych, który będzie używany w zapytaniu zadania. Podaj nazwę bazy danych i tryb uwierzytelniania. Więcej informacji na temat opcji konfiguracji danych wyjściowych SQL można znaleźć tutaj.
Możesz wybrać istniejącą tabelę z wybranej bazy danych SQL Database, wprowadzając szczegóły uwierzytelniania SQL. Spowoduje to załadowanie listy nazw tabel z bazy danych. Wybierz nazwę tabeli z listy lub ręcznie wprowadź nazwę tabeli i zapisz.
Wybierz pozycję Zapytanie w obszarze Topologia zadania i użyj nazwy aliasu w zapytaniu, aby zapisać dane wyjściowe w wybranej tabeli. Kliknij pozycję Testuj zapytanie , aby przetestować logikę zapytania i wyświetlić wyniki testu. Uwaga: aby przetestować zapytanie, musisz mieć przychodzące dane przesyłane strumieniowo w centrum zdarzeń/usłudze IoT Hub lub przekazać przykładowe dane do zapytania testowego. Więcej informacji na temat zapytania testowego usługi Stream Analytics.
Na karcie Schemat tabeli SQL można zobaczyć nazwę kolumny i jej typ z danych przychodzących i w wybranej tabeli. Możesz sprawdzić, czy typ danych przychodzących i wybrana tabela SQL są zgodne, czy nie. Jeśli nie będzie zgodności, zostanie wyświetlony monit o aktualizację zapytania, tak aby pasowało do schematu tabeli.
Po zakończeniu zapytania wybierz pozycję Przegląd i Uruchom zadanie. Następnie możesz przejść do tabeli w bazie danych SQL, aby zobaczyć wyniki zapytania strumieniowego.
Typowe przyczyny niezgodności typów danych
Należy upewnić się, że dane wyjściowe zadania usługi Stream Analytics są zgodne z nazwami kolumn i typami danych oczekiwanym przez tabelę usługi SQL Database. Jeśli występuje niezgodność, zadanie zostanie napotkane na błędy konwersji danych i będzie stale ponawiane próby do momentu zmiany definicji tabeli SQL. Możesz zmienić zachowanie zadania , aby usunąć takie dane wyjściowe, które powodują błędy konwersji danych i przejść do następnego. Poniżej opisano najczęstsze przyczyny niezgodności schematu.
- Niezgodność typów: typy zapytań i obiektów docelowych nie są zgodne. Wiersze nie zostaną wstawione do miejsca docelowego. Użyj funkcji konwersji , takiej jak TRY_CAST(), aby wyrównać typy w zapytaniu. Alternatywną opcją jest zmiana tabeli docelowej w bazie danych SQL.
- Zakres: zakres typów docelowych jest znacznie mniejszy niż zakres używany w zapytaniu. Wiersze z wartościami poza zakresem mogą nie zostać wstawione do tabeli docelowej lub mogą zostać obcięte. Rozważ zmianę kolumny docelowej na większy zakres typów.
- Niejawne: typy zapytań i obiektów docelowych są różne, ale zgodne. Dane zostaną niejawnie przekonwertowane, ale może to spowodować utratę lub awarie danych. Użyj funkcji konwersji , takiej jak TRY_CAST(), aby wyrównać typy w zapytaniu lub zmienić tabelę docelową.
- Rekord: ten typ nie jest jeszcze obsługiwany dla tego wyniku. Wartość zostanie zastąpiona ciągiem "record". Rozważ przeanalizowanie danych lub użycie funkcji zdefiniowanej przez użytkownika do konwersji na ciąg.
- Tablica: ten typ nie jest jeszcze obsługiwany natywnie w usłudze Azure SQL Database. Wartość zostanie zastąpiona ciągiem "record". Rozważ przeanalizowanie danych lub użycie funkcji zdefiniowanej przez użytkownika do konwersji na ciąg.
- Brak kolumny z tabeli docelowej: w tabeli docelowej brakuje tej kolumny. Dane nie zostaną wstawione. W razie potrzeby dodaj tę kolumnę do tabeli docelowej.
Następne kroki
- Używanie danych referencyjnych SQL jako źródła danych wejściowych
- Azure Stream Analytics Query Language Reference (Dokumentacja dotycząca języka zapytań usługi Azure Stream Analytics)
- Przykłady zapytań dla typowych wzorców użycia usługi Stream Analytics
- Omówienie danych wejściowych dla usługi Azure Stream Analytics
- Omówienie danych wyjściowych z usługi Azure Stream Analytics