Przekształcanie i przechowywanie danych w bazie danych Azure SQL Database za pomocą edytora bez kodu usługi Azure Stream Analytics
W tym artykule opisano, jak za pomocą edytora kodu łatwo utworzyć zadanie usługi Stream Analytics, które stale odczytuje dane z wystąpienia usługi Event Hubs (centrum zdarzeń), przekształca dane, a następnie zapisuje wyniki w bazie danych Azure SQL Database.
Wymagania wstępne
Zasoby usług Azure Event Hubs i Azure SQL Database muszą być publicznie dostępne i nie muszą znajdować się za zaporą lub zabezpieczone w usłudze Azure Virtual Network. Dane w usłudze Event Hubs muszą być serializowane w formacie JSON, CSV lub Avro.
Jeśli chcesz wypróbować kroki opisane w tym artykule, wykonaj następujące kroki.
Utwórz centrum zdarzeń, jeśli jeszcze go nie masz. Generowanie danych w centrum zdarzeń. Na stronie Wystąpienie usługi Event Hubs wybierz pozycję Generuj dane (wersja zapoznawcza) w menu po lewej stronie, wybierz pozycję Dane giełdowe dla zestawu danych, a następnie wybierz pozycję Wyślij, aby wysłać przykładowe dane do centrum zdarzeń. Ten krok jest wymagany, jeśli chcesz przetestować kroki opisane w tym artykule.
Utwórz bazę danych Azure SQL. Poniżej przedstawiono kilka ważnych kwestii, które należy wziąć pod uwagę podczas tworzenia bazy danych.
Na stronie Podstawy wybierz pozycję Utwórz nowy dla pozycji Serwer. Następnie na stronie Tworzenie serwera usługi SQL Database wybierz pozycję Użyj uwierzytelniania SQL i określ identyfikator użytkownika administratora i hasło.
Na stronie Sieć wykonaj następujące kroki:
- Włącz publiczny punkt końcowy.
- Wybierz pozycję Tak, aby zezwalać usługom i zasobom platformy Azure na dostęp do tego serwera.
- Wybierz pozycję Tak dla pozycji Dodaj bieżący adres IP klienta.
Na stronie Dodatkowe ustawienia wybierz pozycję Brak dla opcji Użyj istniejących danych.
W artykule pomiń kroki opisane w sekcjach Wykonywanie zapytań dotyczących bazy danych i Czyszczenie zasobów .
Jeśli chcesz przetestować kroki, utwórz tabelę w bazie danych SQL przy użyciu edytora zapytań (wersja zapoznawcza).
create table stocks ( symbol varchar(4), price decimal )
Tworzenie zadania usługi Stream Analytics przy użyciu edytora bez kodu
W tej sekcji utworzysz zadanie usługi Azure Stream Analytics przy użyciu edytora bez kodu. Zadanie przekształca dane przesyłane strumieniowo z wystąpienia usługi Event Hubs (centrum zdarzeń) i przechowuje dane wynikowe w bazie danych Azure SQL Database.
W witrynie Azure Portal przejdź do strony Wystąpienia usługi Event Hubs dla centrum zdarzeń.
Wybierz pozycję Funkcje>Przetwarzaj dane w menu po lewej stronie, a następnie wybierz pozycję Start na karcie Przekształć i zapisz dane w bazie danych SQL.
Wprowadź nazwę zadania usługi Stream Analytics, a następnie wybierz pozycję Utwórz. Zostanie wyświetlony diagram zadań usługi Stream Analytics z oknem usługi Event Hubs po prawej stronie.
W oknie Centrum zdarzeń przejrzyj ustawienia tryb serializacji i uwierzytelniania, a następnie wybierz pozycję Połącz.
Po pomyślnym nawiązaniu połączenia i utworzeniu danych w wystąpieniu usługi Event Hubs są widoczne dwie rzeczy:
Pola, które znajdują się w danych wejściowych. Możesz wybrać pozycję Dodaj pole lub wybrać trzy symbol kropki obok pola, aby usunąć, zmienić nazwę lub zmienić jego typ.
Przykład na żywo danych przychodzących w tabeli Podgląd danych w widoku diagramu. Jest on okresowo odświeżany. Możesz wybrać pozycję Wstrzymaj podgląd przesyłania strumieniowego, aby wyświetlić statyczny widok przykładowych danych wejściowych.
Wybierz kafelek Grupuj według , aby agregować dane. W panelu Konfiguracja grupuj według możesz określić pole, według którego chcesz grupować według, wraz z oknem Czas.
W poniższym przykładzie użyto średniej ceny i symbolu.
Wyniki kroku można zweryfikować w sekcji Podgląd danych.
Wybierz kafelek Zarządzaj polami. W panelu Zarządzanie polami wybierz pola, które chcesz wyświetlić, wybierając pozycję Dodaj pole ->Zaimportowany schemat -> pole.
Jeśli chcesz dodać wszystkie pola, wybierz pozycję Dodaj wszystkie pola. Podczas dodawania pola można określić inną nazwę danych wyjściowych. Na przykład
AVG_Value
naValue
. Po zapisaniu wybranych opcji dane będą widoczne w okienku Podgląd danych.W poniższym przykładzie wybrano symbol i AVG_Value . Symbol jest mapowany na symbol, a AVG_Value jest mapowany na cenę.
Wybierz kafelek SQL . W panelu konfiguracji usługi SQL Database wypełnij wymagane parametry i połącz. Wybierz pozycję Załaduj istniejącą tabelę , aby automatycznie wybrać tabelę. W poniższym przykładzie
[dbo].[stocks]
jest wybierana wartość . Następnie wybierz pozycję Połącz.Uwaga
Schemat wybranej tabeli musi dokładnie odpowiadać liczbie pól i ich typów generowanych przez podgląd danych.
W okienku Podgląd danych zostanie wyświetlona wersja zapoznawcza danych pozyskana w bazie danych SQL.
Wybierz pozycję Zapisz , a następnie wybierz pozycję Uruchom zadanie usługi Stream Analytics.
Aby uruchomić zadanie, określ:
Liczba jednostek przesyłania strumieniowego (SU) uruchamianych przez zadanie. Jednostki SU reprezentują ilość zasobów obliczeniowych i pamięci przydzielonych do zadania. Zalecamy rozpoczęcie od trzech, a następnie dostosowanie zgodnie z potrzebami.
Obsługa błędów danych wyjściowych — umożliwia określenie zachowania, które ma nastąpić, gdy dane wyjściowe zadania do miejsca docelowego kończą się niepowodzeniem z powodu błędów danych. Domyślnie zadanie ponawia próbę, dopóki operacja zapisu nie powiedzie się. Możesz również zrezygnować z takich zdarzeń wyjściowych.
Po wybraniu pozycji Uruchom zadanie zostanie uruchomione w ciągu dwóch minut. Zostanie wyświetlony panel metryk w otwartym dolnym okienku. Zaktualizowanie tego panelu zajmuje trochę czasu. Wybierz pozycję Odśwież w prawym górnym rogu panelu, aby odświeżyć wykres. Przejdź do następnego kroku na osobnej karcie lub w oknie przeglądarki internetowej.
Zadanie można również wyświetlić w sekcji Przetwarzanie danych na karcie Zadania usługi Stream Analytics. Wybierz pozycję Otwórz metryki , aby je monitorować lub zatrzymać i uruchomić ponownie, zgodnie z potrzebami.
Przejdź do centrum zdarzeń w portalu w osobnym oknie przeglądarki lub karcie, a następnie ponownie wyślij przykładowe dane giełdowe (tak jak w wymaganiach wstępnych). Na stronie Wystąpienie usługi Event Hubs wybierz pozycję Generuj dane (wersja zapoznawcza) w menu po lewej stronie, wybierz pozycję Dane giełdowe dla zestawu danych, a następnie wybierz pozycję Wyślij, aby wysłać przykładowe dane do centrum zdarzeń. Zaktualizowanie panelu Metryki może potrwać kilka minut.
Powinny zostać wyświetlone rekordy wstawione w bazie danych Azure SQL Database.
Zagadnienia dotyczące korzystania z funkcji replikacji geograficznej usługi Event Hubs
Usługa Azure Event Hubs niedawno uruchomiła funkcję replikacji geograficznej w publicznej wersji zapoznawczej. Ta funkcja różni się od funkcji odzyskiwania po awarii geograficznej w usłudze Azure Event Hubs.
Gdy typ trybu failover jest wymuszony , a spójność replikacji jest asynchroniczna, zadanie usługi Stream Analytics nie gwarantuje dokładnie raz danych wyjściowych danych wyjściowych usługi Azure Event Hubs.
Usługa Azure Stream Analytics, jako producent z centrum zdarzeń, może obserwować opóźnienie limitu w zadaniu w czasie trwania pracy w trybie failover i podczas ograniczania przepustowości przez usługę Event Hubs w przypadku opóźnienia replikacji między główną i pomocniczą osiąga maksymalne skonfigurowane opóźnienie.
Usługa Azure Stream Analytics, jako użytkownik z usługą Event Hubs jako dane wejściowe, może obserwować opóźnienie limitu w zadaniu podczas trwania trybu failover i może pominąć dane lub znaleźć zduplikowane dane po zakończeniu pracy w trybie failover.
Ze względu na te zastrzeżenia zalecamy ponowne uruchomienie zadania usługi Stream Analytics z odpowiednim czasem rozpoczęcia bezpośrednio po zakończeniu pracy w trybie failover usługi Event Hubs. Ponadto, ponieważ funkcja replikacji geograficznej usługi Event Hubs jest dostępna w publicznej wersji zapoznawczej, nie zalecamy używania tego wzorca dla produkcyjnych zadań usługi Stream Analytics. Bieżące zachowanie usługi Stream Analytics poprawi się, zanim funkcja replikacji geograficznej usługi Event Hubs będzie ogólnie dostępna i może być używana w zadaniach produkcyjnych usługi Stream Analytics.
Następne kroki
Dowiedz się więcej o usłudze Azure Stream Analytics i sposobie monitorowania utworzonego zadania.