Azure Data Factory veya Synapse Analytics kullanarak Netezza'dan veri kopyalama

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

Bahşiş

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.

Bahşiş

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/-) ① ②
Arama etkinliği ① ②

(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.

Netezza bağlayıcısı kaynaktan paralel kopyalamayı destekler. Ayrıntılar için Netezza'dan paralel kopya bölümüne bakın.

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.

Başlarken

.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.

  1. 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:

  2. Netezza'yı arayın ve Netezza bağlayıcısını seçin.

    Screenshot of the Netezza connector.

  3. Hizmet ayrıntılarını yapılandırın, bağlantıyı test edin ve yeni bağlı hizmeti oluşturun.

    Screenshot of linked service configuration for Netezza.

Bağlan veya 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
type type özelliği Netezza olarak ayarlanmalıdır. Evet
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.
Evet
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. No

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. Sürücü, SSL sürüm 3 kullanarak tek yönlü kimlik doğrulaması ile SSL bağlantılarını destekler.
Örnek: SecurityLevel=preferredSecured. 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.
- Tercih edilen güvenli (preferredSecured): Sunucu bir seçenek sağlıyorsa, sürücü SSL kullanır.
- Yalnızca güvenli (yalnızca Güvenli): Bir SSL bağlantısı olmadığı sürece sürücü bağlanmaz.
No
CaCertFile Sunucu tarafından kullanılan SSL sertifikasının tam yolu. Örnek: CaCertFile=<cert path>; Evet, SSL etkinse

Ö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
type Veri kümesinin type özelliği şu şekilde ayarlanmalıdır: NetezzaTable Evet
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

Bahşiş

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
type Kopyalama Etkinliği kaynağının type özelliği NetezzaSource olarak ayarlanmalıdır. Evet
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.
No
bölüm Ayarlar Veri bölümleme ayarlarının grubunu belirtin.
Bölüm seçeneği olmadığında Noneuygula seçeneği.
No
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 DynamicRangeuygulayı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.
No
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.
No
partitionLowerBound Verileri kopyalamak için bölüm sütununun en düşük değeri.
Bölüm seçeneği olduğunda DynamicRangeuygulayı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.
No

Ö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.

Screenshot of partition options

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 (yalnızca klasör adını belirtin) yazmanız önerilir; 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 , ?AdfRangePartitionUpboundve ?AdfRangePartitionLowbound yerine ?AdfRangePartitionColumnNameher 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.

Kopyalama Etkinliği'nin kaynak ve havuz olarak desteklediği veri depolarının listesi için bkz . Desteklenen veri depoları ve biçimleri.