Azure Data Factory nedir?What is Azure Data Factory?

Uygulama hedefi: Azure SYNAPSE Analytics 'i Azure Data Factory

Büyük veri dünyasında ham ve düzensiz veriler genellikle ilişkisel, ilişkisel olmayan ve diğer depolama sistemlerinde depolanır.In the world of big data, raw, unorganized data is often stored in relational, non-relational, and other storage systems. Ancak, ham veriler kendi başlarına analiz uzmanlarına, veri bilimcilerine veya iş karar mekanizmalarına anlamlı bilgiler sağlamak için uygun bağlama veya anlama sahip değildir.However, on its own, raw data doesn't have the proper context or meaning to provide meaningful insights to analysts, data scientists, or business decision makers.

Büyük veriler, ham verilerin bu zenginleştirme mağazalarını uygulanabilir iş öngörülerine daraltmak için işlemleri düzenleyebilen ve işleştirebilecek bir hizmet gerektirir.Big data requires a service that can orchestrate and operationalize processes to refine these enormous stores of raw data into actionable business insights. Azure Data Factory, bu karmaşık karma ayıkla-dönüştür-yükle (ETL), ayıkla-yükle-dönüştür (ELT) ve veri tümleştirme projeleri için oluşturulmuş, yönetilen bir bulut hizmetidir.Azure Data Factory is a managed cloud service that's built for these complex hybrid extract-transform-load (ETL), extract-load-transform (ELT), and data integration projects.

Örneğin bulutta çalışan oyunların oluşturduğu petabaytlarca oyun günlüğünü toplayan bir oyun şirketini düşünün.For example, imagine a gaming company that collects petabytes of game logs that are produced by games in the cloud. Şirket müşteri tercihleri, demografik bilgiler ve kullanıcı davranışları hakkında içgörü elde etme amacıyla bu günlükleri analiz etmek istiyor.The company wants to analyze these logs to gain insights into customer preferences, demographics, and usage behavior. Ayrıca yukarı satış ve çapraz satış fırsatlarını belirlemek, yeni cazip özellikler geliştirmek, işleri büyütmek ve müşterilerine daha iyi bir deneyim sunmayı amaçlamaktadır.It also wants to identify up-sell and cross-sell opportunities, develop compelling new features, drive business growth, and provide a better experience to its customers.

Bu günlükleri analiz etmek için, şirketin şirket içi veri deposunda bulunan müşteri bilgileri, oyun bilgileri ve pazarlama kampanyası bilgileri gibi başvuru verilerini kullanması gerekir.To analyze these logs, the company needs to use reference data such as customer information, game information, and marketing campaign information that is in an on-premises data store. Şirket bu verileri şirket içi veri deposundan bir bulut veri deposunda sahip olduğu ek günlük verileriyle bir arada kullanmak istemektedir.The company wants to utilize this data from the on-premises data store, combining it with additional log data that it has in a cloud data store.

Öngörüleri ayıklamak için, bulutta (Azure HDInsight) bir Spark kümesi kullanarak birleştirilmiş verileri işlemeyi ve bu verilerin üzerine kolayca bir rapor oluşturmak için dönüştürülen verileri Azure SYNAPSE Analytics gibi bir bulut veri ambarında yayımlamayı planlamaktadır.To extract insights, it hopes to process the joined data by using a Spark cluster in the cloud (Azure HDInsight), and publish the transformed data into a cloud data warehouse such as Azure Synapse Analytics to easily build a report on top of it. Bu iş akışını otomatikleştirmek ve bunu günlük olarak izleyip yönetmek istiyor.They want to automate this workflow, and monitor and manage it on a daily schedule. Ayrıca bu iş akışını blob deposu kapsayıcısına dosyalar ulaştığında yürütmek istiyor.They also want to execute it when files land in a blob store container.

Azure Data Factory, bu tür veri senaryolarını çözen platformdur.Azure Data Factory is the platform that solves such data scenarios. Veri hareketini düzenlemek ve verileri ölçeklendirmeye dönüştürmek için veri odaklı iş akışları oluşturmanıza olanak sağlayan bulut tabanlı ETL ve veri tümleştirme hizmetidir.It is the cloud-based ETL and data integration service that allows you to create data-driven workflows for orchestrating data movement and transforming data at scale. Azure Data Factory platformunu kullanarak farklı veri depolarından veri alabilen veri odaklı iş akışları (işlem hattı olarak adlandırılır) oluşturabilir ve zamanlayabilirsiniz.Using Azure Data Factory, you can create and schedule data-driven workflows (called pipelines) that can ingest data from disparate data stores. Verileri görsel olarak veri akışları ile veya Azure HDInsight Hadoop, Azure Databricks ve Azure SQL veritabanı gibi işlem hizmetlerini kullanarak dönüştüren karmaşık ETL işlemleri oluşturabilirsiniz.You can build complex ETL processes that transform data visually with data flows or by using compute services such as Azure HDInsight Hadoop, Azure Databricks, and Azure SQL Database.

Ayrıca, dönüştürülmüş verilerinizi iş zekası için Azure SYNAPSE Analytics for Business Intelligence (BI) uygulamaları gibi veri depolarında yayımlayabilirsiniz.Additionally, you can publish your transformed data to data stores such as Azure Synapse Analytics for business intelligence (BI) applications to consume. Sonuç olarak, Azure Data Factory sayesinde ham veriler daha iyi iş kararları için anlamlı veri depoları ve veri gölleri halinde düzenlenebilir.Ultimately, through Azure Data Factory, raw data can be organized into meaningful data stores and data lakes for better business decisions.

Data Factory'nin üstten görünümü

Nasıl çalışır?How does it work?

Data Factory, veri mühendisleri için uçtan uca tam kapsamlı bir platform sunan bağlantılı sistemlerden oluşur.Data Factory contains a series of interconnected systems that provide a complete end-to-end platform for data engineers.

Bağlanma ve toplamaConnect and collect

Kuruluşlar şirket içinde, bulutta bulunan yapılandırılmış, yapılandırılmamış veya yarı yapılandırılmış ve tümü farklı aralık ve hızlarda gelen farklı kaynaklarda bulunan çeşitli veri türlerine sahiptir.Enterprises have data of various types that are located in disparate sources on-premises, in the cloud, structured, unstructured, and semi-structured, all arriving at different intervals and speeds.

Bilgi üretim sistemi oluşturmanın ilk adımı hizmet olarak yazılım (SaaS) hizmetleri, veritabanları, dosya paylaşımları, FTP, web hizmetleri gibi tüm gerekli veri kaynaklarına ve işleme çalışmalarına bağlanmaktır.The first step in building an information production system is to connect to all the required sources of data and processing, such as software-as-a-service (SaaS) services, databases, file shares, and FTP web services. Sonraki adım ise takip eden işleme çalışmaları için gerektiğinde verileri merkezi bir konuma taşımaktır.The next step is to move the data as needed to a centralized location for subsequent processing.

Data Factory olmadığında, kuruluşların bu veri kaynaklarını ve işleme çalışmalarını tümleştirmek için özel veri taşıma bileşenleri oluşturması veya özel hizmetler yazması gerekir.Without Data Factory, enterprises must build custom data movement components or write custom services to integrate these data sources and processing. Bu tür sistemleri tümleştirmenin ve bakımını yapmanın maliyeti yüksektir.It's expensive and hard to integrate and maintain such systems. Buna ek olarak bu sistemlerde tamamen yönetilebilir bir hizmetin sunduğu kurumsal sınıf izleme, uyarı oluşturma ve denetim özellikleri mevcut değildir.In addition, they often lack the enterprise-grade monitoring, alerting, and the controls that a fully managed service can offer.

Data Factory, veri işlem hattındaki kopyalama etkinliğini kullanarak daha fazla analiz için hem şirket içi hem de bulut kaynak veri mağazalarından verileri bulutta bir merkezileşmeyi veri deposuna taşıyabilirsiniz.With Data Factory, you can use the Copy Activity in a data pipeline to move data from both on-premises and cloud source data stores to a centralization data store in the cloud for further analysis. Örneğin, Azure Data Lake Storage verileri toplayabilir ve Azure Data Lake Analytics bir işlem hizmeti kullanarak verileri daha sonra dönüştürebilirsiniz.For example, you can collect data in Azure Data Lake Storage and transform the data later by using an Azure Data Lake Analytics compute service. Verileri Azure Blob depolama alanından toplayıp daha sonra Azure HDInsight Hadoop kümesi kullanarak da dönüştürebilirsiniz.You can also collect data in Azure Blob storage and transform it later by using an Azure HDInsight Hadoop cluster.

