Pintasan OneLake
Pintasan di Microsoft OneLake memungkinkan Anda menyatukan data di seluruh domain, cloud, dan akun dengan membuat satu data lake virtual untuk seluruh perusahaan Anda. Semua pengalaman Fabric dan mesin analitik dapat langsung terhubung ke sumber data Anda yang ada seperti Azure, AWS, dan OneLake melalui namespace layanan terpadu. Izin dan kredensial semuanya dikelola oleh OneLake, sehingga setiap pengalaman Fabric tidak perlu dikonfigurasi secara terpisah untuk terhubung ke setiap sumber data. Selain itu, Anda dapat menggunakan pintasan untuk menghilangkan salinan tepi data dan mengurangi latensi proses yang terkait dengan salinan dan penahapan data.
Penting
Microsoft Fabric sedang dalam pratinjau.
Apa itu pintasan?
Pintasan adalah objek di OneLake yang menunjuk ke lokasi penyimpanan lainnya. Lokasi dapat internal atau eksternal ke OneLake. Lokasi yang diacu pintasan dikenal sebagai jalur "Target" pintasan. Lokasi tempat pintasan muncul dikenal sebagai jalur "Pintasan". Pintasan muncul sebagai folder di OneLake dan dapat digunakan secara transparan oleh pengalaman atau layanan apa pun yang memiliki akses ke OneLake. Pintasan berulah mirip dengan tautan simbolis. Mereka adalah objek independen dari target. Jika pintasan dihapus, target tetap tidak terpengaruh. Jika jalur target dipindahkan, diganti namanya, atau dihapus, pintasan dapat putus.
Di mana saya bisa membuat pintasan?
Pintasan dapat dibuat baik di Lakehouses maupun KQL Database. Selain itu, pintasan yang dibuat dalam item ini dapat menunjuk ke lokasi OneLake lainnya, akun penyimpanan ADLS Gen2 atau Amazon S3.
Lakehouse
Saat membuat pintasan di Lakehouse, penting untuk memahami struktur folder item. Lakehouses terdiri dari dua folder tingkat atas: Folder "Tabel" dan folder "File". Folder "Tabel" mewakili bagian yang dikelola dari Lakehouse sementara folder "File" adalah bagian yang tidak dikelola dari Lakehouse. Di folder "Tabel", Anda hanya dapat membuat pintasan di tingkat atas. Pintasan tidak didukung di subdirektori lain dari folder "Tabel". Jika target pintasan berisi data dalam format delta\parquet, Lakehouse akan secara otomatis menyinkronkan metadata dan mengenali folder sebagai Tabel. Di folder "File", tidak ada batasan di mana Anda dapat membuat pintasan. Mereka dapat dibuat pada tingkat hierarki folder apa pun. Penemuan tabel tidak terjadi di folder "File".
KQL Database
Saat Anda membuat pintasan di database KQL, pintasan akan muncul di folder "Pintasan" database. Database KQL memperlakukan pintasan seperti tabel eksternal. Untuk mengkueri pintasan, gunakan fungsi "external_table" dari Bahasa Kueri Kusto.
Di mana saya dapat mengakses pintasan?
Setiap layanan Fabric atau non-Fabric yang dapat mengakses data di OneLake dapat menggunakan pintasan. Pintasan transparan untuk layanan apa pun yang mengakses data melalui ONELake API. Pintasan hanya muncul sebagai folder lain di danau. Ini memungkinkan Spark, SQL, Real-Time Analytics, dan Analysis Services untuk semua pintasan yang digunakan saat mengkueri data.
Spark
Buku catatan Spark dan pekerjaan Spark dapat menggunakan pintasan yang dibuat di OneLake. Jalur file relatif dapat digunakan untuk langsung membaca data dari pintasan. Selain itu, jika pintasan dibuat di bagian "Tabel" dari Lakehouse dan dalam format delta, pintasan juga dapat dibaca sebagai tabel terkelola menggunakan sintaks Spark SQL.
df = spark.read.format("delta").load("Tables/MyShortcut")
display(df)
df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000")
display(df)
Catatan
Format delta tidak mendukung tabel dengan karakter spasi dalam nama. Pintasan apa pun yang berisi spasi dalam nama tidak akan ditemukan sebagai tabel delta di lakehouse.
SQL
Pintasan di bagian tabel Lakehouse juga dapat dibaca melalui titik akhir SQL untuk Lakehouse. Ini dapat diakses melalui pemilih mode Lakehouse atau melalui SQL Server Management Studio (SSMS).
SELECT TOP (100) *
FROM [MyLakehouse].[dbo].[MyShortcut]
Analitik Real-Time
Pintasan dalam KQL DB dikenali sebagai tabel eksternal. Untuk mengkueri pintasan, gunakan fungsi "external_table" dari Bahasa Kueri Kusto.
external_table('MyShortcut')
| take 100
Catatan
Database KQL saat ini tidak mendukung data dalam format delta. Tabel dalam database KQL hanya diekspor ke OneLake sebagai file parket. Pintasan dalam database KQL yang berisi data berformat delta dalam target tidak dikenali sebagai tabel.
Analysis Services
Himpunan data Power BI dapat dibuat untuk Lakehouse yang berisi pintasan di bagian tabel Lakehouse. Saat himpunan data berjalan dalam mode direct-lake, Analysis Services dapat membaca data langsung dari pintasan.
Non-Fabric
Aplikasi dan layanan di luar Fabric juga dapat mengakses pintasan melalui ONELake API. OneLake mendukung subset API penyimpanan ADLS Gen2 dan Blob. Untuk mempelajari selengkapnya tentang API OneLake, lihat Akses OneLake dengan API.
https://onelake.dfs.fabric.microsoft.com/MyWorkspace/MyLakhouse/Tables/MyShortcut/MyFile.csv
Tipe pintasan
Pintasan OneLake mendukung beberapa sumber data sistem file. Ini termasuk lokasi OneLake internal, Azure Data Lake Storage Gen2 dan Amazon S3.
Pintasan OneLake internal
Pintasan OneLake internal memungkinkan Anda mereferensikan data dalam item Fabric yang ada. Item-item ini termasuk Lakehouses, KQL Database, dan Gudang Data. Pintasan dapat menunjuk ke lokasi folder dalam item yang sama, di seluruh item dalam ruang kerja yang sama atau bahkan di seluruh item di ruang kerja yang berbeda. Saat Anda membuat pintasan di seluruh item, jenis item tidak perlu cocok. Misalnya, Anda dapat membuat pintasan di Lakehouse yang menunjuk ke data di Gudang Data.
Saat mengakses data melalui pintasan ke lokasi OneLake lain, identitas pengguna panggilan akan digunakan untuk mengotorisasi akses ke data di jalur target pintasan*. Pengguna ini harus memiliki izin di lokasi target untuk membaca data.
Penting
Saat mengakses pintasan melalui Himpunan Data Power BI atau T-SQL, identitas pengguna panggilan tidak diteruskan ke target pintasan. Sebagai gantinya, identitas pemilik item panggilan diteruskan, mendelegasikan akses ke pengguna panggilan.
Pintasan ADLS
Pintasan juga dapat dibuat ke akun penyimpanan ADLS Gen2. Saat Anda membuat pintasan ke ADLS, jalur target dapat menunjuk ke folder apa pun dalam namespace hierarkis. Minimal, jalur target harus menyertakan nama kontainer.
Akses:
Pintasan ADLS harus menunjuk ke titik akhir DFS untuk akun penyimpanan.
Contoh: https://accountname.dfs.core.windows.net/
Catatan
Pintasan ADLS tidak mendukung titik akhir privat.
Otorisasi:
Pintasan ADLS menggunakan model otorisasi yang didelegasikan. Dalam model ini, pembuat pintasan menentukan kredensial untuk pintasan ADLS dan semua akses ke pintasan tersebut akan diotorisasi menggunakan kredensial tersebut. Jenis yang didelegasikan yang didukung adalah Kunci Akun, Token SAS, OAuth, dan Perwakilan Layanan.
Token SAS - harus menyertakan setidaknya izin berikut: Baca, Daftar, Jalankan
Identitas OAuth - harus memiliki peran Pembaca Data Blob Penyimpanan, Kontributor Data Blob Penyimpanan, atau Pemilik Data Blob Penyimpanan di akun penyimpanan.
Perwakilan Layanan - harus memiliki peran Storage Blob Data Reader, Storage Blob Data Contributor, atau Storage Blob Data Owner pada akun penyimpanan.
Pintasan S3
Pintasan juga dapat dibuat ke akun Amazon S3. Saat Anda membuat pintasan ke Amazon S3, jalur target harus berisi nama wadah minimal. S3 tidak secara asli mendukung namespace hierarkis tetapi Anda dapat menggunakan awalan untuk meniru struktur direktori. Anda dapat menyertakan awalan di jalur pintasan untuk lebih mempersempit cakupan data yang dapat diakses melalui pintasan. Saat mengakses data melalui awalan pintasan S3 akan direpresentasikan sebagai folder.
Akses:
Pintasan S3 harus menunjuk ke titik akhir https untuk wadah S3.
Contoh: https://bucketname.s3.region.amazonaws.com/
Catatan
Pintasan S3 tidak mendukung titik akhir privat.
Otorisasi:
Pintasan S3 menggunakan model otorisasi yang didelegasikan. Dalam model ini, pembuat pintasan menentukan kredensial untuk pintasan S3 dan semua akses ke pintasan tersebut akan diotorisasi menggunakan kredensial tersebut. Kredensial yang didelegasikan yang didukung adalah Kunci dan Rahasia untuk pengguna IAM.
IAM harus memiliki setidaknya izin baca saja (Dapatkan, Daftar) pada wadah yang diacu pintasan.
Catatan
Pintasan S3 bersifat baca-saja. Mereka tidak mendukung operasi tulis terlepas dari izin untuk pengguna IAM.
Bagaimana pintasan menggunakan koneksi cloud
Otorisasi pintasan ADLS dan S3 didelegasikan melalui penggunaan koneksi cloud. Saat membuat pintasan ADLS atau S3 baru, pengguna membuat koneksi baru atau memilih koneksi yang sudah ada untuk sumber data. Ketika koneksi diatur untuk pintasan, ini dianggap sebagai operasi "ikat". Hanya pengguna dengan izin pada koneksi yang dapat melakukan operasi pengikatan. Jika pengguna tidak memiliki izin pada koneksi, mereka tidak dapat membuat pintasan baru menggunakan koneksi tersebut.
Izin
Izin untuk pintasan diatur oleh kombinasi izin di jalur pintasan dan jalur target. Saat pengguna mengakses pintasan, izin paling ketat dari dua lokasi diterapkan. Oleh karena itu, pengguna yang memiliki izin baca/tulis di Lakehouse tetapi hanya membaca izin di target pintasan tidak akan diizinkan untuk menulis ke jalur target pintasan. Demikian juga, pengguna yang hanya memiliki izin baca di Lakehouse tetapi membaca/menulis di target pintasan juga tidak akan diizinkan untuk menulis ke jalur target pintasan.
Peran ruang kerja
Tabel berikut ini memperlihatkan izin terkait pintasan untuk setiap peran ruang kerja. Untuk informasi selengkapnya, lihat Peran ruang kerja.
Kemampuan | Admin | Anggota | Kontributor | Penampil |
---|---|---|---|---|
Membuat pintasan | Ya1 | Ya1 | Ya1 | - |
Membaca konten file/folder pintasan | Ya2 | Ya2 | Ya2 | - |
Menulis ke lokasi target pintasan | Ya3 | Ya3 | Ya3 | - |
Membaca data dari pintasan di bagian tabelLakehouse melalui titik akhir TDS | Ya | Ya | Ya | Ya |
1 Pengguna harus memiliki peran yang menyediakan izin tulis lokasi pintasan dan setidaknya lokasi target izin baca
2 Pengguna harus memiliki peran yang menyediakan izin baca baik di lokasi pintasan maupun lokasi target
3 Pengguna harus memiliki peran yang menyediakan izin tulis baik di lokasi pintasan maupun lokasi target
Bagaimana pintasan menangani penghapusan?
Pintasan tidak melakukan penghapusan berkaskala. Saat Anda melakukan operasi penghapusan pada pintasan, Anda hanya menghapus objek pintasan. Data di target pintasan tetap tidak berubah. Namun, jika Anda melakukan operasi penghapusan pada file atau folder dalam pintasan, dan Anda memiliki izin di target pintasan untuk melakukan operasi penghapusan, file dan/atau folder dihapus di target. Contoh berikut mengilustrasikan poin ini.
Menghapus contoh
Pengguna A memiliki lakehouse dengan jalur berikut di dalamnya:
MyLakehouse\Files\MyShortcut\Foo\Bar
MyShortcut adalah pintasan yang menunjuk ke akun ADLS Gen2 yang berisi direktori Foo\Bar .
Menghapus objek pintasan
Pengguna A melakukan operasi penghapusan pada jalur berikut:
MyLakehouse\Files\MyShortcut
Dalam hal ini, MyShortcut dihapus dari Lakehouse. Pintasan tidak melakukan penghapusan berjenjang, oleh karena itu file dan direktori di akun ADLS Gen2 Foo\Bar tetap tidak terpengaruh.
Menghapus konten yang dirujuk oleh pintasan
Pengguna A melakukan operasi penghapusan pada jalur berikut:
MyLakehouse\Files\MyShortcut\Foo\Bar
Dalam hal ini, jika Pengguna A memiliki izin tulis di akun ADLS Gen2, direktori Bar dihapus dari akun ADLS Gen2.
Tampilan silsilah ruang kerja
Saat membuat pintasan antara beberapa item Fabric dalam ruang kerja, Anda dapat memvisualisasikan hubungan pintasan melalui tampilan silsilah ruang kerja. Pilih tombol Tampilan silsilah ( ) di sudut kanan atas penjelajah Ruang Kerja.
Catatan
Tampilan silsilah dilingkup ke satu ruang kerja. Pintasan ke lokasi di luar ruang kerja terpilih tidak akan muncul.
Masalah dan batasan yang diketahui
- Jumlah maksimum pintasan per item Fabric adalah 10.000.
- Jumlah maksimum pintasan dalam satu jalur OneLake adalah 10.
- Jumlah maksimum pintasan langsung ke tautan pintasan adalah 5.
- Jalur target pintasan ADLS dan S3 tidak boleh berisi karakter yang dipesan dari RCF 3986 bagian 2.2.
- Jalur target pintasan OneLake tidak boleh berisi karakter "%".
- Pintasan tidak mendukung karakter nonlatin.
- Salin Blob api yang tidak didukung untuk pintasan ADLS atau S3.
- Fungsi salin tidak berfungsi pada pintasan yang langsung mengarah ke kontainer ADLS. Disarankan untuk membuat pintasan ADLS ke direktori yang setidaknya satu tingkat di bawah kontainer.
- Pintasan OneLake yang menunjuk ke pintasan ADLS atau S3 tidak didukung.
- Pintasan tambahan tidak dapat dibuat di dalam pintasan ADLS atau S3.