Azure Data Factory ve Azure Synapse Analytics'te Kopyalama etkinliği
UYGULANANLAR: Azure Data Factory Azure Synapse Analytics
İpucu
Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!
Azure Data Factory ve Synapse işlem hatlarında, şirket içinde ve bulutta bulunan veri depoları arasında veri kopyalamak için Kopyalama etkinliği kullanabilirsiniz. Verileri kopyaladıktan sonra daha fazla dönüştürmek ve analiz etmek için diğer etkinlikleri kullanabilirsiniz. İş zekası (BI) ve uygulama tüketimi için dönüştürme ve analiz sonuçlarını yayımlamak için de Kopyalama etkinliği kullanabilirsiniz.
Kopyalama etkinliği bir tümleştirme çalışma zamanında yürütülür. Farklı veri kopyalama senaryoları için farklı tümleştirme çalışma zamanı türleri kullanabilirsiniz:
- İnternet üzerinden herhangi bir IP'den genel olarak erişilebilen iki veri deposu arasında veri kopyalarken, kopyalama etkinliği için Azure tümleştirme çalışma zamanını kullanabilirsiniz. Bu tümleştirme çalışma zamanı güvenli, güvenilir, ölçeklenebilir ve küresel olarak kullanılabilir.
- Şirket içinde veya erişim denetimi olan bir ağda (örneğin, bir Azure sanal ağı) bulunan veri depolarına veri kopyalarken, şirket içinde barındırılan tümleştirme çalışma zamanı ayarlamanız gerekir.
Tümleştirme çalışma zamanının her kaynak ve havuz veri deposuyla ilişkilendirilmesi gerekir. Kopyalama etkinliği hangi tümleştirme çalışma zamanının kullanılacağını nasıl belirlediği hakkında bilgi için bkz. Kullanılacak IR'yi belirleme.
Not
Aynı Kopyalama etkinliği içinde birden fazla şirket içinde barındırılan tümleştirme çalışma zamanı kullanamazsınız. Etkinliğin kaynağı ve havuzu aynı şirket içinde barındırılan tümleştirme çalışma zamanına bağlanmalıdır.
Bir kaynaktan havuza veri kopyalamak için, Kopyalama etkinliği çalıştıran hizmet şu adımları gerçekleştirir:
- Bir kaynak veri deposundaki verileri okur.
- Serileştirme/seri durumdan çıkarma, sıkıştırma/sıkıştırmayı kaldırma, sütun eşleme vb. gerçekleştirir. Bu işlemleri giriş veri kümesinin, çıktı veri kümesinin ve Kopyalama etkinliği yapılandırmasına göre gerçekleştirir.
- Havuza/hedef veri deposuna veri yazar.
Not
Şirket içinde barındırılan tümleştirme çalışma zamanı bir Kopyalama etkinliği içindeki bir kaynak veya havuz veri deposunda kullanılıyorsa, Kopyalama etkinliği başarılı olması için hem kaynak hem de havuza tümleştirme çalışma zamanını barındıran sunucudan erişilebilir olmalıdır.
Desteklenen veri depoları ve biçimleri
Not
Bir bağlayıcı Önizleme olarak işaretlendiyse bu bağlayıcıyı deneyip bunun hakkındaki görüşlerinizi bize bildirebilirsiniz. Çözümünüzde bir önizleme bağlayıcısı bağımlılığı olmasını istiyorsanız Azure desteğine başvurun.
Desteklenen dosya biçimleri
Azure Data Factory aşağıdaki dosya biçimlerini destekler. Biçim tabanlı ayarlar için her makaleye bakın.
- Avro biçimi
- İkili biçim
- Sınırlandırılmış metin biçimi
- Excel biçimi
- Buzdağı biçimi (yalnızca Azure Data Lake Storage 2. Nesil için)
- JSON biçimi
- ORC biçimi
- Parquet biçimi
- XML biçimi
dosyaları iki dosya tabanlı veri deposu arasında olduğu gibi kopyalamak için Kopyalama etkinliği kullanabilirsiniz; bu durumda veriler serileştirme veya seri durumdan çıkarma olmadan verimli bir şekilde kopyalanır. Ayrıca, belirli bir biçimdeki dosyaları ayrıştırabilir veya oluşturabilirsiniz, örneğin, aşağıdakileri gerçekleştirebilirsiniz:
- SQL Server veritabanından veri kopyalayın ve Parquet biçiminde Azure Data Lake Storage 2. Nesil yazın.
- Şirket içi dosya sisteminden metin (CSV) biçimindeki dosyaları kopyalayın ve Avro biçiminde Azure Blob depolamaya yazın.
- Sıkıştırılmış dosyaları şirket içi dosya sisteminden kopyalayın, anında açın ve ayıklanan dosyaları Azure Data Lake Storage 2. Nesil yazın.
- Verileri Azure Blob depolamadan Gzip sıkıştırılmış metin (CSV) biçiminde kopyalayın ve Azure SQL Veritabanı yazın.
- Serileştirme/seri durumdan çıkarma veya sıkıştırma/sıkıştırmayı kaldırma gerektiren daha birçok etkinlik.
Desteklenen bölgeler
Kopyalama etkinliği etkinleştiren hizmet, Azure tümleştirme çalışma zamanı konumlarında listelenen bölgelerde ve coğrafyalarda genel olarak kullanılabilir. Genel kullanıma sunulan topoloji, genellikle bölgeler arası atlamaları önleyen verimli veri taşıma sağlar. Belirli bir bölgede Data Factory, Synapse Çalışma Alanları ve veri hareketinin kullanılabilirliğini denetlemek için bkz . Bölgeye göre ürünler.
Yapılandırma
İşlem hattıyla Kopyalama etkinliği gerçekleştirmek için aşağıdaki araçlardan veya SDK'lardan birini kullanabilirsiniz:
- Veri Kopyalama aracı
- Azure portal
- .NET SDK'sı
- Python SDK'sı
- Azure PowerShell
- The REST API
- Azure Resource Manager şablonu
Genel olarak, Azure Data Factory veya Synapse işlem hatlarında Kopyalama etkinliği kullanmak için şunları yapmanız gerekir:
- Kaynak veri deposu ve havuz veri deposu için bağlı hizmetler oluşturun. Desteklenen bağlayıcıların listesini bu makalenin Desteklenen veri depoları ve biçimleri bölümünde bulabilirsiniz. Yapılandırma bilgileri ve desteklenen özellikler için bağlayıcı makalesinin "Bağlı hizmet özellikleri" bölümüne bakın.
- Kaynak ve havuz için veri kümeleri oluşturun. Yapılandırma bilgileri ve desteklenen özellikler için kaynak ve havuz bağlayıcısı makalelerinin "Veri kümesi özellikleri" bölümlerine bakın.
- Kopyalama etkinliği ile bir işlem hattı oluşturun. Sonraki bölümde bir örnek verilmiştir.
Sözdizimi
Aşağıdaki Kopyalama etkinliği şablonu desteklenen özelliklerin tam listesini içerir. Senaryonuza uygun olanları belirtin.
"activities":[
{
"name": "CopyActivityTemplate",
"type": "Copy",
"inputs": [
{
"referenceName": "<source dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<sink dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "<source type>",
<properties>
},
"sink": {
"type": "<sink type>"
<properties>
},
"translator":
{
"type": "TabularTranslator",
"columnMappings": "<column mapping>"
},
"dataIntegrationUnits": <number>,
"parallelCopies": <number>,
"enableStaging": true/false,
"stagingSettings": {
<properties>
},
"enableSkipIncompatibleRow": true/false,
"redirectIncompatibleRowSettings": {
<properties>
}
}
}
]
Söz dizimi ayrıntıları
Özellik | Açıklama | Gerekli mi? |
---|---|---|
Tür | Kopyalama etkinliği içinCopy |
Yes |
Giriş | Oluşturduğunuz ve kaynak verilere işaret eden veri kümesini belirtin. Kopyalama etkinliği yalnızca tek bir girişi destekler. | Yes |
Çıkış | Havuz verilerini gösteren oluşturduğunuz veri kümesini belirtin. Kopyalama etkinliği yalnızca tek bir çıkışı destekler. | Yes |
typeProperties | Kopyalama etkinliği yapılandırılacak özellikleri belirtin. | Yes |
kaynak | Kopyalama kaynağı türünü ve verileri almak için ilgili özellikleri belirtin. Daha fazla bilgi için Desteklenen veri depoları ve biçimleri bölümünde listelenen bağlayıcı makalesindeki "Kopyalama etkinliği özellikleri" bölümüne bakın. |
Yes |
batmak | Kopyalama havuzu türünü ve veri yazmak için ilgili özellikleri belirtin. Daha fazla bilgi için Desteklenen veri depoları ve biçimleri bölümünde listelenen bağlayıcı makalesindeki "Kopyalama etkinliği özellikleri" bölümüne bakın. |
Yes |
Translator | Kaynaktan havuza açık sütun eşlemeleri belirtin. Bu özellik, varsayılan kopyalama davranışı gereksinimlerinizi karşılamadığında geçerlidir. Daha fazla bilgi için bkz . Kopyalama etkinliğinde şema eşlemesi. |
Hayır |
dataIntegrationUnits | Azure tümleştirme çalışma zamanının veri kopyalama için kullandığı güç miktarını temsil eden bir ölçü belirtin. Bu birimler daha önce bulut Veri Taşıma Birimleri (DMU) olarak biliniyordu. Daha fazla bilgi için bkz. Veri Entegrasyonu Birimleri. |
Hayır |
parallelCopies | kaynaktan veri okurken ve havuza veri yazarken Kopyalama etkinliği kullanmasını istediğiniz paralelliği belirtin. Daha fazla bilgi için bkz . Paralel kopyalama. |
Hayır |
korumak | Veri kopyalama sırasında meta verilerin/ACL'lerin korunup korunmayacağını belirtin. Daha fazla bilgi için bkz . Meta verileri koruma. |
Hayır |
enableStaging stagingSettings |
Verileri doğrudan kaynaktan havuza kopyalamak yerine Blob depolamada ara verilerin hazırlanıp hazırlanmayacağını belirtin. Yararlı senaryolar ve yapılandırma ayrıntıları hakkında bilgi için bkz . Aşamalı kopyalama. |
Hayır |
enableSkipIncompatibleRow redirectIncompatibleRowSettings |
Kaynaktan havuza veri kopyalarken uyumsuz satırların nasıl işleneceğini seçin. Daha fazla bilgi için bkz . Hataya dayanıklılık. |
Hayır |
İzleme
Azure Data Factory ve Synapse işlem hatlarında Kopyalama etkinliği çalıştırmasını hem görsel hem de programlı olarak izleyebilirsiniz. Ayrıntılar için bkz . Kopyalama etkinliğini izleme.
Artımlı kopyalama
Data Factory ve Synapse işlem hatları, delta verilerini bir kaynak veri deposundan havuz veri deposuna artımlı olarak kopyalamanızı sağlar. Ayrıntılar için bkz . Öğretici: Verileri artımlı olarak kopyalama.
Performans ve ayar
Kopyalama etkinliği izleme deneyimi, etkinlik çalıştırmalarınızın her biri için kopyalama performansı istatistiklerini gösterir. Kopyalama etkinliği performansı ve ölçeklenebilirlik kılavuzu, Kopyalama etkinliği aracılığıyla veri taşıma performansını etkileyen önemli faktörleri açıklar. Ayrıca test sırasında gözlemlenen performans değerlerini listeler ve Kopyalama etkinliği performansını iyileştirmeyi açıklar.
Son başarısız çalıştırmadan devam et
Kopyalama etkinliği, dosya tabanlı depolar arasında ikili biçimli olarak büyük boyutlu dosyaları olduğu gibi kopyalayıp kaynaktan havuza klasör/dosya hiyerarşisini korumayı seçtiğinizde (örneğin, Amazon S3'ten Azure Data Lake Storage 2. Nesil'e veri geçirmek için) son başarısız çalıştırmadan devam etmeyi destekler. Şu dosya tabanlı bağlayıcılar için geçerlidir: Amazon S3, Amazon S3 Uyumlu Depolama Azure Blobu, Azure Data Lake Storage 1. Nesil, Azure Data Lake Storage 2. Nesil, Azure Dosyalar, Dosya Sistemi, FTP, Google Cloud Storage, HDFS, Oracle Cloud Storage ve SFTP.
Kopyalama etkinliği özgeçmişini aşağıdaki iki yolla kullanabilirsiniz:
Etkinlik düzeyi yeniden denemesi: Kopyalama etkinliğinde yeniden deneme sayısını ayarlayabilirsiniz. İşlem hattı yürütmesi sırasında, bu kopyalama etkinliği çalıştırması başarısız olursa, sonraki otomatik yeniden deneme son denemenin hata noktasından başlar.
Başarısız etkinlikten yeniden çalıştırma: İşlem hattı yürütmesi tamamlandıktan sonra, ADF kullanıcı arabirimi izleme görünümünde veya program aracılığıyla başarısız etkinlikten yeniden çalıştırmayı tetikleyebilirsiniz. Başarısız etkinlik bir kopyalama etkinliğiyse işlem hattı yalnızca bu etkinlikten yeniden çalıştırılmaz, aynı zamanda önceki çalıştırmanın hata noktasından da devam eder.
Dikkate almak için birkaç nokta:
- Özgeçmiş dosya düzeyinde gerçekleşir. Bir dosyayı kopyalarken kopyalama etkinliği başarısız olursa, sonraki çalıştırmada bu dosya yeniden kopyalanır.
- Özgeçmişin düzgün çalışması için, yeniden çalıştırmalar arasındaki kopyalama etkinliği ayarlarını değiştirmeyin.
- Amazon S3, Azure Blob, Azure Data Lake Storage 2. Nesil ve Google Cloud Storage'dan veri kopyaladığınızda, kopyalama etkinliği rastgele sayıda kopyalanan dosyadan devam edebilir. Kaynak olarak dosya tabanlı bağlayıcıların geri kalanı için şu anda kopyalama etkinliği sınırlı sayıda dosyadan sürdürmeyi desteklese de, genellikle on binlerce dosya aralığındadır ve dosya yollarının uzunluğuna bağlı olarak değişir; bu sayıyı aşan dosyalar yeniden çalıştırmalar sırasında yeniden kopyalanır.
İkili dosya kopyalama dışındaki diğer senaryolarda kopyalama etkinliği yeniden çalıştırması baştan başlar.
Not
Şirket içinde barındırılan tümleştirme çalışma zamanı aracılığıyla son başarısız çalıştırmadan devam etme artık yalnızca şirket içinde barındırılan tümleştirme çalışma zamanı sürüm 5.43.8935.2 veya üzerinde desteklenmektedir.
Verilerle birlikte meta verileri koruma
Verileri kaynaktan havuza kopyalarken, data lake geçişi gibi senaryolarda, kopyalama etkinliğini kullanarak meta verileri ve ACL'leri korumayı da seçebilirsiniz. Ayrıntılar için bkz . Meta verileri koruma.
Dosya tabanlı havuza meta veri etiketleri ekleme
Havuz Azure Depolama tabanlı olduğunda (Azure data lake storage veya Azure Blob Depolama), dosyalara bazı meta veriler eklemeyi tercih edebiliriz. Bu meta veriler, dosya özelliklerinin bir parçası olarak Anahtar-Değer çiftleri olarak görünür. Tüm dosya tabanlı havuz türleri için işlem hattı parametrelerini, sistem değişkenlerini, işlevleri ve değişkenleri kullanarak dinamik içerik içeren meta veriler ekleyebilirsiniz. Buna ek olarak, ikili dosya tabanlı havuz için$ $LASTMODIFIED anahtar sözcüğünü kullanarak Son Değiştirme tarihi saatini (kaynak dosyanın) yanı sıra özel değerleri havuz dosyasına meta veri olarak ekleme seçeneğiniz vardır.
Şema ve veri türü eşlemesi
Kopyalama etkinliği kaynak verilerinizi havuzunuza nasıl eşlediğini öğrenmek için bkz. Şema ve veri türü eşlemesi.
Kopyalama sırasında ek sütunlar ekleme
Kaynak veri deposundan havuza veri kopyalamaya ek olarak, havuza kopyalanacak ek veri sütunları eklemek için de yapılandırabilirsiniz. Örneğin:
- Dosya tabanlı bir kaynaktan kopyaladığınızda, göreli dosya yolunu verilerin hangi dosyadan geldiğini izlemek için ek bir sütun olarak depolayın.
- Belirtilen kaynak sütunu başka bir sütun olarak çoğaltın.
- İşlem hattı adı/işlem hattı kimliği gibi ADF sistem değişkenlerini eklemek veya yukarı akış etkinliğinin çıkışındaki diğer dinamik değerleri depolamak için ADF ifadesiyle bir sütun ekleyin.
- Aşağı akış tüketim ihtiyaçlarınızı karşılamak için statik değere sahip bir sütun ekleyin.
Kopyalama etkinliği kaynak sekmesinde aşağıdaki yapılandırmayı bulabilirsiniz. Ayrıca, tanımlı sütun adlarınızı kullanarak kopyalama etkinliği şeması eşlemesindeki bu ek sütunları her zamanki gibi eşleyebilirsiniz.
İpucu
Bu özellik en son veri kümesi modeliyle çalışır. Kullanıcı arabiriminde bu seçeneği görmüyorsanız yeni bir veri kümesi oluşturmayı deneyin.
Program aracılığıyla yapılandırmak için kopyalama etkinliği kaynağınıza özelliğini ekleyin additionalColumns
:
Özellik | Açıklama | Gerekli |
---|---|---|
additionalColumns | Havuza kopyalamak için ek veri sütunları ekleyin. Dizinin altındaki additionalColumns her nesne fazladan bir sütunu temsil eder. , name sütun adını tanımlar ve value bu sütunun veri değerini belirtir.İzin verilen veri değerleri şunlardır: - $$FILEPATH - ayrılmış değişken, kaynak dosyaların veri kümesinde belirtilen klasör yolunun göreli yolunu depolamayı gösterir. Dosya tabanlı kaynağa uygula.- $$COLUMN:<source_column_name> - ayrılmış değişken deseni, belirtilen kaynak sütunu başka bir sütun olarak çoğaltmayı gösterir- Expression - Statik değer |
Hayır |
Örnek:
"activities":[
{
"name": "CopyWithAdditionalColumns",
"type": "Copy",
"inputs": [...],
"outputs": [...],
"typeProperties": {
"source": {
"type": "<source type>",
"additionalColumns": [
{
"name": "filePath",
"value": "$$FILEPATH"
},
{
"name": "newColName",
"value": "$$COLUMN:SourceColumnA"
},
{
"name": "pipelineName",
"value": {
"value": "@pipeline().Pipeline",
"type": "Expression"
}
},
{
"name": "staticValue",
"value": "sampleValue"
}
],
...
},
"sink": {
"type": "<sink type>"
}
}
}
]
İpucu
Ek sütunları yapılandırdıktan sonra Eşleme sekmesinde bunları hedef havuzunuza eşlemeyi unutmayın.
Havuz tablolarını otomatik oluşturma
SQL veritabanına/Azure Synapse Analytics'e veri kopyaladığınızda, hedef tablo yoksa kopyalama etkinliği kaynak verilere göre otomatik olarak oluşturulmasını destekler. Verileri hızla yüklemeye ve SQL veritabanını/Azure Synapse Analytics'i değerlendirmeye başlamanıza yardımcı olmayı amaçlar. Veri alımından sonra havuz tablosu şemasını gözden geçirebilir ve ihtiyaçlarınıza göre ayarlayabilirsiniz.
Bu özellik, herhangi bir kaynaktan aşağıdaki havuz veri depolarına veri kopyalarken desteklenir. Seçeneğini ADF yazma kullanıcı arabiriminde ->Kopyalama etkinliği havuz seçeneği -Tablo seçeneği ->>Tabloyu otomatik oluştur'da veya kopyalama etkinliği havuzu yükündeki özellik aracılığıyla tableOption
bulabilirsiniz.
Hataya dayanıklılık
Varsayılan olarak, Kopyalama etkinliği veri kopyalamayı durdurur ve kaynak veri satırları havuz veri satırlarıyla uyumsuz olduğunda bir hata döndürür. Kopyalamanın başarılı olması için, Kopyalama etkinliği uyumsuz satırları atlayıp günlüğe kaydedecek ve yalnızca uyumlu verileri kopyalanacak şekilde yapılandırabilirsiniz. Ayrıntılar için bkz. hataya dayanıklılık Kopyalama etkinliği.
Veri tutarlılığı doğrulama
Verileri kaynaktan hedef depoya taşıdığınızda kopyalama etkinliği, verilerin yalnızca kaynaktan hedef depoya başarıyla kopyalanmadığından, aynı zamanda kaynak ve hedef depo arasında tutarlı olduğu doğrulandığından emin olmak için ek veri tutarlılığı doğrulaması yapmanıza olanak sağlar. Veri taşıma sırasında tutarsız dosyalar bulunduktan sonra kopyalama etkinliğini durdurabilir veya tutarsız dosyaları atlamak için hataya dayanıklılık ayarını etkinleştirerek geri kalanını kopyalamaya devam edebilirsiniz. Kopyalama etkinliğinde oturum günlüğü ayarını etkinleştirerek atlanan dosya adlarını alabilirsiniz. Ayrıntılar için bkz . Kopyalama etkinliğinde veri tutarlılığı doğrulaması.
Oturum günlüğü
Kopyalanan dosya adlarınızı günlüğe kaydedebilirsiniz. Bu, kopyalama etkinliği oturum günlüklerini gözden geçirerek verilerin yalnızca kaynaktan hedef depoya başarıyla kopyalanmasını değil, kaynak ve hedef depo arasında tutarlı olmasını da sağlamanıza yardımcı olabilir. Ayrıntılar için bkz . Oturum açma kopyalama etkinliği .
İlgili içerik
Aşağıdaki hızlı başlangıçlara, öğreticilere ve örneklere bakın: