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.
Bu sayfada, Databricks ODBC Sürücüsü kullanılarak Unity Kataloğu birimlerindeki dosyaların nasıl karşıya yüklendiği, indirileceği ve silineceği açıklanır.
Gereksinimler
- Databricks ODBC Sürücüsü sürüm 2.8.2 veya üzeri
- Yerel sorgu modu etkin (varsayılan). Devre dışı bırakıldıysa,
UseNativeQuery=1veyaUseNativeQuery=2ekleyerek bağlantı dizesine ekleyin.
Kimlik doğrulaması kurulumuyla ilgili eksiksiz bir Python örneği için bkz. Python ve pyodbc'yi Azure Databricks'e bağlama.
Dosya yükle
Bir dosyayı karşıya yüklemek için, StagingAllowedLocalPaths özelliğini karşıya yüklenecek dosyanın yolu ile bağlantı dizesine ekleyin. Birden çok kaynak konumu için virgülle ayrılmış bir liste kullanın (örneğin, /tmp/,/usr/tmp/).
Önemli
Kullanıcıların ODBC URL'sini denetlediği (BI araçları veya geliştirici hizmetleri gibi) çok kiracılı ortamlarda, StagingAllowedLocalPaths'i korumalı alan konumuna veya var olmayan bir yola ayarlayın. Bu, kullanıcıların rastgele dosyalar yazmasını ve hizmetin iç dağıtımına müdahale etmesini engeller.
Varolan bir dosyanın üzerine yazmak için deyime ekleyin OVERWRITE.
conn_string = "".join([
"DRIVER=", os.getenv("ODBC_DRIVER", "/Library/simba/spark/lib/libsparkodbc_sbu.dylib"),
";Host=", os.getenv("ODBC_HOST_NAME", "<<HOST_NAME>>"),
";PORT=443",
";HTTPPath=", os.getenv("ODBC_HTTP_PATH", "/sql/1.0/endpoints/1234567890"),
";AuthMech=11",
";SSL=1",
";ThriftTransport=2",
";SparkServerType=3",
";Auth_Flow=0",
";Auth_AccessToken=", os.getenv("API_TOKEN", "<<NO_ACCESS_TOKEN_IS_SET>>"),
";StagingAllowedLocalPaths=", "/tmp"),
os.getenv("ODBC_OPTIONS", ""),
])
conn = pyodbc.connect(conn_string, autocommit=True)
cursor = conn.cursor()
cursor.execute("PUT '" +
"/tmp/my-data.csv" +
"' INTO '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"' OVERWRITE")
Dosya indirme
Dosyayı bir birimden yerel bir yola indirmek için GET kullanın.
conn = pyodbc.connect(conn_string, autocommit=True)
cursor = conn.cursor()
cursor.execute("GET '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"' TO '" +
"/tmp/my-downloaded-data.csv" +
"'")
Dosya silme
Bir birimden dosya silmek için kullanın REMOVE :
conn = pyodbc.connect(conn_string, autocommit=True)
cursor = conn.cursor()
cursor.execute("REMOVE '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"'")