Dönüştürme ve zenginleştirmeTransform and enrich

Veriler buluttaki merkezi bir veri deposunda mevcut olduktan sonra, toplanan verileri ADF eşleme veri akışlarını kullanarak işleyin veya dönüştürün.After data is present in a centralized data store in the cloud, process or transform the collected data by using ADF mapping data flows. Veri akışları, veri mühendislerinin Spark kümelerini veya Spark programlamayı anlamaya gerek kalmadan Spark üzerinde yürütülen veri dönüştürme grafikleri oluşturmasına ve bakımını uygulamasına olanak tanır.Data flows enable data engineers to build and maintain data transformation graphs that execute on Spark without needing to understand Spark clusters or Spark programming.

Dönüştürmeleri el ile kodlayarak, ADF, HDInsight Hadoop, Spark, Data Lake Analytics ve Machine Learning gibi işlem hizmetlerinde dönüşümlerinizi yürütmek için dış etkinlikleri destekler.If you prefer to code transformations by hand, ADF supports external activities for executing your transformations on compute services such as HDInsight Hadoop, Spark, Data Lake Analytics, and Machine Learning.

CI/CD ve yayımlamaCI/CD and publish

Data Factory, Azure DevOps ve GitHub kullanarak veri işlem hatlarınızın CI/CD 'si için tam destek sunar .Data Factory offers full support for CI/CD of your data pipelines using Azure DevOps and GitHub. Bu, tamamlanmış ürünü yayımlamadan önce ETL işlemlerinizi artımlı olarak geliştirmenize ve sunmanıza olanak tanır.This allows you to incrementally develop and deliver your ETL processes before publishing the finished product. Ham veriler iş için kullanılabilir biçime getirildikten sonra, verileri Azure Veri Ambarı, Azure SQL Veritabanı, Azure CosmosDB'ye veya şirket kullanıcılarınızın iş zekası araçlarından işaret edebildiği herhangi bir analiz altyapısına yükleyebilirsiniz.After the raw data has been refined into a business-ready consumable form, load the data into Azure Data Warehouse, Azure SQL Database, Azure CosmosDB, or whichever analytics engine your business users can point to from their business intelligence tools.

İzleyiciMonitor

Veri tümleştirme işlem hattınızı başarıyla oluşturup dağıtarak iyileştirilmiş verilerden iş değeri elde ettikten sonra, başarı ve hata oranları için zamanlanmış etkinlikleri ve işlem hatlarını izleyin.After you have successfully built and deployed your data integration pipeline, providing business value from refined data, monitor the scheduled activities and pipelines for success and failure rates. Azure Data Factory, Azure Izleyici, API, PowerShell, Azure Izleyici günlükleri ve Azure portal sistem durumu bölmeleri aracılığıyla işlem hattı izleme için yerleşik desteğe sahiptir.Azure Data Factory has built-in support for pipeline monitoring via Azure Monitor, API, PowerShell, Azure Monitor logs, and health panels on the Azure portal.

Üst düzey kavramlarTop-level concepts

Azure aboneliğinin bir veya birden çok Azure Data Factory örneği (veya veri fabrikası) olabilir.An Azure subscription might have one or more Azure Data Factory instances (or data factories). Azure Data Factory, aşağıdaki anahtar bileşenlerinden oluşur.Azure Data Factory is composed of below key components.

  • PipelinesPipelines
  • EtkinliklerActivities
  • Veri kümeleriDatasets
  • Bağlı hizmetlerLinked services
  • Veri AkışlarıData Flows
  • Tümleştirme Çalışma ZamanlarıIntegration Runtimes

Bu bileşenler, üzerinde veri taşıma ve dönüştürme adımları ile veri odaklı iş akışları oluşturabileceğiniz platformu sağlamak üzere birlikte çalışır.These components work together to provide the platform on which you can compose data-driven workflows with steps to move and transform data.

İşlem HattıPipeline

Bir veri fabrikasında bir veya daha fazla işlem hattı olabilir.A data factory might have one or more pipelines. İşlem hattı, bir iş birimini gerçekleştiren etkinliklerden oluşan mantıksal gruptur.A pipeline is a logical grouping of activities that performs a unit of work. İşlem hattındaki etkinlikler birlikte bir görevi gerçekleştirir.Together, the activities in a pipeline perform a task. Örneğin, bir işlem hattı Azure blobundan verileri alan ve ardından HDInsight kümesinde Hive sorgusu çalıştırarak verileri bölümlere ayıran bir grup etkinlik içerebilir.For example, a pipeline can contain a group of activities that ingests data from an Azure blob, and then runs a Hive query on an HDInsight cluster to partition the data.

İşlem hattının avantajı, etkinliklerin her birini tek tek yönetmek yerine bir küme olarak yönetmenize olanak tanımasıdır.The benefit of this is that the pipeline allows you to manage the activities as a set instead of managing each one individually. Bir işlem hattındaki etkinlikler, sırayla çalışmak üzere birbirine zincirlenebilir veya paralel olarak birbirinden bağımsız çalışabilir.The activities in a pipeline can be chained together to operate sequentially, or they can operate independently in parallel.

Veri akışlarını eşlemeMapping data flows

Herhangi bir boyuttaki verileri dönüştürmek için kullanabileceğiniz veri dönüştürme mantığının grafiklerini oluşturun ve yönetin.Create and manage graphs of data transformation logic that you can use to transform any-sized data. Yeniden kullanılabilir bir veri dönüştürme yordamları kitaplığı oluşturabilir ve bu işlemleri ADF işlem hatlarınızın ölçeği genişletilmiş bir şekilde yürütebilirsiniz.You can build-up a reusable library of data transformation routines and execute those processes in a scaled-out manner from your ADF pipelines. Data Factory, mantığınızı, ihtiyacınız olduğunda açılan ve aşağı dönerek bir Spark kümesinde yürütecektir.Data Factory will execute your logic on a Spark cluster that spins-up and spins-down when you need it. Kümeleri yönetmeniz veya korumanız gerekmez.You won't ever have to manage or maintain clusters.

EtkinlikActivity

Etkinlikler bir işlem hattındaki işleme adımını temsil eder.Activities represent a processing step in a pipeline. Örneğin, bir veri deposundan başka bir veri deposuna veri kopyalamak için kopyalama etkinliğini kullanabilirsiniz.For example, you might use a copy activity to copy data from one data store to another data store. Benzer şekilde, verilerinizi dönüştürmek veya analiz etmek amacıyla Azure HDInsight kümesinde bir Hive sorgusu çalıştıran bir Hive etkinliği kullanabilirsiniz.Similarly, you might use a Hive activity, which runs a Hive query on an Azure HDInsight cluster, to transform or analyze your data. Data Factory üç tür etkinliği destekler: veri taşıma etkinlikleri, veri dönüştürme etkinlikleri ve denetim etkinlikleri.Data Factory supports three types of activities: data movement activities, data transformation activities, and control activities.

Veri kümeleriDatasets

Veri kümeleri, veri depoları içinde etkinliklerinizde giriş veya çıkış olarak kullanmak istediğiniz verilere işaret eden veya başvuruda bulunan veri yapılarını temsil eder.Datasets represent data structures within the data stores, which simply point to or reference the data you want to use in your activities as inputs or outputs.

Bağlı hizmetlerLinked services

Bağlı hizmetler, dış kaynaklara bağlanmak için Data Factory'ye gereken bağlantı bilgilerini tanımlayan bağlantı dizelerine çok benzer.Linked services are much like connection strings, which define the connection information that's needed for Data Factory to connect to external resources. Şöyle düşünün: bağlı bir hizmet, veri kaynağıyla bağlantıyı tanımlar ve veri kümesi verilerin yapısını temsil eder.Think of it this way: a linked service defines the connection to the data source, and a dataset represents the structure of the data. Örneğin, Azure Depolama bağlı hizmeti Azure Depolama hesabına bağlanacak bağlantı dizesini belirtir.For example, an Azure Storage-linked service specifies a connection string to connect to the Azure Storage account. Ayrıca, bir Azure blob veri kümesi blob kapsayıcıyı ve verileri içeren klasörü belirtir.Additionally, an Azure blob dataset specifies the blob container and the folder that contains the data.

Bağlı hizmetler Data Factory’de iki amaçla kullanılır:Linked services are used for two purposes in Data Factory:

  • Bir SQL Server veritabanı, Oracle veritabanı, dosya paylaşma veya Azure Blob depolama hesabı içeren, ancak bunlarla sınırlı olmayan bir veri deposunu temsil etmek için.To represent a data store that includes, but isn't limited to, a SQL Server database, Oracle database, file share, or Azure blob storage account. Desteklenen veri depolarının listesi için kopyalama etkinliği makalesine bakın.For a list of supported data stores, see the copy activity article.

  • Bir etkinliğin yürütülmesini barındırameyen bir işlem kaynağını temsil etmek için.To represent a compute resource that can host the execution of an activity. Örneğin, HDInsightHive etkinliği bir HDInsight Hadoop kümesinde yürütülür.For example, the HDInsightHive activity runs on an HDInsight Hadoop cluster. Dönüştürme etkinlikleri ve desteklenen işlem ortamlarının listesi için veri dönüştürme makalesine bakın.For a list of transformation activities and supported compute environments, see the transform data article.

TetikleyicilerTriggers

Tetikleyiciler, bir işlem hattı çalıştırmasının başlatılması gereken zamanı belirleyen işlem birimini temsil eder.Triggers represent the unit of processing that determines when a pipeline execution needs to be kicked off. Farklı etkinlik türleri için farklı tetikleyici türleri vardır.There are different types of triggers for different types of events.

İşlem hattı çalıştırmalarıPipeline runs

İşlem hattı çalıştırması, işlem hattı yürütme örneğidir.A pipeline run is an instance of the pipeline execution. İşlem hattı çalıştırmaları örneği genelde bağımsız değişkenlerin işlem hatlarında tanımlanan parametrelere iletilmesiyle oluşturulur.Pipeline runs are typically instantiated by passing the arguments to the parameters that are defined in pipelines. Bağımsız değişkenler el ile veya tetikleyici tanımı içinde geçirilebilir.The arguments can be passed manually or within the trigger definition.

ParametrelerParameters

Parametreler salt okunur yapılandırmanın anahtar-değer çiftleridir.Parameters are key-value pairs of read-only configuration.Parametreler işlem hattında tanımlanır.  Parameters are defined in the pipeline. Tanımlı parametrelerin bağımsız değişkenleri, bir tetikleyici tarafından oluşturulan çalıştırma bağlamı veya el ile yürütülen işlem hattından yürütme sırasında geçirilir.The arguments for the defined parameters are passed during execution from the run context that was created by a trigger or a pipeline that was executed manually. İşlem hattındaki etkinlikler parametre değerlerini kullanır.Activities within the pipeline consume the parameter values.

Veri kümesi, türü kesin olarak belirtilmiş bir parametre ve yeniden kullanılabilir/başvurulabilir bir varlıktır.A dataset is a strongly typed parameter and a reusable/referenceable entity. Bir etkinlik, veri kümelerine başvurabilir ve veri kümesi tanımında belirtilen özellikleri kullanabilir.An activity can reference datasets and can consume the properties that are defined in the dataset definition.

Bağlı hizmet de türü kesin olarak belirtilmiş ve veri deposu ya da işlem ortamı ile bağlantı bilgilerini içeren bir parametredir.A linked service is also a strongly typed parameter that contains the connection information to either a data store or a compute environment. Bu da yeniden kullanılabilir/başvurulabilir bir varlıktır.It is also a reusable/referenceable entity.

Denetim akışıControl flow

Denetim akışı, işlem hattı düzeyinde ve işlem hattı talep üzerine ya da bir tetikleyiciden çağrılırken geçirilen bağımsız değişkenlerde tanımlanabilen dizi, dallanma ve parametrelerdeki zincirleme etkinliklerini içeren işlem hattı etkinliklerinin düzenlenmesidir.Control flow is an orchestration of pipeline activities that includes chaining activities in a sequence, branching, defining parameters at the pipeline level, and passing arguments while invoking the pipeline on-demand or from a trigger. Ayrıca özel durum geçirme ve döngü kapsayıcılarını, diğer bir deyişle For-each yineleyicilerini içerir.It also includes custom-state passing and looping containers, that is, For-each iterators.

DeğişkenlerVariables

Değişkenler, geçici değerleri depolamak için ardışık düzen içinde kullanılabilir ve ayrıca işlem hatları, veri akışları ve diğer etkinlikler arasında değer geçirmeyi etkinleştirmek için parametrelerle birlikte kullanılabilir.Variables can be used inside of pipelines to store temporary values and can also be used in conjunction with parameters to enable passing values between pipelines, data flows, and other activities.

Sonraki adımlarNext steps

Araştırılacak sonraki adım belgelerde aşağıdaki önemli adımları bulabilirsiniz:Here are important next step documents to explore: