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, Amazon Web Services (AWS), dan OneLake melalui namespace terpadu. OneLake mengelola semua izin dan kredensial, sehingga Anda tidak perlu mengonfigurasi setiap beban kerja Fabric secara terpisah untuk terhubung ke setiap sumber data. Selain itu, Anda dapat menggunakan pintasan untuk menghilangkan salinan data tepi dan mengurangi latensi proses yang terkait dengan salinan dan penahapan data.

Apa itu pintasan?

Pintasan adalah objek di OneLake yang menunjuk ke lokasi penyimpanan lainnya. Lokasi dapat internal atau eksternal ke OneLake. Lokasi tempat pintasan menunjuk ke dikenal sebagai jalur target pintasan. Lokasi tempat pintasan muncul dikenal sebagai jalur pintasan. Pintasan muncul sebagai folder di OneLake dan beban kerja atau layanan apa pun yang memiliki akses ke OneLake dapat menggunakannya. Pintasan berulah seperti tautan simbolis. Mereka adalah objek independen dari target. Jika Anda menghapus pintasan, target tetap tidak terpengaruh. Jika Anda memindahkan, mengganti nama, atau menghapus jalur target, pintasan dapat putus.

Diagram memperlihatkan cara pintasan menyambungkan file dan folder yang disimpan di lokasi lain.

Di mana saya bisa membuat pintasan?

Anda dapat membuat pintasan di lakehouse dan database Bahasa Kueri Kusto (KQL). Selain itu, pintasan yang Anda buat dalam item ini dapat menunjuk ke lokasi OneLake lainnya, Azure Data Lake Storage (ADLS) Gen2, akun penyimpanan Amazon S3, atau Dataverse.

Anda dapat menggunakan UI Fabric untuk membuat pintasan secara interaktif, dan Anda dapat menggunakan REST API untuk membuat pintasan secara terprogram.

Lakehouse

Saat membuat pintasan di lakehouse, Anda harus memahami struktur folder item. Lakehouses terdiri dari dua folder tingkat atas: folder Tabel dan folder File . Folder Tabel mewakili bagian terkelola dari lakehouse, sementara folder Files 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 secara otomatis menyinkronkan metadata dan mengenali folder sebagai tabel. Di folder File, tidak ada batasan di mana Anda dapat membuat pintasan. Anda dapat membuatnya di tingkat hierarki folder apa pun. Penemuan tabel tidak terjadi di folder File .

Diagram memperlihatkan tampilan Danau dan tampilan Tabel berdampingan.

Database KQL

Saat Anda membuat pintasan dalam database KQL, pintasan akan muncul di folder Pintasan database. Database KQL memperlakukan pintasan seperti tabel eksternal. Untuk mengkueri pintasan, gunakan external_table fungsi Bahasa Kueri Kusto.

Cuplikan layar pintasan di dalam database KQL.

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 API OneLake. Pintasan hanya muncul sebagai folder lain di danau. Spark, SQL, Real-Time Analytics, dan Analysis Services semuanya dapat menggunakan pintasan saat mengkueri data.

Spark

Buku catatan Spark dan pekerjaan Spark dapat menggunakan pintasan yang Anda buat di OneLake. Jalur file relatif dapat digunakan untuk langsung membaca data dari pintasan. Selain itu, jika Anda membuat pintasan di bagian Tabel lakehouse dan dalam format Delta, Anda dapat membacanya 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

Anda juga dapat membaca pintasan di bagian Tabel lakehouse melalui titik akhir analitik SQL untuk lakehouse. Anda dapat mengakses titik akhir analitik SQL melalui pemilih mode lakehouse atau melalui SQL Server Management Studio (SSMS).

SELECT TOP (100) *
FROM [MyLakehouse].[dbo].[MyShortcut]

Analitik Real-Time

Pintasan dalam database KQL dikenali sebagai tabel eksternal. Untuk mengkueri pintasan, gunakan external_table fungsi Bahasa Kueri Kusto.

external_table('MyShortcut')
| take 100

Analysis Services

Anda dapat membuat model semantik untuk lakehouse yang berisi pintasan di bagian Tabel lakehouse. Saat model semantik 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

Jenis pintasan

Pintasan OneLake mendukung beberapa sumber data sistem file. Ini termasuk lokasi OneLake internal, Azure Data Lake Storage (ADLS) Gen2, Amazon S3, dan Dataverse.

Pintasan OneLake internal

Pintasan OneLake internal memungkinkan Anda mereferensikan data dalam item Fabric yang ada. Item-item ini termasuk lakehouse, database KQL, 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 pengguna mengakses data melalui pintasan ke lokasi OneLake lain, identitas pengguna panggilan 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 model semantik 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.

Access

Pintasan ADLS harus menunjuk ke titik akhir DFS untuk akun penyimpanan. Contoh: https://accountname.dfs.core.windows.net/

Jika akun penyimpanan Anda dilindungi oleh firewall penyimpanan, Anda dapat mengonfigurasi akses layanan tepercaya. Lihat Akses Ruang Kerja Tepercaya

Authorization

Pintasan ADLS menggunakan model otorisasi yang didelegasikan. Dalam model ini, pembuat pintasan menentukan kredensial untuk pintasan ADLS dan semua akses ke pintasan tersebut diotorisasi menggunakan kredensial tersebut. Jenis yang didelegasikan yang didukung adalah akun Organisasi, Kunci Akun, Tanda Tangan Akses Bersama (SAS), dan Perwakilan Layanan.

  • Akun organisasi - harus memiliki peran Pembaca Data Blob Penyimpanan, Kontributor Data Blob Penyimpanan, atau Pemilik Data Blob Penyimpanan pada akun penyimpanan
  • Tanda Tangan Akses Bersama (SAS) - harus menyertakan setidaknya izin berikut: Baca, Daftar, dan Jalankan
  • Perwakilan Layanan - harus memiliki peran Pembaca Data Blob Penyimpanan, Kontributor Data Blob Penyimpanan, atau Pemilik Data Blob Penyimpanan pada akun penyimpanan

Catatan

Anda harus mengaktifkan Namespace Hierarkis di akun penyimpanan ADLS Gen 2 Anda.

Pintasan S3

Anda juga dapat membuat pintasan 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 Anda mengakses data melalui pintasan S3, awalan diwakili sebagai folder.

Access

Pintasan S3 harus menunjuk ke titik akhir https untuk wadah S3.

Contoh: https://bucketname.s3.region.amazonaws.com/

Catatan

Anda tidak perlu menonaktifkan pengaturan Akses Publik Blok S3 untuk akun S3 Anda agar pintasan S3 berfungsi.

Akses ke titik akhir S3 tidak boleh diblokir oleh firewall penyimpanan atau Virtual Private Cloud.

Authorization

Pintasan S3 menggunakan model otorisasi yang didelegasikan. Dalam model ini, pembuat pintasan menentukan kredensial untuk pintasan S3 dan semua akses ke pintasan tersebut diotorisasi menggunakan kredensial tersebut. Kredensial yang didelegasikan yang didukung adalah Kunci dan Rahasia untuk pengguna IAM.

Pengguna IAM harus memiliki izin berikut pada wadah yang ditujukan pintasan.

  • S3:GetObject
  • S3:GetBucketLocation
  • S3:ListBucket

Catatan

Pintasan S3 bersifat baca-saja. Mereka tidak mendukung operasi tulis terlepas dari izin untuk pengguna IAM.

Pintasan Google Cloud Storage (Pratinjau)

Pintasan dapat dibuat ke Google Cloud Storage (GCS) menggunakan XML API untuk GCS. Saat Anda membuat pintasan ke Google Cloud Storage, jalur target harus berisi nama wadah minimal. Anda juga dapat membatasi cakupan pintasan dengan menentukan lebih lanjut awalan/folder yang ingin Anda arahkan dalam hierarki penyimpanan.

Access

Saat mengonfigurasi koneksi untuk pintasan GCS, Anda dapat menentukan titik akhir global untuk layanan penyimpanan atau menggunakan titik akhir spesifik wadah.

  • Contoh Titik Akhir Global: https://storage.googleapis.com
  • Contoh Titik Akhir Spesifik Wadah: https://<BucketName>.storage.googleapis.com

