Azure Data Factory veya Synapse Analytics kullanarak PostgreSQL'den veri kopyalama (eski)
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, PostgreSQL veritabanından veri kopyalamak için Azure Data Factory ve Synapse Analytics işlem hatlarında Kopyalama Etkinliğinin nasıl kullanılacağı özetlenmiştir. Kopyalama etkinliğine genel bir genel bakış sunan kopyalama etkinliğine genel bakış makalesini oluşturur.
Önemli
Hizmet, daha iyi yerel PostgreSQL desteği sağlayan yeni bir PostgreSQL bağlayıcısı yayımladı. Ayrıntılarla ilgili PostgreSQL bağlayıcısı makalesine bakın.
Desteklenen özellikler
Bu PostgreSQL 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 tarafından kaynak/havuz olarak desteklenen veri depolarının listesi için Desteklenen veri depoları tablosuna bakın.
Özellikle, bu PostgreSQL bağlayıcısı PostgreSQL sürüm 7.4 ve üzerini destekler.
Ö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.
Integration Runtime, 3.7 sürümünden itibaren yerleşik bir PostgreSQL sürücüsü sağlar, bu nedenle herhangi bir sürücüyü el ile yüklemeniz gerekmez.
Başlarken
İş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
Kullanıcı arabirimini kullanarak PostgreSQL'e bağlı hizmet oluşturma
Azure portalı kullanıcı arabiriminde PostgreSQL'e 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:
Postgre'yi arayın ve PostgreSQL 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ğlan veya yapılandırma ayrıntıları
Aşağıdaki bölümlerde, PostgreSQL bağlayıcısına özgü Data Factory varlıklarını tanımlamak için kullanılan özelliklerle ilgili ayrıntılar sağlanır.
Bağlı hizmet özellikleri
PostgreSQL bağlı hizmeti için aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Tür özelliği şu şekilde ayarlanmalıdır: PostgreSql | Yes |
Connectionstring | PostgreSQL için Azure Veritabanı bağlanmak için bir ODBC bağlantı dizesi. Ayrıca Azure Key Vault'a parola ekleyebilir ve yapılandırmayı password 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ır. | Hayır |
Tipik bir bağlantı dizesi.Server=<server>;Database=<database>;Port=<port>;UID=<username>;Password=<Password>
Servis talebinize göre ayarlayabileceğiniz diğer özellikler:
Özellik | Açıklama | Seçenekler | Zorunlu |
---|---|---|---|
EncryptionMethod (EM) | Sürücü ile veritabanı sunucusu arasında gönderilen verileri şifrelemek için sürücünün kullandığı yöntem. Örneğin. EncryptionMethod=<0/1/6>; |
0 (Şifreleme yok) (Varsayılan) / 1 (SSL) / 6 (RequestSSL) | Hayır |
ValidateServerCertificate (VSC) | SSL şifrelemesi etkinleştirildiğinde sürücünün veritabanı sunucusu tarafından gönderilen sertifikayı doğrulayıp doğrulamadığını belirler (Şifreleme Yöntemi=1). Örneğin. ValidateServerCertificate=<0/1>; |
0 (Devre Dışı) (Varsayılan) / 1 (Etkin) | Hayır |
Not
Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı'nı kullanırken ODBC bağlantısı üzerinden tam SSL doğrulaması yapabilmek için PostgreSQL bağlayıcısı yerine bir ODBC türü bağlantısı kullanmanız ve aşağıdaki yapılandırmayı tamamlamanız gerekir:
- Herhangi bir SHIR sunucusunda DSN'yi ayarlayın.
- SHIR sunucularına C:\Windows\ServiceProfiles\DIAHostService\AppData\Roaming\postgresql\root.crt dizinine PostgreSQL için uygun sertifikayı yerleştirin. ODBC sürücüsünün veritabanına ne zaman bağlandığını doğrulamak için SSL sertifikasını arayacağı > yer burasıdır.
- Veri fabrikası bağlantınızda, bağlantı dizesi SHIR sunucularınızda oluşturduğunuz DSN'yi işaret eden bir ODBC türü bağlantısı kullanın.
Örnek:
{
"name": "PostgreSqlLinkedService",
"properties": {
"type": "PostgreSql",
"typeProperties": {
"connectionString": "Server=<server>;Database=<database>;Port=<port>;UID=<username>;Password=<Password>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Örnek: Azure Key Vault'ta parola depolama
{
"name": "PostgreSqlLinkedService",
"properties": {
"type": "PostgreSql",
"typeProperties": {
"connectionString": "Server=<server>;Database=<database>;Port=<port>;UID=<username>;",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
PostgreSQL bağlı hizmetini aşağıdaki yükle birlikte kullanıyorsanız, yine de olduğu gibi desteklenir, ancak bundan sonra yenisini kullanmanız önerilir.
Önceki yük:
{
"name": "PostgreSqlLinkedService",
"properties": {
"type": "PostgreSql",
"typeProperties": {
"server": "<server>",
"database": "<database>",
"username": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Veri kümesi özellikleri
Veri kümelerini tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için veri kümeleri makalesine bakın. Bu bölümde PostgreSQL veri kümesi tarafından desteklenen özelliklerin listesi sağlanır.
PostgreSQL'den veri kopyalamak için aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Veri kümesinin type özelliği şu şekilde ayarlanmalıdır: PostgreSqlTable | 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": "PostgreSQLDataset",
"properties":
{
"type": "PostgreSqlTable",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<PostgreSQL linked service name>",
"type": "LinkedServiceReference"
}
}
}
Yazılan veri kümesini kullanıyorsanız RelationalTable
, bu veri kümesi olduğu gibi desteklenmeye devam ederken, ileriye dönük yeni bir veri kümesini kullanmanız önerilir.
Kopyalama etkinliğinin özellikleri
Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için İşlem hatları makalesine bakın. Bu bölümde PostgreSQL kaynağı tarafından desteklenen özelliklerin listesi sağlanır.
Kaynak olarak PostgreSQL
PostgreSQL'den veri kopyalamak için 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 şu şekilde ayarlanmalıdır: PostgreSqlSource | Yes |
query | Verileri okumak için özel SQL sorgusunu kullanın. Örneğin: "query": "SELECT * FROM \"MySchema\".\"MyTable\"" . |
Hayır (veri kümesinde "tableName" belirtilirse) |
Not
Şema ve tablo adları büyük/küçük harfe duyarlıdır. Bunları sorguda ""
(çift tırnak) içine alın.
Örnek:
"activities":[
{
"name": "CopyFromPostgreSQL",
"type": "Copy",
"inputs": [
{
"referenceName": "<PostgreSQL input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "PostgreSqlSource",
"query": "SELECT * FROM \"MySchema\".\"MyTable\""
},
"sink": {
"type": "<sink type>"
}
}
}
]
Yazılan kaynağı kullanıyorsanız RelationalSource
, yine de olduğu gibi desteklenir, ancak bundan sonra yenisini kullanmanız önerilir.
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 tarafından kaynak ve havuz olarak desteklenen veri depolarının listesi için bkz . desteklenen veri depoları.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin