Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ŞUNLARA UYGULANIR:
Azure Data Factory
Azure Synapse Analytics
Tavsiye
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, Bir Oracle veritabanından ve veritabanından veri kopyalamak için Azure Data Factory'deki kopyalama etkinliğinin nasıl kullanılacağı özetlenmiştir. Kopyalama etkinliğine genel bakış'ı temel alır.
Önemli
Oracle bağlayıcısı sürüm 2.0, geliştirilmiş yerel Oracle desteği sağlar. Çözümünüzde Oracle bağlayıcısı sürüm 1.0 kullanıyorsanız, sürüm 1.0 Destek Sonu aşamasında olduğundan lütfen Oracle bağlayıcısını yükseltin. İşlem hattınız 31 Mart 2026'da başarısız olacak. Sürüm 2.0 ile sürüm 1.0 arasındaki fark hakkında ayrıntılı bilgi için bu bölüme bakın.
Desteklenen özellikler
Bu Oracle bağlayıcısı aşağıdaki özellikler için desteklenir:
| Desteklenen özellikler | Kızılötesi |
|---|---|
| Kopyalama etkinliği (kaynak/çıkış) | (1) (2) |
| Arama etkinliği | (1) (2) |
| Betik etkinliği | (1) (2) |
(1) Azure tümleştirme çalışma zamanı (2) Yerel tümleştirme çalışma zamanı
Kopyalama etkinliği tarafından kaynak veya havuz olarak desteklenen veri depolarının listesi için Desteklenen veri depoları tablosuna bakın.
Bu Oracle bağlayıcısı özellikle şunları destekler:
- 2.0 sürümü için oracle veritabanının aşağıdaki sürümleri:
- Oracle Database 19c ve üzeri
- Oracle Database 18c ve üzeri
- Oracle Database 12c ve üzeri
- Oracle Database 11g ve üzeri
- 1.0 sürümü için oracle veritabanının aşağıdaki sürümleri:
- Oracle 19c R1 (19.1) ve üzeri
- Oracle 18c R1 (18.1) ve üzeri
- Oracle 12c R1 (12.1) ve üzeri
- Oracle 11g R1 (11.1) ve üzeri
- Oracle 10g R1 (10.1) ve üzeri
- Oracle 9i R2 (9.2) ve üzeri
- Oracle 8i R3 (8.1.7) ve üzeri
- Oracle Veritabanı Bulutu Exadata Hizmeti
- Oracle kaynağından paralel kopyalama. Ayrıntılar için Oracle'dan paralel kopya bölümüne bakın.
Uyarı
Oracle proxy sunucusu desteklenmez.
Ö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.
Azure Data Factory'deki yönetilen sanal ağ tümleştirme çalışma zamanı özelliğini kullanarak, şirket içinde barındırılan tümleştirme çalışma zamanı yüklemenize ve yapılandırmanıza gerek kalmadan şirket içi ağa erişebilirsiniz.
Data Factory tarafından desteklenen ağ güvenlik mekanizmaları ve seçenekleri hakkında daha fazla bilgi için bkz . Veri erişim stratejileri.
Tümleştirme çalışma zamanı yerleşik bir Oracle sürücüsü sağlar. Bu nedenle, Oracle'dan ve oracle'a veri kopyalarken bir sürücüyü el ile yüklemeniz gerekmez.
Kullanmaya başlayın
Kopyalama etkinliğini bir işlem hattıyla gerçekleştirmek için aşağıdaki araçlardan veya SDK'lardan birini kullanabilirsiniz:
- Veri Kopyalama aracı
- Azure portalı
- .NET SDK
- Python SDK'sı
- Azure PowerShell
- REST API
- Azure Resource Manager şablonu
Kullanıcı arabirimini kullanarak Oracle'a bağlı hizmet oluşturma
Azure portalı kullanıcı arabiriminde Oracle'a 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:
Oracle araması yapın ve Oracle 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 Oracle bağlayıcısına özgü varlıkları tanımlamak için kullanılan özelliklerle ilgili ayrıntılar sağlanır.
Bağlı hizmet özellikleri
Oracle bağlayıcısı sürüm 2.0 TLS 1.3'i destekler. Oracle bağlayıcısı sürümünüzü sürüm 1.0'dan yükseltmek için bu bölüme bakın. Özellik ayrıntıları için ilgili bölümlere bakın.
Sürüm 2.0
Oracle bağlı hizmeti, 2.0 sürümünü uygularken aşağıdaki özellikleri destekler:
| Mülk | Açıklama | Gerekli |
|---|---|---|
| tür | type özelliği Oracle olarak ayarlanmalıdır. | Evet |
| Sürüm | Belirttiğiniz sürüm. Bu durumda değer 2.0 olur. |
Evet |
| sunucu | Bağlanmak istediğiniz Oracle veritabanının konumu. Bunu belirtmek için sunucu özelliği yapılandırmasına başvurabilirsiniz. | Evet |
| kimlik doğrulama türü | Oracle veritabanına bağlanmak için kimlik doğrulama türü. Şu anda yalnızca Temel kimlik doğrulaması desteklenmektedir. | Evet |
| kullanıcı adı | Oracle veritabanı kullanıcı adı. | Evet |
| şifre | Oracle veritabanı parolası. Güvenli bir şekilde depolamak için bu alanı SecureString olarak işaretleyin. İsterseniz Azure Key Vault'ta depolanan bir gizli anahtara başvurabilirsiniz. | Evet |
| connectVia | Veri deposuna bağlanmak için kullanılacak tümleştirme çalışma zamanı . Önkoşullar bölümünden daha fazla bilgi edinin. Belirtilmezse, varsayılan Azure Integration Runtime kullanılır. | Hayır |
Bağlı hizmette, servis talebinize bağlı olarak aşağıdaki ek bağlantı özelliklerini ayarlayabilirsiniz.
| Mülk | Açıklama | Gerekli | Varsayılan değer |
|---|---|---|---|
| şifreleme istemcisi | Şifreleme istemcisi davranışını belirtir. Desteklenen değerler , accepted, rejectedveya requesteddeğerleridirrequired. Tür: dize |
Hayır | required |
| ŞifrelemeTürleriMüşteri | İstemcinin kullanabileceği şifreleme algoritmalarını belirtir. Desteklenen değerler : AES128, AES192, AES256, 3DES112, 3DES168. Tür: dize |
Hayır | (AES256) |
| cryptoChecksumClient | Bu istemci bir sunucuya bağlandığında istenen veri bütünlüğü davranışını belirtir. Desteklenen değerler , accepted, rejectedveya requesteddeğerleridirrequired. Tür: dize |
Hayır | required |
| cryptoChecksumTypesClient | İstemcinin kullanabileceği kriptografik sağlama toplamı algoritmalarını belirtir. Desteklenen değerler , SHA1, SHA256, SHA384SHA512. Tür: dize |
Hayır | (SHA512) |
| ilkLobGetirmeBoyutu | LOB sütunları için kaynağın başlangıçta ne kadar veri getireceğini belirtir. Tür: int (tam sayı) | Hayır | 0 |
| fetchSize (çıkarma boyutu) | Sürücünün tek bir veritabanı gidiş dönüşte verileri getirmek için ayırmış olduğu bayt sayısını belirtir. Tür: int (tam sayı) | Hayır | 10 MB |
| ifadeÖnbellekBoyutu | Her veritabanı bağlantısı için önbelleğe alınacak imleç veya deyim sayısını belirtir. Tür: int (tam sayı) | Hayır | 0 |
| başlatmaDizesi | Oturum ayarlarını yönetmek için veritabanına bağlandıktan hemen sonra verilen bir komut belirtir. Tür: dize | Hayır | sıfır |
| TopluYüklemeyiEtkinleştir | Verileri veritabanına yüklerken toplu kopyalamanın mı yoksa toplu eklemenin mi kullanılacağını belirtir. Tür: boolean | Hayır | doğru |
| destekV1VeriTürleri | Sürüm 1.0 veri türü eşlemelerinin kullanılıp kullanılmayacağını belirtir. Sürüm 1.0'ın veri türü eşlemeleriyle geriye dönük uyumluluğu korumak istemiyorsanız bunu true olarak ayarlamayın. Tür: boolean | Hayır, bu özellik yalnızca geriye dönük uyumluluk kullanımı içindir | yanlış |
| fetchTswtzAsTimestamp | Sürücünün, TIMESTAMP WITH TIME ZONE veri türündeki sütun değerini bir tarih saat veya bir dize olarak döndürüp döndürmeyeceğini belirtir. supportV1DataTypes doğru değilse, bu ayar göz ardı edilir. Tür: boolean | Hayır, bu özellik yalnızca geriye dönük uyumluluk kullanımı içindir | doğru |
Örnek:
{
"name": "OracleLinkedService",
"properties": {
"type": "Oracle",
"version": "2.0",
"typeProperties": {
"server": "<server name>",
"username": "<user name>",
"password": "<password>",
"authenticationType": "<authentication type>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Örnek: Azure Key Vault'ta parola depolama
{
"name": "OracleLinkedService",
"properties": {
"type": "Oracle",
"version": "2.0",
"typeProperties": {
"server": "<server name>",
"username": "<user name>",
"authenticationType": "<authentication type>",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
server özellik yapılandırması
Özellik için server , bunu aşağıdaki üç biçimden birinde belirtebilirsiniz:
| Biçim | Örnek |
|---|---|
| Tanımlayıcıyı Bağla | (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=sales.us.acme.com))) |
| Kolay Bağlantı (Artı) Adlandırma | salesserver1:1521/sales.us.example.com |
| Oracle Net Services Adı (TNS Diğer Adı) (yalnızca kendi kendine barındırılan tümleştirme çalışma zamanı için) | satışlar |
Aşağıdaki listede, içinde serverkullanılan desteklenen parametreler gösterilmektedir. Aşağıdaki listede bulunmayan parametreleri kullanırsanız bağlantınız başarısız olur.
Azure tümleştirme çalışma zamanını kullanırken:
Ev sahibi
Port
PROTOKOL
HİZMET_ADI
SID
INSTANCE_NAME
SUNUCU
BAĞLANTI ZAMAN AŞIMI
YENİLEME_SAYISI
Yeniden Deneme Gecikmesi
SSL_VERSION
SSL_SERVER_DN_MATCH (SSL sunucu DN eşleşmesi)
SSL_SERVER_SERTİFİKA_DNKendi kendine barındırılan tümleştirme çalışma zamanını kullanırken:
Ev sahibi
Port
PROTOKOL
ETKİNLEŞTİRMEK
SÜRE_BİTİŞ_ZAMANI
Hata Durumunda Geçiş
YÜK_DENGELEME
ALMA_TAMPON_BOYUTU
SDÜ
SEND_BUF_BOYUTU
KAYNAK_YOLU
HİZMET_TÜRÜ
EŞLEŞTİRME_ETİKETİ
CONNECTION_ID_PREFIX
Aktarma Modu
GLOBAL_NAME
HS
INSTANCE_NAME
HAVUZ SINIRI
Havuz_Bağlantı_Sınıfı
HAVUZ_ADI
HAVUZ_TEMİZLİĞİ
RDB_DATABASE
Parçalama_anahtarı
SHARDING_KEY_ID
SÜPER_PARÇALAMA_ANAHTARI
SUNUCU
HİZMET_ADI
SID
TUNEL_HİZMETİ_ADI
SSL İstemci Kimlik Doğrulama
SSL_SERTİFİKA_TAKMA_ADI
SSL_SERTİFİKA_PARMARKIZI
SSL_VERSION
SSL_SERVER_DN_MATCH (SSL sunucu DN eşleşmesi)
SSL_SERVER_SERTİFİKA_DN
CÜZDAN_KONUMU
BAĞLANTI ZAMAN AŞIMI
YENİLEME_SAYISI
Yeniden Deneme Gecikmesi
ULAŞIM_BAĞLANTI_ZAMAN AŞIMI
RECV_TIMEOUT
SIKIŞTIRMA
SIKIŞTIRMA_SEVİYELERİ
Sürüm 1.0
Oracle bağlı hizmeti, 1.0 sürümünü uygularken aşağıdaki özellikleri destekler:
| Mülk | Açıklama | Gerekli |
|---|---|---|
| tür | type özelliği Oracle olarak ayarlanmalıdır. | Evet |
| bağlantı dizesi | Oracle Veritabanı örneğine bağlanmak için gereken bilgileri belirtir. Azure Key Vault'a bir parola da ekleyebilir ve yapılandırmayı bağlantı dizesinden çıkarabilirsiniz. Diğer ayrıntılarla birlikte aşağıdaki örneklere ve Azure Key Vault'ta kimlik bilgilerini depolama bölümüne bakın. Desteklenen bağlantı türü: Veritabanınızı tanımlamak için Oracle SID veya Oracle Hizmet Adı'nı kullanabilirsiniz: - SID kullanıyorsanız: Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;- Service Name kullanıyorsanız: Host=<host>;Port=<port>;ServiceName=<servicename>;User Id=<username>;Password=<password>;Gelişmiş Oracle yerel bağlantı seçenekleri için, şirket içinde barındırılan tümleştirme çalışma zamanının yüklü olduğu makinedeki TNSNAMES.ORA dosyasına bir girdi eklemeyi seçebilirsiniz. Oracle bağlı hizmetinde, Oracle Hizmet Adı bağlantı türünü kullanmayı ve ilgili hizmet adını yapılandırmayı seçin. |
Evet |
| connectVia | Veri deposuna bağlanmak için kullanılacak tümleştirme çalışma zamanı . Önkoşullar bölümünden daha fazla bilgi edinin. Belirtilmezse, varsayılan Azure Integration Runtime kullanılır. | Hayır |
Tavsiye
"ORA-01025: UPI parametresi aralık dışında" hatasını alırsanız ve Oracle sürümünüz 8i ise, 'WireProtocolMode=1' ifadesini bağlantı dizgenize ekleyin. Ardından yeniden deneyin.
Yük devretme senaryosu için birden çok Oracle örneğiniz varsa, Oracle bağlı hizmeti oluşturabilir ve birincil ana bilgisayarı, bağlantı noktasını, kullanıcı adını, parolayı vb. doldurabilirsiniz. Daha sonra, "Ek bağlantı özellikleri" bölümüne, özellik adı AlternateServers ve değeri (HostName=<secondary host>:PortNumber=<secondary port>:ServiceName=<secondary service name>) olan yeni bir özellik ekleyin. Köşeli ayraçları kaçırmadığınızdan emin olun ve ayırıcı olarak iki nokta üst üste (:) kullanmaya dikkat edin. Örneğin, aşağıdaki alternatif sunucu değeri, bağlantı yük devretmesi için iki alternatif veritabanı sunucusu tanımlar: (HostName=AccountingOracleServer:PortNumber=1521:SID=Accounting,HostName=255.201.11.24:PortNumber=1522:ServiceName=ABackup.NA.MyCompany).
Durumunuza göre bağlantı dizesinde ayarlayabileceğiniz diğer bağlantı özellikleri:
| Mülk | Açıklama | İzin verilen değerler |
|---|---|---|
| DiziBoyutu | Bağlayıcının tek bir ağ gidiş dönüşte getirebileceği bayt sayısı. Örneğin, ArraySize=10485760.Daha büyük değerler, ağ üzerinden veri getirme sayısını azaltarak aktarım hızını artırır. Daha küçük değerler, sunucunun veri iletmesini beklerken daha az gecikme olduğundan yanıt süresini artırır. |
1 ile 4294967296 (4 GB) bir tamsayı. Varsayılan değer 60000 olarak belirlenmiştir. 1 değeri bayt sayısını tanımlamaz, ancak tam olarak bir veri satırı için alan ayırmayı gösterir. |
Oracle bağlantısında şifrelemeyi etkinleştirmek için iki seçeneğiniz vardır:
Üçlü DES Şifrelemesi (3DES) ve Gelişmiş Şifreleme Standardı (AES) kullanmak için Oracle sunucu tarafında Oracle Advanced Security (OAS) bölümüne gidin ve şifreleme ayarlarını yapılandırın. Ayrıntılar için bu Oracle belgelerine bakın. Oracle Application Development Framework (ADF) bağlayıcısı, Oracle ile bağlantı kurarken OAS'de yapılandırdığınız şifreleme yöntemini kullanmak için otomatik olarak anlaşma sağlar.
TLS kullanmak için, aşağıdaki üç yöntemden birini uygulayarak SSL sunucusu kimlik doğrulaması için ayarlayın
truststore:Yöntem 1 (önerilir):
TLS/SSL sertifikasını yerel sertifika deposuna aktararak yükleyin. Yerleşik Oracle sürücüsü, gerekli sertifikayı sertifika deposundan yükleyebilir.
Hizmette Oracle bağlantı dizesini
EncryptionMethod=1ile yapılandırın.
2. Yöntem:
TLS/SSL sertifika bilgilerini alın. TLS/SSL sertifikanızın Ayırt Edici Kodlama Kuralları (DER) ile kodlanmış veya Gizlilik Gelişmiş Posta (PEM) kodlanmış sertifika bilgilerini alın.
openssl x509 -inform (DER|PEM) -in [Full Path to the DER/PEM Certificate including the name of the DER/PEM Certificate] -textHizmette, Oracle bağlantı dizesini
EncryptionMethod=1ve karşılık gelenTrustStoredeğeri ile yapılandırın. ÖrneğinHost=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;EncryptionMethod=1;TrustStore= data:// -----BEGIN CERTIFICATE-----<certificate content>-----END CERTIFICATE-----Uyarı
- Alan değerine
TrustStoreön ekidata://ile eklenmelidir. - Birden çok sertifika için içerik belirtirken, her sertifikanın içeriğini
-----BEGIN CERTIFICATE-----ve-----END CERTIFICATE-----arasında belirtin. "-----çizgi sayısı, hemBEGIN CERTIFICATEhem deEND CERTIFICATEöncesi ve sonrası aynı olmalıdır." Örneğin:
-----BEGIN CERTIFICATE-----<certificate content 1>-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----<certificate content 2>-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----<certificate content 3>-----END CERTIFICATE----- -
TrustStorealanı, en fazla 8192 karakter uzunluğunda içeriği destekler.
- Alan değerine
Yöntem 3:
truststoreDosyayı AES256 gibi güçlü şifrelemelerle oluşturun.openssl pkcs12 -in [Full Path to the DER/PEM Certificate including the name of the DER/PEM Certificate] -out [Path and name of TrustStore] -passout pass:[Keystore PWD] -keypbe AES-256-CBC -certpbe AES-256-CBC -nokeys -exporttruststoredosyasını kendi barındırılan tümleştirme çalışma zamanı makinesine yerleştirin. Örneğin, dosyayıC:\MyTrustStoreFilekonumuna yerleştirin.Hizmette Oracle bağlantı dizesi
EncryptionMethod=1ve buna karşılık gelenTrustStore/TrustStorePassworddeğeri yapılandırın. Örneğin,Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;EncryptionMethod=1;TrustStore=C:\\MyTrustStoreFile;TrustStorePassword=<trust_store_password>.
Örnek:
{
"name": "OracleLinkedService",
"properties": {
"type": "Oracle",
"typeProperties": {
"connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Örnek: Azure Key Vault'ta parola depolama
{
"name": "OracleLinkedService",
"properties": {
"type": "Oracle",
"typeProperties": {
"connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;",
"password": {
"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 Oracle veri kümesi tarafından desteklenen ö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.
Oracle'dan ve Oracle'a veri kopyalamak için, veri kümesinin tür özelliğini OracleTable olarak ayarlayın. Aşağıdaki özellikler desteklenir.
| Mülk | Açıklama | Gerekli |
|---|---|---|
| tür | Veri kümesinin tür özelliği olarak OracleTableayarlanmalıdır. |
Evet |
| şema | Şemanın adı. | Kaynak için Hayır, havuz için Evet |
| tablo | Tablo/görünümün adı. | Kaynak için Hayır, havuz için Evet |
| tabloAdı | Şema içeren tablonun/görünümün adı. Bu özellik geriye dönük uyumluluk için desteklenir. Yeni iş yükü için schema ve table kullanın. |
Kaynak için Hayır, havuz için Evet |
Örnek:
{
"name": "OracleDataset",
"properties":
{
"type": "OracleTable",
"schema": [],
"typeProperties": {
"schema": "<schema_name>",
"table": "<table_name>"
},
"linkedServiceName": {
"referenceName": "<Oracle linked service name>",
"type": "LinkedServiceReference"
}
}
}
Kopyalama etkinliğinin özellikleri
Bu bölümde Oracle kaynağı ve havuzu tarafından desteklenen özelliklerin listesi sağlanır. Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için bkz Pipelines.
Kaynak olarak Oracle
Tavsiye
Veri bölümlemeyi kullanarak Oracle'dan verileri verimli bir şekilde yüklemek için Oracle'ın Paralel kopyası bölümünden daha fazla bilgi edinin.
Oracle'dan veri kopyalamak için kopyalama etkinliğindeki kaynak türünü olarak OracleSourceayarlayın. Kopyalama etkinliği kaynağı bölümünde aşağıdaki özellikler desteklenir.
| Mülk | Açıklama | Gerekli |
|---|---|---|
| tür | Kopyalama etkinliği kaynağının type özelliği olarak OracleSourceayarlanmalıdır. |
Evet |
| oracleReaderQuery | Verileri okumak için özel SQL sorgusunu kullanın.
"SELECT * FROM MyTable" bunun bir örneğidir. Sorgunun noktalı virgülle (;)) bitmemesi gerektiğini unutmayın. Bölümlenmiş yükü etkinleştirdiğinizde, sorgunuzda ilgili yerleşik bölüm parametrelerini bağlamanız gerekir. Örnekler için Oracle'dan paralel kopya bölümüne bakın. |
Hayır |
| ondalıkSayıyıTamsayıyaDönüştür | Sıfır veya belirtilmemiş ölçek içeren Oracle NUMBER türü karşılık gelen tamsayıya dönüştürülür. İzin verilen değerler true ve false (varsayılan) değerleridir. Oracle sürüm 2.0 kullanıyorsanız, bu özelliğin yalnızca supportV1DataTypes true olduğunda ayarlanmasına izin verilir. |
Hayır |
| Bölüm Seçenekleri | Oracle'dan veri yüklemek için kullanılan veri bölümleme seçeneklerini belirtir. İzin verilen değerler şunlardır: Hiçbiri (varsayılan), PhysicalPartitionsOfTable ve DynamicRange. Bir bölüm seçeneği etkinleştirildiğinde (yani değil None), Oracle veritabanından verileri eşzamanlı olarak yüklemek için paralellik derecesi kopyalama etkinliğindeki parallelCopies ayar tarafından denetlenmektedir. |
Hayır |
| bölüm ayarları | Veri bölümleme ayarlarının grubunu belirtin. Bölüm seçeneği ` None` değilken uygulayın. |
Hayır |
| bölümAdları | Kopyalanması gereken fiziksel bölümlerin listesi. Bölüm seçeneği PhysicalPartitionsOfTable iken uygulayın. Kaynak veriyi almak için bir sorgu kullanırsanız WHERE yan tümcesine ?AdfTabularPartitionName ekleyin. Bir örnek için Oracle'dan paralel kopya bölümüne bakın. |
Hayır |
| partitionColumnName (bölümSütunAdı) | 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 DynamicRange iken uygulayın. Kaynak veriyi almak için bir sorgu kullanırsanız WHERE yan tümcesine ?AdfRangePartitionColumnName ekleyin. Bir örnek için Oracle'dan paralel kopya bölümüne bakın. |
Hayır |
| bölümÜstSınır | Verileri dışa kopyalamak için bölüm sütununun en yüksek değeri. Bölüm seçeneği DynamicRange iken uygulayın. Kaynak veriyi almak için bir sorgu kullanırsanız WHERE yan tümcesine ?AdfRangePartitionUpbound ekleyin. Bir örnek için Oracle'dan paralel kopya bölümüne bakın. |
Hayır |
| partitionLowerBound | Verileri dışa kopyalamak için bölüm sütununun en düşük değeri. Bölüm seçeneği DynamicRange iken uygulayın. Kaynak veriyi almak için bir sorgu kullanırsanız WHERE yan tümcesine ?AdfRangePartitionLowbound ekleyin. Bir örnek için Oracle'dan paralel kopya bölümüne bakın. |
Hayır |
| sayı hassasiyeti | Önemli ondalık basamak sayısı üst sınırını belirtin. İzin verilen değerler 1 ile 256 arasında değişir. Belirtilmezse varsayılan değer 256'dır. Bu özellik Oracle sürüm 2.0'da desteklenir. Yalnızca Oracle veritabanında açıkça tanımlanmış duyarlığı ve ölçeği olmayan NUMBER türleri için geçerlidir. supportV1DataTypes
true olmadığında ayarlanabilir. Kendin barındırılan tümleştirme çalışma zamanı kullanıyorsanız, sürümü 5.56 veya üzeri olmalıdır. |
Hayır |
| sayı ölçeği | Ondalık ayırıcıdan sonraki basamak sayısını belirtin. İzin verilen değerler 0 ile 130 arasında değişir ve duyarlık değerinden küçük veya eşit olmalıdır. Belirtilmezse varsayılan olarak 130 olur. Bu özellik Oracle sürüm 2.0'da desteklenir. Yalnızca Oracle veritabanında açıkça tanımlanmış duyarlığı ve ölçeği olmayan NUMBER türleri için geçerlidir. supportV1DataTypes
true olmadığında ayarlanabilir. Kendin barındırılan tümleştirme çalışma zamanı kullanıyorsanız, sürümü 5.56 veya üzeri olmalıdır. |
Hayır |
Örnek: Bölümleme olmadan temel bir sorgu kullanarak verileri kopyalama
"activities":[
{
"name": "CopyFromOracle",
"type": "Copy",
"inputs": [
{
"referenceName": "<Oracle input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "OracleSource",
"convertDecimalToInteger": false,
"oracleReaderQuery": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Havuz olarak Oracle
Verileri Oracle'a kopyalamak için kopyalama etkinliğindeki havuz türünü olarak OracleSinkayarlayın. Aşağıdaki özellikler kopya etkinliği sink bölümünde desteklenir.
| Mülk | Açıklama | Gerekli |
|---|---|---|
| tür | Kopyalama etkinliği alıcısının tür özelliği OracleSink olarak ayarlanmalıdır. |
Evet |
| writeBatchSize (yazmaToplamBoyutu) | Arabellek boyutu writeBatchSize değerine ulaştığında SQL tablosuna veri ekleme işlemini gerçekleştirir.İzin verilen değerler Tamsayıdır (satır sayısı). |
Hayır (varsayılan değer 10.000'dir) |
| writeBatchZamanAşımı | Zamanaşımına uğramadan önce, toplu ekleme işleminin tamamlanması için gereken bekleme süresi. İzin verilen değerler Zaman Aralığı'dır. Örnek olarak 00:30:00 (30 dakika) gösteriliyor. |
Hayır |
| preCopyScript | Her çalıştırmada Oracle'a veri yazmadan önce kopyalama etkinliğinin çalıştırılması için bir SQL sorgusu belirtin. Önceden yüklenmiş verileri temizlemek için bu özelliği kullanabilirsiniz. | Hayır |
| maksimum eşzamanlı bağlantılar | Etkinlik çalıştırması sırasında veri deposuna kurulan eş zamanlı bağlantıların üst sınırı. Yalnızca eşzamanlı bağlantıları sınırlamak istediğinizde bir değer belirtin. | Hayır |
Örnek:
"activities":[
{
"name": "CopyToOracle",
"type": "Copy",
"inputs": [
{
"referenceName": "<input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<Oracle output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "<source type>"
},
"sink": {
"type": "OracleSink"
}
}
}
]
Oracle'dan paralel kopya
Oracle bağlayıcısı, Oracle'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 sekmesinde bulabilirsiniz.
Bölümlenmiş kopyalamayı etkinleştirdiğinizde hizmet, verileri bölümlere göre yüklemek için Oracle 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, belirtilen bölüm seçeneğinize ve ayarlarınıza göre aynı anda dört sorgu oluşturur ve çalıştırır ve her sorgu Oracle veritabanınızdan verilerin bir bölümünü alır.
Özellikle Oracle 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, fiziksel bölümleri olan tablodan tam yük alma. |
Bölüm seçeneği: Tablonun fiziksel bölümleri. Yürütme sırasında, hizmet fiziksel bölümleri otomatik olarak algılar ve bölümlere göre verileri kopyalar. |
| Veri bölümleme için bir tamsayı sütunu kullanarak, fiziksel bölümler olmadan büyük tablodan tam yükleme. |
Bölüm seçenekleri: Dinamik aralık bölümü. Bölüm sütunu: Verileri bölümleme için kullanılan sütunu belirtin. Belirtilmezse birincil anahtar sütunu kullanılır. |
| Fiziksel bölümler içeren özel bir sorgu kullanarak büyük miktarda veri yükleyin. |
Bölüm seçeneği: Tablonun fiziksel bölümleri. Sorgu: SELECT * FROM <TABLENAME> PARTITION("?AdfTabularPartitionName") WHERE <your_additional_where_clause>.Bölüm adı: Veri kopyalanacak bölüm adlarını belirtin. Belirtilmezse, hizmet Oracle veri kümesinde belirttiğiniz tablodaki fiziksel bölümleri otomatik olarak algılar. Yürütme sırasında hizmet ?AdfTabularPartitionName yerine gerçek bölüm adını alır ve Oracle'a gönderir. |
| Veri bölümleme için bir tamsayı sütunuylayken fiziksel bölümler olmadan özel bir sorgu kullanarak 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, , ?AdfRangePartitionColumnNameve ?AdfRangePartitionUpbound değerlerini her bölüm için gerçek sütun adı ve değer aralıklarıyla değiştirir ?AdfRangePartitionLowboundve Oracle'a gönderir. Örneğin, "ID" bölüm sütununuzun alt sınırı 1 ve üst sınırı 80 olarak ayarlanırsa ve paralel kopya 4 olarak ayarlanırsa, hizmet verileri 4 ayrı bölümden alır. Kimlikleri sırasıyla [1,20], [21, 40], [41, 60] ve [61, 80] arasındadır. |
Tavsiye
Bölümlenmemiş bir tablodan veri kopyalarken, bir tamsayı sütununa göre bölümleme yapmak için "Dinamik aralık" bölümleme seçeneğini kullanabilirsiniz. Kaynak verilerinizde bu tür bir sütun yoksa, bir sütun oluşturmak ve bunu bölüm sütunu olarak kullanmak için kaynak sorgudaki ORA_HASH işlevinden yararlanabilirsiniz.
Örnek: fiziksel bölüm içeren sorgu
"source": {
"type": "OracleSource",
"query": "SELECT * FROM <TABLENAME> PARTITION(\"?AdfTabularPartitionName\") WHERE <your_additional_where_clause>",
"partitionOption": "PhysicalPartitionsOfTable",
"partitionSettings": {
"partitionNames": [
"<partitionA_name>",
"<partitionB_name>"
]
}
}
Örnek: dinamik aralık bölümü olan sorgu
"source": {
"type": "OracleSource",
"query": "SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>",
"partitionOption": "DynamicRange",
"partitionSettings": {
"partitionColumnName": "<partition_column_name>",
"partitionUpperBound": "<upper_value_of_partition_column>",
"partitionLowerBound": "<lower_value_of_partition_column>"
}
}
Oracle için veri türü eşlemesi
Oracle'dan ve Oracle'a veri kopyaladığınızda, hizmet kapsamında aşağıdaki ara veri türü eşlendirmeleri kullanılır. Kopyalama etkinliğinin kaynak şemayı ve veri türünü havuza nasıl eşlediğini öğrenmek için bkz . Şema ve veri türü eşlemeleri.
| Oracle veri türü | Ara hizmet veri türü (sürüm 2.0 için) | Ara hizmet veri türü (sürüm 1.0 için) |
|---|---|---|
| BFILE | Bayt[] | Bayt[] |
| BINARY_FLOAT (İkili Kayan Nokta) | Tek | Tek |
| İKİLİ_NOKTAKAYAR_DOUBLE | İki kat | İki kat |
| BLOB (İkili Büyük Nesne) | Bayt[] | Bayt[] |
| CHAR | Dize | Dize |
| CLOB | Dize | Dize |
| TARİH | Tarih ve Saat | Tarih ve Saat |
| FLOAT (P < 16) | İki kat | İki kat |
| FLOAT (P >>= 16) | Ondalık | İki kat |
| YILDAN AYA ARALIK | Int64 | Dize |
| ARALıK GÜNÜ - SANIYE | Zaman Aralığı | Dize |
| UZUN | Dize | Dize |
| LONG RAW | Bayt[] | Bayt[] |
| NCHAR | Dize | Dize |
| NCLOB | Dize | Dize |
| SAYI (p, s) | Int16, Int32, Int64, Tek, Çift, Ondalık | Ondalık, Dize (p > 28 ise) |
| Kesinlik ve ölçek olmadan sayısal değer | Ondalık (256,130) | İki kat |
| NVARCHAR2 | Dize | Dize |
| ÇİĞ | Bayt[] | Bayt[] |
| ZAMAN DAMGASI | Tarih ve Saat | Tarih ve Saat |
| YEREL SAAT DILIMI ILE ZAMAN DAMGASı | Tarih ve Saat | Tarih ve Saat |
| SAAT DILIMI ILE ZAMAN DAMGASı | TarihSaatÖtelemesi | Tarih ve Saat |
| VARCHAR2 | Dize | Dize |
| XML Tipi | Dize | Dize |
NUMBER(p,s), kesinlik (p) ve ölçek (s) değerlerine bağlı olarak uygun sürüm 2.0 ara hizmet veri türüne haritalanır.
| Ara hizmet veri türü | Koşul |
|---|---|
| Int16 | ölçek <= 0 AND (duyarlık - ölçek) < 5 |
| Int32 | ölçek <= 0 VE 5 <= (kesinlik - ölçek) < 10 |
| Int64 | ölçek <= 0 VE 10 <= (kesinlik - ölçek) < 19 |
| Tek | duyarlık < 8 AND ((ölçek <= 0 VE (duyarlık - ölçek) <= 38) VEYA (ölçek > 0 VE ölçek <= 44)) |
| Ondalık | hassasiyet >= 16 |
| İki kat | Yukarıdaki koşullardan hiçbiri karşılanmazsa. |
Arama faaliyeti özellikleri
Özellikler hakkında ayrıntılı bilgi edinmek için Arama etkinliği'ne bakın.
Oracle bağlayıcısını yükseltme
Oracle bağlayıcısını yükseltmenize yardımcı olacak adımlar şunlardır:
Bağlı hizmeti düzenle sayfasında, Sürüm altında 2.0'ı seçin ve Bağlı hizmet özellikleri sürüm 2.0'a başvurarak bağlı hizmeti yapılandırın.
Kullanıcı adı ve parola gibi kimlik doğrulamasıyla ilgili özellikler için, sürüm 2.0'daki ilgili alanlarda özgün değerleri belirtin. Sürüm 1.0'da konak, bağlantı noktası ve Oracle Hizmet Adı/Oracle SID gibi diğer bağlantı özellikleri artık 2.0 sürümündeki özelliğin
serverparametreleridir.Örneğin, sürüm 1.0 bağlı hizmetini aşağıda gösterildiği gibi yapılandırdıysanız:
{ "name": "OracleLinkedService", "properties": { "type": "Oracle", "typeProperties": { "connectionString": "host=oraclesample.com;port=1521;servicename=db1" }, "connectVia": { "referenceName": "<name of Integration Runtime>", "type": "IntegrationRuntimeReference" } } }Easy Connect (Plus) Adlandırma kullanan aynı sürüm 2.0 bağlı hizmet yapılandırması şöyledir:
{ "name": "OracleLinkedService", "properties": { "type": "Oracle", "version": "2.0", "typeProperties": { "server": "oraclesample.com:1521/db1", "username": "<user name>", "password": "<password>", "authenticationType": "<authentication type>" }, "connectVia": { "referenceName": "<name of Integration Runtime>", "type": "IntegrationRuntimeReference" } } }Bağlayıcı Tanımlayıcısı kullanılarak aynı sürüm 2.0 bağlı hizmet yapılandırması şöyledir:
{ "name": "OracleLinkedService", "properties": { "type": "Oracle", "version": "2.0", "typeProperties": { "server": "(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST= oraclesample.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=db1)))", "username": "<user name>", "password": "<password>", "authenticationType": "<authentication type>" }, "connectVia": { "referenceName": "<name of Integration Runtime>", "type": "IntegrationRuntimeReference" } } }Tavsiye
Azure Key Vault özelliği için
serverdesteklenir. Aşağıda gösterildiği gibi Azure Key Vault başvurusunu eklemek için bağlı hizmet JSON'unu düzenleyebilirsiniz:
Şunlara dikkat edin:
Oracle Hizmet Adı'nı sürüm 1.0'da kullanıyorsanız, 2.0 sürümünde sunucu biçimi olarak Easy Connect (Plus) Adlandırma veya Bağlayıcı Tanımlayıcısı'nı kullanabilirsiniz.
Sürüm 1.0'da Oracle SID kullanıyorsanız, 2.0 sürümünde sunucu biçimi olarak Bağlayıcı Tanımlayıcısı'nı kullanmanız gerekir.
Sürüm 1.0'daki bazı ek bağlantı özellikleri için, 2.0 sürümünde özelliğinde
serveralternatif özellikler veya parametreler sağlarız. Sürüm 1.0 özelliklerini yükseltmek için aşağıdaki tabloya başvurabilirsiniz.Sürüm 1.0 Sürüm 2.0 şifreleme yöntemi PROTOCOL ( serveriçindeki parametre)tnsnamesfile TNS_ADMIN (kendinden barındırılan tümleştirme çalışma zamanında desteklenen ortam değişkeni) sunucu adı sunucu toplu yüklemeyi etkinleştir
Değer: 1, 0topluYüklemeAktifEt
Değer: doğru, yanlışZaman damgasını almak için TSWTZA çek
Değer: 1, 0fetchTswtzAsTimestamp
Değer: doğru, yanlışalternatif sunucu DESCRIPTION_LIST (içindeki parametre server)dizi boyutu fetchSize (çıkarma boyutu) önbelleğe alınmış imleç sınırı ifadeÖnbellekBoyutu bağlantı yeniden deneme sayısı RETRY_COUNT ( serveriçindeki parametresi)başlatma dizesi başlatmaDizesi giriş zaman aşımı CONNECT_TIMEOUT ( serveriçindeki parametre)kriptografi protokolü sürümü SSL_VERSION (parametresi server)truststore WALLET_LOCATION (içindeki parametresi) serverÖrneğin,
alternateservers'yi sürüm 1.0'da kullanırsanız, sunucu özelliğindeDESCRIPTION_LISTparametresini sürüm 2.0'da ayarlayabilirsiniz.Sürüm 1.0 kullanılarak bağlı hizmet
alternateservers:{ "name": "OracleV1", "properties": { "type": "Oracle", "typeProperties": { "connectionString": "host=oraclesample.com;port=1521;servicename=db1;alternateservers=(HostName= oraclesample2.com:PortNumber=1521:SID=db2,HostName=255.201.11.24:PortNumber=1522:ServiceName=db3)" } } }DESCRIPTION_LISTparametresini kullanan Bağlayıcı Tanımlayıcısı ile bağlantılı aynı 2.0 sürümü hizmet:{ "name": "OracleV2", "properties": { "type": "Oracle", "version": "2.0", "typeProperties": { "server": "(DESCRIPTION_LIST=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraclesample.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=db1)))(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraclesample2.com)(PORT=1521))(CONNECT_DATA=(SID=db2)))(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=255.201.11.24)(PORT=1522))(CONNECT_DATA=(SERVICE_NAME=db3))))", "username": "<user name>", "password": "<password>", "authenticationType": "<authentication type>" } } }
Oracle bağlı hizmet sürümü 2.0 için veri türü eşlemesi, sürüm 1.0'dan farklıdır. En son veri türü eşlemesini öğrenmek için bkz. Oracle için veri türü eşleme.
Sürüm 2.0'daki ek bir bağlantı özelliği
supportV1DataTypes, veri türü değişikliklerinin neden olduğu yükseltme zorluklarını azaltabilir. Sürüm 2.0'daki veri türünün sürüm 1.0 ile tutarlı kalmasını sağlamak içintruebu özelliğin ayarlanması.
Oracle sürüm 2.0 ile sürüm 1.0 arasındaki farklar
Oracle bağlayıcısı sürüm 2.0 yeni işlevler sunar ve sürüm 1.0'ın çoğu özelliğiyle uyumludur. Aşağıdaki tabloda, sürüm 2.0 ile sürüm 1.0 arasındaki özellik farklılıkları gösterilmektedir.
| Sürüm 2.0 | Sürüm 1.0 |
|---|---|
| Oracle veri türlerinden hizmet tarafından dahili olarak kullanılan ara hizmet veri türlerine aşağıdaki eşlemeler kullanılır. SAYI(p,s) -> Int16, Int32, Int64, Tek, Çift, Ondalık FLOAT(p)-> Duyarlık temelinde Çift veya Ondalık SAYI -> Ondalık ZAMAN BÖLGESİYLE ZAMAN DAMGASI -> TarihSaatSapma YIL AYLARA ARALIĞI -> Int64 GÜNDEN SANİYEYE ARALIK -> ZamanAralığı |
Oracle veri türlerinden hizmet tarafından dahili olarak kullanılan ara hizmet veri türlerine aşağıdaki eşlemeler kullanılır. NUMBER(p,s) -> Hassasiyet temelinde Ondalık veya Metin FLOAT(p)-> Çift SAYI -> Çift SAAT DILIMI ILE ZAMAN DAMGASı -> DateTime INTERVAL YEAR TO MONTH -> Karakter Dizisi INTERVAL DAY TO SECOND -> Dize |
olarak ayarlandığında kopyalama kaynağında supportV1DataTypes convertDecimalToInteger desteği true. |
Kopyalama kaynağında convertDecimalToInteger desteği. |
Betik etkinliği sorgu parametreleri için ? yer tutucu olarak kullanılması desteklenmemektedir. Adlandırılmış parametreyi (gibi :paramA) veya konumsal parametreyi (örneğin :1) değiştirme olarak kullanabilirsiniz. |
Betik etkinliği sorgu parametreleri için ? yer tutucusunun kullanılmasını destekleme. |
| TLS 1.3 desteği. | TLS 1.3 desteklenmez. |
| Oracle SSO cüzdan ile iki yönlü TLS/SSL desteklenir. Daha fazla bilgi için bu makaleye bakın | Oracle cüzdan ile iki yönlü TLS/SSL desteklenmez. |