Wprowadzenie do usługi Azure Data Factory

Uwaga

Ten artykuł dotyczy wersji 1 usługi Azure Data Factory. Jeśli korzystasz z bieżącej wersji usługi Data Factory, zobacz Wprowadzenie do usługi Data Factory w wersji 2.

Co to jest usługa Azure Data Factory?

W jaki sposób istniejące dane są wykorzystywane w biznesowej rzeczywistości opartej na danych big data? Czy można wzbogacić informacje wygenerowane w chmurze danymi referencyjnymi, pochodzącymi z lokalnych — lub innych, różnorodnych — źródeł danych?

Na przykład firma tworząca gry zbiera dzienniki generowane przez gry w chmurze. Chce analizować te dzienniki w celu uzyskania szczegółowych informacji dotyczących preferencji klientów, danych demograficznych, zachowania użytkowników podczas korzystania z gier itp. Firma chce też identyfikować możliwości sprzedaży droższych produktów i sprzedaży wiązanej, opracowywać nowe atrakcyjne funkcje pozytywnie wpływające na rozwój biznesowy oraz oferować klientom udoskonalone środowisko gier.

Do analizy tych dzienników firma musi użyć danych referencyjnych, np. informacji o kliencie, grze i kampanii marketingowej, które znajdują się w lokalnym magazynie danych. W związku z tym firma chce pozyskać dane dzienników z magazynu danych w chmurze oraz dane referencyjne z lokalnego magazynu danych.

Następnie firma chce przetwarzać dane, używając usługi Hadoop w chmurze (Azure HDInsight). Chce opublikować dane wynikowe w magazynie danych w chmurze, takim jak Azure Synapse Analytics, lub lokalnym magazynie danych, takim jak SQL Server. Firma chce uruchamiać taki przepływ pracy raz w tygodniu.

Firma potrzebuje platformy, na której może utworzyć przepływ pracy pozyskujący dane z magazynu lokalnego i w chmurze. Firma musi mieć też możliwość przekształcania lub przetwarzania danych za pomocą istniejących usług obliczeniowych, takich jak Hadoop, i publikowania wyników w lokalnym magazynie danych lub magazynie danych w chmurze, aby mogły z nich korzystać aplikacje analizy biznesowej.

Data Factory overview

Usługa Azure Data Factory to platforma umożliwiająca realizację takich scenariuszy. Jest to oparta na chmurze usługa integracji danych, za pomocą której można tworzyć oparte na danych przepływy pracy w chmurze służące do organizowania i automatyzowania przenoszenia i przekształcania danych. Za pomocą usługi Azure Data Factory można wykonywać następujące zadania:

  • Tworzyć oparte na danych przepływy pracy (nazywane potokami) pozyskujące dane z różnych magazynów danych i ustalać ich harmonogram.

  • Przetwarzać i przekształcać dane za pomocą usług obliczeniowych, takich jak Azure HDInsight Hadoop, Spark, Azure Data Lake Analytics i Azure Machine Learning.

  • Publikowanie danych wyjściowych w magazynach danych, takich Azure Synapse Analytics, aby aplikacje analizy biznesowej (BI) używane.

To bardziej platforma, która najpierw wyodrębnia i ładuje, a następnie przekształca i ładuje, niż tradycyjna platforma wyodrębniania, przekształcania i ładowania. Podczas przekształcania dane są przetwarzane przez zastosowanie usług obliczeniowych, a nie przez dodanie kolumn pochodnych, które służą do zliczania liczby wierszy, sortowania danych itp.

Obecnie dane używane i generowane przez przepływy pracy w usłudze Azure Data Factory to dane z określonego przedziału czasu (godzina, dzień, tydzień itd.). Na przykład potok może odczytać dane wejściowe, przetworzyć je i wygenerować dane wyjściowe raz dziennie. Przepływ pracy można także uruchomić tylko jeden raz.

Jak to działa?

Potoki (oparte na danych przepływy pracy) w usłudze Azure Data Factory zwykle wykonują następujące trzy kroki:

Three stages of Azure Data Factory

Łączenie i zbieranie

Dane używane w przedsiębiorstwach mają różne typy i znajdują się w rozproszonych źródłach. Pierwszym krokiem tworzenia systemu produkcji informacji jest połączenie wszystkich potrzebnych źródeł danych i przetwarzania. Do tych źródeł należą usługi SaaS, udziały plików, serwery FTP i usługi internetowe. Następnym krokiem jest przeniesienie danych w miarę potrzeb do centralnej lokalizacji w celu ich dalszego przetwarzania.

Firmy, które nie korzystają z usługi Data Factory, muszą tworzyć niestandardowe składniki umożliwiające przepływ danych lub projektować własne usługi, aby zintegrować źródła danych i systemy przetwarzania. Takie podejście jest kosztowne, a integracja i utrzymanie systemów stwarza trudności. Takie systemy rzadko zapewniają mechanizmy kontrolne oraz funkcje monitorowania i wysyłania alertów na poziomie korporacyjnym. Możliwości te są natomiast dostępne w przypadku w pełni zarządzanej usługi.

Usługa Data Factory udostępnia działanie kopiowania w potoku danych, które pozwala przenosić dane z lokalnych magazynów danych i źródeł danych w chmurze do centralnego magazynu danych w chmurze w celu przeprowadzenia kolejnych etapów analizy.

Na przykład można pobrać dane z usługi Azure Data Lake Store i przekształcić je później za pomocą usługi obliczeniowej Azure Data Lake Analytics. Można też pobrać dane z usługi Azure Blob Storage, aby przekształcić je później przy użyciu klastra usługi Azure HDInsight na platformie Hadoop.

Przekształcanie i wzbogacanie

Po umieszczeniu danych w centralnym magazynie danych w chmurze zebrane dane należy przetworzyć lub przetransferować za pomocą usług obliczeniowych, takich jak HDInsight Hadoop, Spark, Data Lake Analytics lub Machine Learning. Przekształcone dane powinny być generowane niezawodnie i zgodnie z możliwym do utrzymania i kontrolowania harmonogramem, aby zapewnić środowiskom produkcyjnym zaufane dane.

Publikowanie

Przekształcone dane należy dostarczyć z chmury do źródeł lokalnych, takich jak program SQL Server. Możesz też przechowywać go w źródłach magazynu w chmurze do użycia przez narzędzia analizy biznesowej i analityczne oraz inne aplikacje.

Główne składniki

Subskrypcja platformy Azure może zawierać jedno lub więcej wystąpień usługi Azure Data Factory (lub fabryk danych). Usługa Azure Data Factory składa się z czterech głównych składników. Ich współdziałanie pozwala udostępnić platformę umożliwiającą tworzenie opartych na danych przepływów pracy wraz z etapami służącymi do przenoszenia i przekształcania danych.

Potok

Fabryka danych może obejmować jeden lub wiele potoków. Potok jest grupą działań, Razem działania w potoku wykonują zadanie.

Na przykład potok może zawierać grupę działań, które pozwalają pozyskać dane z obiektu blob platformy Azure, a następnie uruchomić zapytanie programu Hive w klastrze usługi HDInsight w celu podzielenia danych. Zaletą korzystania z potoku jest możliwość zarządzania zestawem działań. Na przykład zamiast planować oddzielne działania można wdrożyć i zaplanować potok.

Działanie

Potok może obejmować jedno lub wiele działań. Działania definiują akcje do wykonania na danych. Można na przykład użyć działania kopiowania w celu skopiowania danych z jednego magazynu danych do drugiego. Analogicznie można użyć działania programu Hive. Uruchamia ono zapytanie programu Hive w klastrze usługi Azure HDInsight, aby przekształcić lub przeanalizować dane. Usługa Data Factory obsługuje dwa typy działań — w zakresie przekształcania oraz przenoszenia danych.

Działania dotyczące przenoszenia danych

Działanie kopiowania w usłudze Data Factory kopiuje dane z magazynu danych źródła do magazynu danych ujścia. Dane z dowolnego źródła można zapisać do dowolnego ujścia. Wybierz magazyn danych, aby dowiedzieć się, jak kopiować dane do i z tego magazynu. Usługa Data Factory obsługuje następujące magazyny danych:

Kategoria Magazyn danych Obsługiwany jako źródło Obsługiwany jako ujście
Azure Azure Blob Storage
  Azure Cosmos DB (interfejs API SQL)
  Usługa Azure Data Lake Storage 1. generacji
  Azure SQL Database
  Azure Synapse Analytics
  Azure Cognitive Search indeks
  Azure Table storage
Bazy danych Amazon Redshift
  DB2
  Mysql
  Oracle
  Postgresql
  SAP Business Warehouse
  SAP HANA
  SQL Server
  Sybase
  Teradata
NoSQL Cassandra
  Mongodb
Plik Amazon S3
  System plików
  FTP
  System plików HDFS
  SFTP
Inne Ogólne HTTP
  Ogólne OData
  Ogólne ODBC
  Salesforce
  Tabela sieci Web (tabela z kodu HTML)

Aby uzyskać więcej informacji, zobacz Move data by using Copy Activity (Przenoszenie danych za pomocą działania kopiowania).

Działania dotyczące przekształcania danych

Usługa Azure Data Factory obsługuje następujące działania przekształcania, które można dodawać indywidualnie do potoków lub łączyć je z innymi działaniami.

Działanie przekształcania danych Środowisko obliczeniowe
Hive HDInsight [Hadoop]
Pig HDInsight [Hadoop]
MapReduce HDInsight [Hadoop]
Połączenia strumieniowe usługi Hadoop HDInsight [Hadoop]
Spark HDInsight [Hadoop]
ML Studio (klasyczne): wykonywanie wsadowe i aktualizowanie zasobu Maszyna wirtualna platformy Azure
Procedura składowana Azure SQL, Azure Synapse Analytics lub SQL Server
Data Lake Analytics U-SQL Azure Data Lake Analytics
Dotnet Usługa HDInsight [Hadoop] lub usługa Azure Batch

Uwaga

Możesz użyć działania MapReduce, aby uruchomić programy platformy Spark w klastrze usługi HDInsight Spark. Zobacz Wywoływanie programów platformy Spark z usługi Azure Data Factory. Możesz utworzyć niestandardowe działanie, aby uruchamiać skrypty w klastrze usługi HDInsight z zainstalowanym językiem R. Zobacz Uruchamianie skryptów języka R przy użyciu usługi Azure Data Factory.

Aby uzyskać więcej informacji, zobacz Move data by using Copy Activity (Przenoszenie danych za pomocą działania kopiowania).

Niestandardowe działania programu .NET

Jeśli musisz przenieść dane do/z magazynu danych nieobsługiwanego przez działanie kopiowania lub przekształcić dane za pomocą własnej logiki, utwórz niestandardowe działanie programu .NET. Aby uzyskać szczegółowe informacje na temat tworzenia i używania niestandardowego działania, zobacz Use custom activities in an Azure Data Factory pipeline (Korzystanie z niestandardowych działań w potoku usługi Azure Data Factory).

Zestawy danych

Każde działanie pobiera 0 lub więcej zestawów danych jako dane wejściowe i generuje co najmniej jeden zestaw danych jako dane wyjściowe. Zestawy danych reprezentują struktury danych w magazynach danych. Te struktury wskazują dane, których chcesz użyć w swoich działaniach (takie jak dane wejściowe lub wyjściowe), albo odwołują się do nich.

Na przykład zestaw danych obiektów blob platformy Azure określa kontener obiektów blob i folder w usłudze Azure Blob Storage, z których potok ma odczytywać dane. Alternatywnie zestaw danych tabeli SQL Azure określa tabelę, w której działanie zapisuje dane wyjściowe.

Połączone usługi

Połączone usługi działają podobnie do parametrów połączenia, umożliwiając definiowanie informacji wymaganych przez usługę Data Factory do nawiązywania połączeń z zasobami zewnętrznymi. Mechanizm ten działa następująco: połączona usługa definiuje połączenie ze źródłem danych, a zestaw danych reprezentuje strukturę danych.

Na przykład połączona usługa Azure Storage określa parametry połączenia, które umożliwiają połączenie z kontem usługi Azure Storage. Natomiast zestaw danych obiektów blob platformy Azure określa kontener obiektów blob oraz folder, który zawiera dane.

Połączone usługi w usłudze Data Factory służą do dwóch celów:

  • Do reprezentowania magazynu danych, który obejmuje między innymi bazę danych SQL Server, bazę danych Oracle, udział plików lub konto usługi Azure Blob Storage. Listę obsługiwanych magazynów danych można znaleźć w sekcji Data movement activities (Działania przenoszenia danych).

  • Reprezentowanie zasobu obliczeniowego, który może hostować wykonywanie działania. Na przykład działanie HDInsightHive jest wykonywane w klastrze HDInsight na platformie Hadoop. Listę obsługiwanych środowisk obliczeniowych można znaleźć w sekcji Data transformation activities (Działania przekształcania danych).

Relacje między obiektami usługi Data Factory

Diagram: Data Factory, a cloud data integration service - key concepts

Obsługiwane regiony

Obecnie można tworzyć fabryki danych w regionach Zachodnie stany USA, Wschodnie stany USA oraz Europa Północna. Jednak fabryka danych może mieć dostęp do magazynów danych i usług obliczeniowych w innych regionach świadczenia usługi Azure, aby przenosić dane między magazynami danych lub przetwarzać dane przy użyciu usług obliczeniowych.

Sama usługa Azure Data Factory nie przechowuje żadnych danych. Pozwala ona tworzyć przepływy pracy oparte na danych służące do organizowania przenoszenia danych między obsługiwanymi magazynami danych. Pozwala ona także przetwarzać dane przy użyciu usług obliczeniowych w innych regionach lub w środowisku lokalnym. Dodatkowo umożliwia monitorowanie przepływów pracy i zarządzanie nimi przy użyciu zarówno mechanizmów programowych, jaki i interfejsu użytkownika.

Usługa Data Factory jest dostępna tylko w regionach Zachodnie stany USA, Wschodnie stany USA i Europa Północna. Jednak usługa, która obsługuje przenoszenie danych w usłudze Data Factory, jest dostępna globalnie w wielu regionach. Jeśli magazyn danych znajduje się za zaporą, dane są Zarządzanie danymi Gateway zainstalowane w środowisku lokalnym.

Załóżmy na przykład, że środowiska obliczeniowe, takie jak klaster usługi Azure HDInsight i usługa Azure Machine Learning, są zlokalizowane w regionie Europa Zachodnia. Można wtedy utworzyć wystąpienie usługi Azure Data Factory w regionie Europa Północna i korzystać z niego. Następnie można go używać do planowania zadań w środowiskach obliczeniowych w regionie Europa Zachodnia. Wyzwolenie zadania w środowisku obliczeniowym zajmuje usłudze Data Factory kilka milisekund, ale czas uruchomienia zadania w środowisku obliczeniowym nie zmienia się.

Rozpoczynanie tworzenia potoku

Potoki danych w usłudze Azure Data Factory można tworzyć za pomocą następujących narzędzi lub interfejsów API:

  • Visual Studio
  • PowerShell
  • Interfejs API .NET
  • Interfejs API REST
  • Szablon usługi Azure Resource Manager

Wykonaj instrukcje krok po kroku w następujących samouczkach, aby dowiedzieć się, jak tworzyć fabryki danych z potokami danych:

Samouczek Opis
Przenoszenie danych między dwoma magazynami danych w chmurze Utwórz fabrykę danych z potokiem, który przenosi dane z magazynu obiektów blob do SQL Database.
Przekształcanie danych przy użyciu klastra Hadoop Utwórz pierwszą fabrykę danych platformy Azure z potokiem danych przetwarzającym dane, uruchamiając skrypt programu Hive w klastrze usługi Azure HDInsight (Hadoop).
Przenoszenie danych między lokalnym magazynem danych i magazynem danych w chmurze przy użyciu bramy zarządzania danymi Tworzenie fabryki danych z potokiem, który przenosi dane z bazy SQL Server do obiektu blob platformy Azure. W ramach tego przewodnika zainstalujesz i skonfigurujesz bramę zarządzania danymi na tym komputerze.