Authorization

Pintasan GCS menggunakan model otorisasi yang didelegasikan. Dalam model ini, pembuat pintasan menentukan kredensial untuk pintasan GCS dan semua akses ke pintasan tersebut diotorisasi menggunakan kredensial tersebut. Kredensial yang didelegasikan yang didukung adalah kunci dan rahasia HMAC untuk akun Layanan atau Akun pengguna.

Akun harus memiliki izin untuk mengakses data dalam wadah GCS. Jika titik akhir khusus wadah digunakan dalam koneksi untuk pintasan, akun harus memiliki izin berikut:

  • storage.objects.get
  • stoage.objects.list

Jika titik akhir global digunakan dalam koneksi untuk pintasan, akun juga harus memiliki izin berikut:

  • storage.buckets.list

Catatan

Pintasan GCS bersifat baca-saja. Mereka tidak mendukung operasi tulis terlepas dari izin untuk akun yang digunakan.

Pintasan dataverse

Integrasi langsung Dataverse dengan Microsoft Fabric memungkinkan organisasi memperluas aplikasi perusahaan Dynamics 365 dan proses bisnis mereka ke Fabric. Integrasi ini dicapai melalui pintasan, yang dapat dibuat dengan dua cara: melalui portal pembuat PowerApps atau melalui Fabric secara langsung.

Membuat Pintasan melalui Portal Pembuat PowerApps

Pengguna PowerApps resmi dapat mengakses portal pembuat PowerApps dan menggunakan fitur Tautan ke Microsoft Fabric . Dari tindakan tunggal ini, Lakehouse dibuat di Fabric dan pintasan secara otomatis dihasilkan untuk setiap tabel di lingkungan Dataverse. Untuk informasi selengkapnya, lihat Integrasi langsung Dataverse dengan Microsoft Fabric.

Membuat Pintasan melalui Fabric

Pengguna Fabric juga dapat membuat pintasan ke Dataverse. Dari UX buat pintasan, pengguna dapat memilih Dataverse, menyediakan URL lingkungan mereka, dan menelusuri tabel yang tersedia. Pengalaman ini memungkinkan pengguna untuk secara selektif memilih tabel mana yang akan dibawa ke Fabric daripada membawa semua tabel.

Catatan

Tabel Dataverse harus terlebih dahulu tersedia di Dataverse Managed Lake sebelum terlihat di UX pintasan pembuatan Fabric. Jika tabel Anda tidak terlihat dari Fabric, gunakan fitur Tautan ke Microsoft Fabric dari portal pembuat PowerApps.

Authorization

Pintasan dataverse menggunakan model otorisasi yang didelegasikan. Dalam model ini, pembuat pintasan menentukan kredensial untuk pintasan Dataverse, dan semua akses ke pintasan tersebut diotorisasi menggunakan kredensial tersebut. Jenis kredensial yang didelegasikan yang didukung adalah akun Organisasi (OAuth2). Akun organisasi harus memiliki izin administrator sistem untuk mengakses data di Dataverse Managed Lake.

Catatan

Perwakilan Layanan saat ini tidak didukung untuk otorisasi pintasan Dataverse.

penembolokan

Penembolokan pintasan dapat digunakan untuk mengurangi biaya keluar yang terkait dengan akses data lintas cloud. Saat file dibaca melalui pintasan eksternal, file disimpan dalam cache untuk ruang kerja Fabric. Permintaan baca berikutnya dilayani dari cache daripada penyedia penyimpanan jarak jauh. File yang di-cache memiliki periode retensi 24 jam. Setiap kali file diakses, periode retensi diatur ulang. Jika file di penyedia penyimpanan jarak jauh lebih baru daripada file di cache, permintaan dilayani dari penyedia penyimpanan jarak jauh dan file yang diperbarui akan disimpan dalam cache. Jika file belum diakses selama lebih dari 24 jam, file dihapus menyeluruh dari cache. File individual yang berukuran lebih besar dari 1GB tidak di-cache.

Catatan

Penembolokan pintasan saat ini hanya didukung untuk pintasan yang kompatibel dengan GCS, S3, dan S3.

Untuk mengaktifkan penembolokan pintasan, buka panel Pengaturan ruang kerja. Pilih tab OneLake . Alihkan pengaturan cache ke Aktif dan klik Simpan.

Cuplikan layar panel pengaturan ruang kerja dengan tab OneLake dipilih.

Cara pintasan menggunakan koneksi cloud

Otorisasi pintasan ADLS dan S3 didelegasikan dengan menggunakan koneksi cloud. Saat membuat pintasan ADLS atau S3 baru, Anda membuat koneksi baru atau memilih koneksi yang sudah ada untuk sumber data. Mengatur koneksi untuk pintasan adalah operasi pengikatan. Hanya pengguna dengan izin pada koneksi yang dapat melakukan operasi pengikatan. Jika Anda tidak memiliki izin pada koneksi, Anda tidak dapat membuat pintasan baru menggunakan koneksi tersebut.

Izin

Kombinasi izin di jalur pintasan dan jalur target mengatur izin untuk pintasan. 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 dapat menulis ke jalur target pintasan. Demikian juga, pengguna yang hanya memiliki izin baca di lakehouse tetapi membaca/menulis di target pintasan juga tidak dapat 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 tabel lakehouse melalui titik akhir TDS Ya Ya Ya Ya

1 Pengguna harus memiliki peran yang menyediakan izin tulis lokasi pintasan dan setidaknya izin baca di lokasi target.

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.

Peran akses data OneLake (pratinjau)

Peran akses data OneLake adalah fitur baru yang memungkinkan Anda menerapkan kontrol akses berbasis peran (RBAC) ke data Anda yang disimpan di OneLake. Anda dapat menentukan peran keamanan yang memberikan akses baca ke folder tertentu dalam item Fabric, dan menetapkannya kepada pengguna atau grup. Izin akses menentukan folder apa yang dilihat pengguna saat mengakses tampilan data lake, baik melalui UX lakehouse, notebook, atau ONELake API. Untuk item dengan fitur pratinjau diaktifkan, peran akses data OneLake juga menentukan akses pengguna ke pintasan.

Pengguna dalam peran Admin, Anggota, dan Kontributor memiliki akses penuh untuk membaca data dari pintasan terlepas dari peran akses data OneLake yang ditentukan. Namun, mereka masih memerlukan akses pada sumber dan target pintasan seperti yang disebutkan dalam peran Ruang Kerja.

Pengguna dalam peran Penampil atau yang memiliki lakehouse yang dibagikan dengan mereka secara langsung memiliki akses yang dibatasi berdasarkan apakah pengguna memiliki akses melalui peran akses data OneLake. Untuk informasi selengkapnya tentang model kontrol akses dengan pintasan, lihat Model Kontrol Akses Data di OneLake.

Bagaimana pintasan menangani penghapusan?

Pintasan tidak melakukan penghapusan berskala. Saat Anda melakukan operasi penghapusan pada pintasan, Anda hanya menghapus objek pintasan. Data dalam 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 akan dihapus di target. Contoh berikut mengilustrasikan poin ini.

Hapus 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 data ( ) di sudut kanan atas penjelajah Ruang Kerja.

Cuplikan layar tampilan silsilah data.

Catatan

Tampilan silsilah data dilingkup ke satu ruang kerja. Pintasan ke lokasi di luar ruang kerja terpilih tidak akan muncul.

Batasan dan pertimbangan

  • Jumlah maksimum pintasan per item Fabric adalah 100.000. Dalam konteks ini, istilah item mengacu pada: aplikasi, lakehouse, gudang, laporan, dan banyak lagi.
  • 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 RFC 3986 bagian 2.2. Untuk karakter yang diizinkan, lihat RFC 3968 bagian 2.3.
  • Nama pintasan OneLake, jalur induk, dan jalur target tidak boleh berisi karakter "%" atau "+".
  • Pintasan tidak mendukung karakter non-Latin.
  • Salin BLob API 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 tambahan tidak dapat dibuat di dalam pintasan ADLS atau S3.
  • Silsilah data untuk pintasan ke Gudang Data dan Model Semantik saat ini tidak tersedia.