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.
Sunucusuz işlemde paketlenmiş bağlayıcı kullanarak dış veri kaynağına yazarken, bağlayıcı seçeneklerinin yalnızca bir alt kümesi desteklenir. Aşağıdaki tablolarda bağlayıcı başına desteklenen seçenekler listelenmiştir.
Kurulum yönergeleri ve örnekler için bkz. Spark veri kaynakları.
PostgreSQL
Sunucusuz işlemde PostgreSQL'e yazarken aşağıdaki seçenekler desteklenir.
| Seçenek | Description |
|---|---|
host |
PostgreSQL sunucusunun ana bilgisayar adı. |
port |
Port numarası. Varsayılan: 5432. |
database |
Bağlanacak veritabanının adı. |
connectTimeout |
Bağlantı beklenmek için saniye cinsinden en uzun süre.
0 zaman aşımını devre dışı bırakır. |
user |
Veritabanı kullanıcı adı. |
password |
Veritabanı parolası. |
dbtable |
Hedef tablo adı. Şema nitelikli adları destekler (örneğin, myschema.mytable). |
batchsize |
Toplu iş başına eklenecek satır sayısı. Varsayılan: 1000. |
numPartitions |
Paralel yazma işlemleri için Spark bölüm sayısı. |
queryTimeout |
Sorgu tamamlanmasını beklemek için saniye cinsinden en uzun süre.
0 zaman aşımını devre dışı bırakır. |
isolationLevel |
İşlem yalıtım düzeyi: NONE, READ_COMMITTED, READ_UNCOMMITTED, REPEATABLE_READveya SERIALIZABLE. Varsayılan: READ_UNCOMMITTED. |
truncate |
ise true, hedef tabloyu overwrite bırakarak yeniden oluşturma yerine modda kısaltır. Varsayılan: false. |
cascadeTruncate |
ise true, kesme işlemini hedef tabloya yabancı anahtar başvuruları içeren tablolara basamaklar. Varsayılan: false. |
SQL Server
Sunucusuz işlemde SQL Server yazarken aşağıdaki seçenekler desteklenir.
| Seçenek | Description |
|---|---|
host |
SQL Server örneğinin ana bilgisayar adı. |
port |
Port numarası. Varsayılan: 1433. |
database |
Bağlanacak veritabanının adı. |
connectionTimeout |
Bağlantı beklenmek için saniye cinsinden en uzun süre.
0 zaman aşımını devre dışı bırakır. |
encrypt |
ise true, istemci ile sunucu arasında gönderilen tüm verileri TLS kullanarak şifreler. Varsayılan: false. |
trustServerCertificate |
ise true, doğrulama olmadan sunucunun TLS sertifikasına güvenir. Yalnızca geliştirme ortamları için. Varsayılan: false. |
debug |
ise truebağlayıcı için ayrıntılı hata ayıklama günlüğünü etkinleştirir. Varsayılan: false. |
user |
Veritabanı kullanıcı adı. |
password |
Veritabanı parolası. |
authentication |
Kimlik doğrulama türü. Desteklenen değerler: SqlPassword, ActiveDirectoryPassword, ActiveDirectoryMSI. |
dbtable |
Hedef tablo adı. Şema nitelikli adları destekler (örneğin, myschema.mytable). |
batchsize |
Toplu iş başına eklenecek satır sayısı. Varsayılan: 1000. |
numPartitions |
Paralel yazma işlemleri için Spark bölüm sayısı. |
queryTimeout |
Sorgu tamamlanmasını beklemek için saniye cinsinden en uzun süre.
0 zaman aşımını devre dışı bırakır. |
isolationLevel |
İşlem yalıtım düzeyi: NONE, READ_COMMITTED, READ_UNCOMMITTED, REPEATABLE_READveya SERIALIZABLE. Varsayılan: READ_UNCOMMITTED. |
truncate |
ise true, hedef tabloyu overwrite bırakarak yeniden oluşturma yerine modda kısaltır. Varsayılan: false. |
MySQL
Sunucusuz işlemde MySQL'e yazarken aşağıdaki seçenekler desteklenir.
| Seçenek | Description |
|---|---|
host |
MySQL sunucusunun ana bilgisayar adı. |
port |
Port numarası. Varsayılan: 3306. |
database |
Bağlanacak veritabanının adı. |
connectionTimeout |
Bağlantı beklenmek için saniye cinsinden en uzun süre.
0 zaman aşımını devre dışı bırakır. |
requireSSL |
ise true, sunucuya SSL ile şifrelenmiş bir bağlantı gerektirir. Varsayılan: false. |
useSSL |
ise true, sunucu tarafından desteklendiğinde bağlantı için SSL'yi etkinleştirir. Varsayılan: false. |
user |
Veritabanı kullanıcı adı. |
password |
Veritabanı parolası. |
dbtable |
Hedef tablo adı. Şema nitelikli adları destekler (örneğin, myschema.mytable). |
batchsize |
Toplu iş başına eklenecek satır sayısı. Varsayılan: 1000. |
numPartitions |
Paralel yazma işlemleri için Spark bölüm sayısı. |
queryTimeout |
Sorgu tamamlanmasını beklemek için saniye cinsinden en uzun süre.
0 zaman aşımını devre dışı bırakır. |
isolationLevel |
İşlem yalıtım düzeyi: NONE, READ_COMMITTED, READ_UNCOMMITTED, REPEATABLE_READveya SERIALIZABLE. Varsayılan: READ_UNCOMMITTED. |
truncate |
ise true, hedef tabloyu overwrite bırakarak yeniden oluşturma yerine modda kısaltır. Varsayılan: false. |
cascadeTruncate |
ise true, kesme işlemini hedef tabloya yabancı anahtar başvuruları içeren tablolara basamaklar. Varsayılan: false. |
Snowflake
Aşağıdaki bölümlerde Snowflake bağlayıcısı için işleve göre düzenlenmiş desteklenen seçenekler listelenmiştir.
Bağlantı
Aşağıdaki seçenekler Snowflake bağlantısını yapılandırarak oturum davranışını denetler.
| Seçenek | Description |
|---|---|
host |
Snowflake hesabı ana bilgisayar adı (örneğin, <account>.snowflakecomputing.com). |
port |
Port numarası. Varsayılan: 443. |
sfaccount |
Snowflake hesap tanımlayıcısı. |
sfauthenticator |
Kimlik doğrulama yöntemi: snowflake (parola), oauth (belirteç) veya snowflake_jwt (anahtar çifti). Varsayılan: snowflake. |
networktimeout |
Ağ işlemleri için saniyeler içinde zaman aşımı. |
sftimezone |
Zaman damgası işlemleri için saat dilimi (örneğin, America/New_York). |
client_session_keep_alive |
ise true, uzun süre çalışan işlemler sırasında oturum zaman aşımını önlemek için keepalive sinyalleri gönderir. Varsayılan: false. |
ocspfailopen |
ise true, OCSP sertifika doğrulaması kullanılamadığında (başarısız açma modu) bağlantıların devam etmesine izin verir. Varsayılan: true. |
Authentication
Aşağıdaki seçenekler, içinde sfauthenticatoryapılandırılan kimlik doğrulama yöntemi için kimlik bilgilerini sağlar. Snowflake aşamaları bulut depolama aracılığıyla veri yazdığında hazırlama kimlik bilgileri (temporary_aws_*, awsaccesskey, temporary_azure_sas_token) gereklidir.
| Seçenek | Description |
|---|---|
sfuser |
Snowflake kullanıcı adı. |
sfpassword |
Snowflake parolası. olduğunda sfauthenticatorsnowflakekullanılır. |
sfToken |
OAuth erişim belirteci. olduğunda sfauthenticatoroauthkullanılır. |
pem_private_key |
Anahtar çifti kimlik doğrulaması için PEM biçiminde özel anahtar. olduğunda sfauthenticatorsnowflake_jwtkullanılır. |
temporary_aws_access_key_id |
S3 hazırlama için geçici AWS erişim anahtarı kimliği. Kısa süreli kimlik bilgileri kullanılırken tercih awsaccesskey edilir. |
temporary_aws_secret_access_key |
S3 hazırlama için geçici AWS gizli erişim anahtarı. |
temporary_aws_session_token |
S3 hazırlama için geçici AWS oturum belirteci. |
temporary_azure_sas_token |
Azure Blob Depolama hazırlama için geçici Azure SAS belirteci. |
awsaccesskey |
S3 hazırlama için AWS erişim anahtarı. |
awssecretkey |
S3 hazırlama için AWS gizli anahtarı. |
Hedef
Aşağıdaki seçenekler yazılacak Snowflake veritabanını, şemasını, ambarını ve tablosunu belirtir.
| Seçenek | Description |
|---|---|
sfdatabase |
Snowflake veritabanı adı. |
sfschema |
Snowflake şema adı. |
sfwarehouse |
Sorgu yürütme için kullanılan Snowflake sanal ambarı. |
sfrole |
Oturum için snowflake rolü. |
dbtable |
Hedef tablo adı. |
Yazma davranışı
Aşağıdaki seçenekler verilerin hedef Snowflake tablosuna nasıl yazıldıklarını denetler.
| Seçenek | Description |
|---|---|
column_mapping |
DataFrame sütunları Snowflake tablo sütunlarıyla nasıl eşleştirilir: name (sütun adına göre) veya position (sütun sırasına göre). Varsayılan: name. |
column_mismatch_behavior |
DataFrame ve tablo sütunları hizalı olmadığında davranış: error veya ignore. Varsayılan: error. |
truncate_table |
ise true, yazmadan önce hedef tabloyu kısaltır. Varsayılan: false. |
usestagingtable |
ise true, verileri hedefe değiştirmeden önce geçici bir tabloya yerleştirir ve atomik yazmaları etkinleştirir. Varsayılan: true. |
internal_execute_query_in_sync_mode |
ise true, Snowflake sorgularını zaman uyumlu olarak yürütür. Varsayılan: false. |
autopushdown |
ise true, filtre ve toplama işlemlerini yürütme için Snowflake'e gönderir. Varsayılan: true. |
Redshift
Aşağıdaki bölümlerde Redshift bağlayıcısı için işleve göre düzenlenmiş desteklenen seçenekler listelenmiştir.
Bağlantı
Aşağıdaki seçenekler Redshift kümesine bağlantıyı yapılandırılır.
| Seçenek | Description |
|---|---|
host |
Redshift kümesi uç noktası ana bilgisayar adı. |
port |
Port numarası. Varsayılan: 5439. |
database |
Redshift veritabanı adı. |
connectionTimeout |
Bağlantı beklenmek için saniye cinsinden en uzun süre. |
Authentication
Aşağıdaki seçenekler Redshift ve Redshift'in yazma işlemleri sırasında kullandığı S3 hazırlama konumu için kimlik bilgilerini yapılandırır.
| Seçenek | Description |
|---|---|
user |
Redshift kullanıcı adı. |
password |
Redshift parolası. |
aws_iam_role |
Redshift'in hazırlama verileri için S3'e erişmek için kullandığı IAM rolünün ARN'i. |
temporary_aws_access_key_id |
S3 hazırlama için geçici AWS erişim anahtarı kimliği. Uzun ömürlü kimlik bilgileri yerine tercih edilir. |
temporary_aws_secret_access_key |
S3 hazırlama için geçici AWS gizli erişim anahtarı. |
temporary_aws_session_token |
S3 hazırlama için geçici AWS oturum belirteci. |
forward_spark_s3_credentials |
ise true, Spark'ın S3 kimlik bilgilerini hazırlama için Redshift'e iletir. Yalnızca Spark ve Redshift aynı S3 kimlik bilgilerini paylaştığında kullanın. Varsayılan: false. |
Yazma davranışı
Aşağıdaki seçenekler verilerin dağıtım, sıralama anahtarları ve hazırlama biçimi dahil olmak üzere hedef Redshift tablosuna nasıl yazılmasını denetler.
| Seçenek | Description |
|---|---|
dbtable |
Hedef tablo adı. Şema nitelikli adları destekler (örneğin, myschema.mytable). |
batchsize |
Toplu ekleme başına satır sayısı. Varsayılan: 1000. |
numPartitions |
Paralel yazma işlemleri için Spark bölüm sayısı. |
queryTimeout |
Sorgu tamamlanmasını beklemek için saniye cinsinden en uzun süre. |
isolationLevel |
İşlem yalıtım düzeyi: NONE, READ_COMMITTED, READ_UNCOMMITTED, REPEATABLE_READveya SERIALIZABLE. Varsayılan: READ_UNCOMMITTED. |
diststyle |
Redshift dağıtım stili: EVEN, KEYveya ALL. |
distkey |
Dağıtım anahtarı olarak kullanılacak sütun.
diststyle
KEY olduğunda gereklidir. |
sortkeyspec |
Redshift tablosu için anahtar belirtimini sıralama (örneğin, SORTKEY(col1, col2)). |
csvnullstring |
Değerleri temsil NULL etmek için HAZıRLAMA CSV dosyalarında yazılan dize. Varsayılan: boş dize. |
tempformat |
Hazırlama dosyası biçimi: CSV veya AVRO. Varsayılan: CSV. |
truncate |
ise true, hedef tabloyu overwrite bırakarak yeniden oluşturma yerine modda kısaltır. Varsayılan: false. |
Sunucusuz işlemde PostgreSQL'e yazma
Bu örnek modu kullanır append ve databricks gizli dizi kapsamından kimlik bilgilerini alır.
df.write \
.format("postgresql") \
.option("host", dbutils.secrets.get(scope="<scope>", key="<host>")) \
.option("port", "<port>") \
.option("database", "<database-name>") \
.option("dbtable", "<table-name>") \
.option("user", dbutils.secrets.get(scope="<scope>", key="<user>")) \
.option("password", dbutils.secrets.get(scope="<scope>", key="<password>")) \
.mode("append") \
.save()
Sonraki Adımlar
- Spark veri kaynakları: Kurulum yönergeleri, kod örnekleri ve Spark tümleştirme stratejilerinin karşılaştırması.
- JDBC bağlantısı: Sunucusuz bağlayıcılarda paketlenmiş bağlayıcılar tarafından desteklenmeyen seçenekler veya paketlenmiş bağlayıcısı olmayan veri kaynakları için JDBC sürücüsüyle Unity Kataloğu bağlantısı kullanın.
- Spark API seçenekleri başvurusu: Dosya biçimleri ve akış kaynakları için DataFrameReader, DataFrameWriter ve akış seçenekleri başvurusu.