Azure Data Factory veya Synapse Analytics kullanarak Netezza'dan veri kopyalama
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!
Bu makalede, Netezza'dan veri kopyalamak için Azure Data Factory veya Synapse Analytics işlem hatlarında Kopyalama Etkinliği'nin nasıl kullanılacağı özetlenmiştir. Makale, Kopyalama Etkinliği'ne genel bir genel bakış sunan Kopyalama Etkinliği üzerine derlenmektedir.
İpucu
Netezza'dan Azure'a veri geçişi senaryosu için Şirket içi Netezza sunucusundan Azure'a veri geçirme bölümünden daha fazla bilgi edinin.
Desteklenen özellikler
Bu Netezza bağlayıcısı aşağıdaki özellikler için desteklenir:
Desteklenen özellikler | IR |
---|---|
Kopyalama etkinliği (kaynak/-) | (1) (2) |
Arama etkinliği | (1) (2) |
(1) Azure tümleştirme çalışma zamanı (2) Şirket içinde barındırılan tümleştirme çalışma zamanı
Kopyalama Etkinliği'nin kaynak ve havuz olarak desteklediği veri depolarının listesi için bkz . Desteklenen veri depoları ve biçimleri.
Bu Netezza bağlayıcısı şu desteği destekler:
- Kaynaktan paralel kopyalama. Ayrıntılar için Netezza'dan paralel kopya bölümüne bakın.
- Netezza Performance Server sürüm 11.
- Bu makaledeki Windows sürümleri.
Hizmet, bağlantıyı etkinleştirmek için yerleşik bir sürücü sağlar. Bu bağlayıcıyı kullanmak için herhangi bir sürücüyü el ile yüklemeniz gerekmez.
Önkoşullar
Veri deponuz bir şirket içi ağ, Azure sanal ağı veya Amazon Sanal Özel Bulut içinde bulunuyorsa, şirket içinde barındırılan tümleştirme çalışma zamanını buna bağlanmak için yapılandırmanız gerekir.
Veri deponuz yönetilen bir bulut veri hizmetiyse Azure Integration Runtime'ı kullanabilirsiniz. Erişim, güvenlik duvarı kurallarında onaylanan IP'ler ile sınırlıysa Azure Integration Runtime IP'lerini izin verme listesine ekleyebilirsiniz.
Şirket içinde barındırılan tümleştirme çalışma zamanı yüklemeden ve yapılandırmadan şirket içi ağa erişmek için Azure Data Factory'deki yönetilen sanal ağ tümleştirme çalışma zamanı özelliğini de kullanabilirsiniz.
Data Factory tarafından desteklenen ağ güvenlik mekanizmaları ve seçenekleri hakkında daha fazla bilgi için bkz . Veri erişim stratejileri.
Kullanmaya başlayın
.NET SDK, Python SDK, Azure PowerShell, REST API veya Azure Resource Manager şablonu kullanarak kopyalama etkinliği kullanan bir işlem hattı oluşturabilirsiniz. Kopyalama etkinliğiyle işlem hattı oluşturmaya yönelik adım adım yönergeler için Kopyalama Etkinliği öğreticisinebakın.
Kullanıcı arabirimini kullanarak Netezza'ya bağlı hizmet oluşturma
Azure portalı kullanıcı arabiriminde Netezza'ya bağlı bir hizmet oluşturmak için aşağıdaki adımları kullanın.
Azure Data Factory veya Synapse çalışma alanınızda Yönet sekmesine göz atın ve Bağlı Hizmetler'i seçin, ardından Yeni'ye tıklayın:
Netezza'yı arayın ve Netezza bağlayıcısını seçin.
Hizmet ayrıntılarını yapılandırın, bağlantıyı test edin ve yeni bağlı hizmeti oluşturun.
Bağlayıcı yapılandırma ayrıntıları
Aşağıdaki bölümlerde Netezza bağlayıcısına özgü varlıkları tanımlamak için kullanabileceğiniz özelliklerle ilgili ayrıntılar sağlanır.
Bağlı hizmet özellikleri
Netezza bağlı hizmeti için aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | type özelliği Netezza olarak ayarlanmalıdır. | Yes |
connectionString | Netezza'ya bağlanmak için odbc bağlantı dizesi. Ayrıca Azure Key Vault'a parola ekleyebilir ve yapılandırmayı pwd bağlantı dizesi çıkarabilirsiniz. Diğer ayrıntılarla birlikte aşağıdaki örneklere ve Azure Key Vault'ta kimlik bilgilerini depolama makalesine bakın. |
Yes |
connectVia | Veri deposuna bağlanmak için kullanılacak Integration Runtime. Önkoşullar bölümünden daha fazla bilgi edinin. Belirtilmezse, varsayılan Azure Integration Runtime kullanılır. | Hayır |
Tipik bir bağlantı dizesi.Server=<server>;Port=<port>;Database=<database>;UID=<user name>;PWD=<password>
Aşağıdaki tabloda ayarlayabileceğiniz diğer özellikler açıklanmaktadır:
Özellik | Açıklama | Gerekli |
---|---|---|
SecurityLevel | Sürücünün veri deposu bağlantısı için kullandığı güvenlik düzeyi. Örnek: SecurityLevel=preferredUnSecured . Desteklenen değerler şunlardır:- Yalnızca güvenli değil (onlyUnSecured): Sürücü SSL kullanmaz. - Tercih edilen güvenli olmayan (preferredUnSecured) (varsayılan): Sunucu bir seçenek sağlıyorsa, sürücü SSL kullanmaz. |
Hayır |
Not
Bağlayıcı, Netezza tarafından resmi olarak kullanım dışı bırakıldığından SSLv3'i desteklemez.
Örnek
{
"name": "NetezzaLinkedService",
"properties": {
"type": "Netezza",
"typeProperties": {
"connectionString": "Server=<server>;Port=<port>;Database=<database>;UID=<user name>;PWD=<password>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Örnek: Azure Key Vault'ta parola depolama
{
"name": "NetezzaLinkedService",
"properties": {
"type": "Netezza",
"typeProperties": {
"connectionString": "Server=<server>;Port=<port>;Database=<database>;UID=<user name>;",
"pwd": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Veri kümesi özellikleri
Bu bölümde Netezza veri kümesinin desteklediği özelliklerin listesi sağlanır.
Veri kümelerini tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için bkz . Veri kümeleri.
Netezza'dan veri kopyalamak için veri kümesinin type özelliğini NetezzaTable olarak ayarlayın. Aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Veri kümesinin type özelliği şu şekilde ayarlanmalıdır: NetezzaTable | Yes |
schema | Şemanın adı. | Hayır (etkinlik kaynağında "sorgu" belirtilirse) |
table | Tablonun adı. | Hayır (etkinlik kaynağında "sorgu" belirtilirse) |
tableName | Şema içeren tablonun adı. Bu özellik geriye dönük uyumluluk için desteklenir. Yeni iş yükü için ve table kullanınschema . |
Hayır (etkinlik kaynağında "sorgu" belirtilirse) |
Örnek
{
"name": "NetezzaDataset",
"properties": {
"type": "NetezzaTable",
"linkedServiceName": {
"referenceName": "<Netezza linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties": {}
}
}
Kopyalama Etkinliği özellikleri
Bu bölümde Netezza kaynağının desteklediği özelliklerin listesi sağlanır.
Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için bkz . İşlem hatları.
Kaynak olarak Netezza
İpucu
Veri bölümlemeyi kullanarak Netezza'dan verileri verimli bir şekilde yüklemek için Netezza'dan paralel kopyalama bölümünden daha fazla bilgi edinin.
Netezza'dan veri kopyalamak için Kopyalama Etkinliği'ndeki kaynak türünü NetezzaSource olarak ayarlayın. Kopyalama Etkinliği kaynağı bölümünde aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Kopyalama Etkinliği kaynağının type özelliği NetezzaSource olarak ayarlanmalıdır. | Yes |
query | Verileri okumak için özel SQL sorgusunu kullanın. Örnek: "SELECT * FROM MyTable" |
Hayır (veri kümesinde "tableName" belirtilirse) |
partitionOptions | Netezza'dan veri yüklemek için kullanılan veri bölümleme seçeneklerini belirtir. İzin ver değerleri şunlardır: Hiçbiri (varsayılan), DataSlice ve DynamicRange. Bir bölüm seçeneği etkinleştirildiğinde (başka bir ifadeyle değil None ), Netezza veritabanından verileri eşzamanlı olarak yüklemek için paralellik derecesi kopyalama etkinliği ayarlanarak parallelCopies denetlenmektedir. |
Hayır |
partitionSettings | Veri bölümleme ayarlarının grubunu belirtin. Bölüm seçeneği olmadığında None uygula seçeneği. |
Hayır |
partitionColumnName | Paralel kopyalama için aralık bölümleme tarafından kullanılacak tamsayı türünde kaynak sütunun adını belirtin. Belirtilmezse, tablonun birincil anahtarı otomatik olarak algılanır ve bölüm sütunu olarak kullanılır. Bölüm seçeneği olduğunda DynamicRange uygulayın. Kaynak verileri almak için bir sorgu kullanırsanız WHERE yan tümcesine bağlanın ?AdfRangePartitionColumnName . Bkz. Netezza'dan paralel kopyalama bölümündeki örnek. |
Hayır |
partitionUpperBound | Verileri kopyalamak için bölüm sütununun en yüksek değeri. Bölüm seçeneği olduğunda uygula seçeneğidir DynamicRange . Kaynak verileri almak için sorgu kullanırsanız WHERE yan tümcesine bağlanın ?AdfRangePartitionUpbound . Bir örnek için Netezza'dan paralel kopya bölümüne bakın. |
Hayır |
partitionLowerBound | Verileri kopyalamak için bölüm sütununun en düşük değeri. Bölüm seçeneği olduğunda DynamicRange uygulayın. Kaynak verileri almak için bir sorgu kullanırsanız WHERE yan tümcesine bağlanın ?AdfRangePartitionLowbound . Bir örnek için Netezza'dan paralel kopya bölümüne bakın. |
Hayır |
Örnek:
"activities":[
{
"name": "CopyFromNetezza",
"type": "Copy",
"inputs": [
{
"referenceName": "<Netezza input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "NetezzaSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Netezza'dan paralel kopya
Data Factory Netezza bağlayıcısı, Netezza'dan paralel olarak veri kopyalamak için yerleşik veri bölümleme sağlar. Veri bölümleme seçeneklerini kopyalama etkinliğinin Kaynak tablosunda bulabilirsiniz.
Bölümlenmiş kopyalamayı etkinleştirdiğinizde hizmet, verileri bölümlere göre yüklemek için Netezza kaynağınızda paralel sorgular çalıştırır. Paralel derece, kopyalama etkinliğindeki parallelCopies
ayar tarafından denetlenilir. Örneğin, dört olarak ayarlarsanız parallelCopies
, hizmet aynı anda belirtilen bölüm seçeneğinize ve ayarlarınıza göre dört sorgu oluşturur ve çalıştırır ve her sorgu Netezza veritabanınızdan verilerin bir bölümünü alır.
Özellikle Netezza veritabanınızdan büyük miktarda veri yüklediğinizde veri bölümleme ile paralel kopyalamayı etkinleştirmeniz önerilir. Farklı senaryolar için önerilen yapılandırmalar aşağıdadır. Verileri dosya tabanlı veri deposuna kopyalarken, bir klasöre birden çok dosya olarak yazmanız önerilir (yalnızca klasör adını belirtin), bu durumda performans tek bir dosyaya yazmaktan daha iyidir.
Senaryo | Önerilen ayarlar |
---|---|
Büyük tablodan tam yük. |
Bölüm seçeneği: Veri Dilimi. Yürütme sırasında hizmet, Netezza'nın yerleşik veri dilimlerine göre verileri otomatik olarak bölümlere ayırır ve bölümlere göre kopyalar. |
Özel sorgu kullanarak büyük miktarda veri yükleyin. |
Bölüm seçeneği: Veri Dilimi. Sorgu: SELECT * FROM <TABLENAME> WHERE mod(datasliceid, ?AdfPartitionCount) = ?AdfDataSliceCondition AND <your_additional_where_clause> .Yürütme sırasında, hizmet (kopyalama etkinliğinde ayarlanan paralel kopya numarasıyla) ve ?AdfDataSliceCondition veri dilimi bölüm mantığıyla değiştirir ?AdfPartitionCount ve Netezza'ya gönderir. |
Özel bir sorgu kullanarak, aralık bölümleme için eşit dağıtılmış değere sahip bir tamsayı sütununa sahip olarak büyük miktarda veri yükleyin. |
Bölüm seçenekleri: Dinamik aralık bölümü. Sorgu: SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause> .Bölüm sütunu: Verileri bölümleme için kullanılan sütunu belirtin. Tamsayı veri türüne sahip sütuna göre bölümleyebilirsiniz. Bölüm üst sınırı ve bölüm alt sınırı: Yalnızca alt ve üst aralık arasındaki verileri almak için bölüm sütununa göre filtrelemek isteyip istemediğinizi belirtin. Yürütme sırasında, hizmet , ?AdfRangePartitionUpbound ve ?AdfRangePartitionLowbound yerine ?AdfRangePartitionColumnName her bölüm için gerçek sütun adı ve değer aralıkları ekler ve Netezza'ya gönderir. Örneğin, bölüm sütununuz "ID" alt sınır 1, üst sınır ise 80 olarak ayarlandıysa ve paralel kopya 4 olarak ayarlandıysa, hizmet verileri 4 bölüme göre alır. Kimlikleri sırasıyla [1,20], [21, 40], [41, 60] ve [61, 80] arasındadır. |
Örnek: veri dilimi bölümüyle sorgu
"source": {
"type": "NetezzaSource",
"query": "SELECT * FROM <TABLENAME> WHERE mod(datasliceid, ?AdfPartitionCount) = ?AdfDataSliceCondition AND <your_additional_where_clause>",
"partitionOption": "DataSlice"
}
Örnek: dinamik aralık bölümü olan sorgu
"source": {
"type": "NetezzaSource",
"query": "SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>",
"partitionOption": "DynamicRange",
"partitionSettings": {
"partitionColumnName": "<dynamic_range_partition_column_name>",
"partitionUpperBound": "<upper_value_of_partition_column>",
"partitionLowerBound": "<lower_value_of_partition_column>"
}
}
Arama etkinliği özellikleri
Özellikler hakkında ayrıntılı bilgi edinmek için Arama etkinliği'ne bakın.
İlgili içerik
Kopyalama Etkinliği'nin kaynak ve havuz olarak desteklediği veri depolarının listesi için bkz . Desteklenen veri depoları ve biçimleri.