Tabel dalam Fabric Data Warehouse

Berlaku untuk:✅ Gudang di Microsoft Fabric

Artikel ini merinci konsep utama untuk merancang tabel di Microsoft Fabric.

Dalam tabel, data diatur secara logis dalam format baris dan kolom. Setiap baris mewakili rekaman unik, dan setiap kolom mewakili bidang dalam rekaman.

Menentukan kategori tabel

Skema bintang mengatur data ke dalam tabel fakta dan tabel dimensi. Beberapa tabel digunakan untuk data integrasi atau staging sebelum pindah ke tabel fakta atau dimensi. Saat Anda merancang tabel, putuskan apakah data tabel akan berada dalam tabel fakta, dimensi, atau integrasi. Keputusan ini menginformasikan struktur tabel yang sesuai.

  • Tabel fakta berisi data kuantitatif yang umumnya dihasilkan dalam sistem transaksional, lalu dimuat ke dalam gudang data. Misalnya, setiap hari bisnis ritel menghasilkan transaksi penjualan dan kemudian memuat datanya ke dalam tabel fakta gudang data untuk keperluan analisis.

  • Tabel dimensi berisi data atribut yang mungkin berubah tetapi biasanya jarang berubah. Misalnya, nama dan alamat pelanggan disimpan dalam tabel dimensi dan diperbarui hanya jika profil pelanggan berubah. Untuk mengecilkan ukuran tabel fakta yang besar, nama dan alamat pelanggan tidak perlu ada di setiap baris tabel fakta. Sebagai gantinya, tabel fakta dan tabel dimensi dapat berbagi ID pelanggan. Kueri dapat menggabungkan dua tabel untuk mengaitkan profil dan transaksi pelanggan.

  • Tabel integrasi menyediakan tempat untuk mengintegrasikan atau penahapan data. Contohnya, Anda dapat memuat data ke tabel penahapan, melakukan transformasi pada data dalam penahapan, kemudian menyisipkan data ke dalam tabel produksi.

Tabel menyimpan data di OneLake sebagai bagian dari Gudang. Tabel dan data akan tetap ada terlepas dari apakah sesi terbuka atau tidak.

Tabel di gudang

Untuk memperlihatkan organisasi tabel, Anda dapat menggunakan fact, , dimatau int sebagai awalan untuk nama tabel. Tabel berikut ini memperlihatkan beberapa nama skema dan tabel untuk gudang data sampel WideWorldImportersDW .

Nama Tabel Sumber WideWorldImportersDW Tipe Tabel Nama Tabel Data Warehouse
Kota Dimensi wwi.DimCity
Pesanan Fakta wwi.FactOrder
  • Nama tabel tidak boleh berisi / atau \ atau diakhiri dengan ..

Buat tabel

Untuk Gudang, Anda dapat membuat tabel sebagai tabel kosong baru. Anda juga dapat membuat dan mengisi tabel dengan hasil dari pernyataan pilih. Berikut perintah T-SQL untuk membuat tabel.

Pernyataan T-SQL Deskripsi
BUAT TABEL Membuat tabel kosong dengan menentukan semua kolom dan opsi tabel.
BUAT TABEL SEBAGAI PILIH Mengisi tabel baru dengan hasil dari pernyataan pilih. Kolom dan tipe data tabel berdasarkan hasil dari pernyataan SELECT. Untuk mengimpor data, pernyataan ini dapat memilih dari tabel eksternal.

Contoh ini membuat tabel dengan dua kolom:

CREATE TABLE MyTable (col1 int, col2 int );

Nama skema

Gudang mendukung pembuatan skema kustom. Seperti dalam SQL Server, skema adalah cara yang baik untuk mengelompokkan objek yang digunakan dengan cara yang sama. Kode berikut membuat skema yang ditentukan pengguna yang disebut wwi.

  • Nama skema sensitif terhadap huruf besar/kecil.
  • Nama skema tidak boleh berisi / atau \ atau berakhir dengan ..
CREATE SCHEMA wwi;

Jenis data

Microsoft Fabric mendukung jenis data T-SQL yang paling umum digunakan.

Koalisi

Gudang kain dikonfigurasi berdasarkan pengaturan pengurutan ruang kerja, yang secara default adalah pengurutan yang sensitif terhadap huruf besar/kecil (CS) Latin1_General_100_BIN2_UTF8. Saat membuat gudang baru, pengurutan ruang kerja akan digunakan. Untuk informasi selengkapnya, lihat kolate Data Warehouse.

Kolatasi gudang yang didukung adalah:

  • Latin1_General_100_BIN2_UTF8 (standar)
  • Latin1_General_100_CI_AS_KS_WS_SC_UTF8

Anda dapat membuat gudang dengan pengurutan yang bukan default menggunakan REST API. Untuk informasi selengkapnya, lihat Cara: Membuat gudang dengan pengurutan tidak peka huruf besar/kecil (CI).

Setelah kolase diatur selama pembuatan database, semua objek berikutnya (tabel, kolom, dll.) akan mewarisi kolase default ini. Setelah gudang dibuat, pengaturan kolasi tidak dapat diubah.

Statistik

Pengoptimal kueri menggunakan statistik tingkat kolom saat membuat rencana untuk menjalankan kueri. Untuk meningkatkan performa kueri, penting untuk memiliki statistik pada kolom individual, terutama kolom yang digunakan dalam gabungan kueri. Gudang mendukung pembuatan statistik otomatis.

Pembaruan statistik tidak terjadi secara otomatis. Lakukan pembaruan statistik setelah sejumlah besar baris ditambahkan atau diubah. Misalnya, lakukan pembaruan statistik setelah pemuatan. Untuk informasi selengkapnya, lihat Statistik pada Fabric Data Warehouse.

Kunci primer, kunci asing, dan kunci unik

Untuk Gudang, PRIMARY KEY dan UNIQUE batasan hanya didukung saat NONCLUSTERED dan NOT ENFORCED keduanya digunakan.

FOREIGN KEY hanya didukung saat NOT ENFORCED digunakan.

tabel sementara #temp

Tabel sementara yang dilingkup sesi (#temp) dapat dibuat di Fabric Data Warehouse.

Tabel-tabel ini hanya ada dalam sesi di mana mereka dibuat dan bertahan selama durasi sesi tersebut. Mereka tidak terlihat oleh pengguna atau sesi lain dan secara otomatis dihilangkan dari sistem setelah sesi berakhir atau tabel #temp dihilangkan. Tabel ini dapat diakses oleh semua pengguna tanpa memerlukan izin tingkat item tertentu.

Dua jenis tabel #temp dapat dibuat berdasarkan kasus penggunaan tertentu: tidak didistribusikan dan didistribusikan.

  • Tabel #temp yang tidak terdistribusi (didukung mdf) adalah jenis default. Sintaks untuk membuat dan menggunakan tabel #temp yang tidak terdistribusi dalam Fabric Data Warehouse mirip dengan tabel pengguna, tetapi Anda perlu mengawali nama tabel sementara dengan #.

     CREATE TABLE #table_name (
       Col1 data_type1,
       Col2 data_type2
     );
    
  • Tabel sementara terdistribusi (didukung Parquet) dapat dibuat dengan DISTRIBUTION=ROUND_ROBIN kata kunci:

    CREATE TABLE #table_name (
    Col1 data_type1,
    Col2 data_type2
    ) WITH (DISTRIBUTION=ROUND_ROBIN);
    

Dalam skrip sebelumnya, data_type1 dan data_type2 adalah tempat penampung untuk jenis Data yang didukung di Fabric Data Warehouse.

Tabel #temp terdistribusi disarankan, karena selaras dengan tabel pengguna normal; mereka memiliki penyimpanan tak terbatas, dukungan jenis data, dan operasi T-SQL.

Catatan lain tentang tabel sementara di Fabric Data Warehouse:

  • Sintaks untuk manipulasi dan definisi data identik dengan tabel pengguna di Fabric Data Warehouse, dengan awalan # ditambahkan ke nama tabel.
  • Tabel sementara tidak terpengaruh oleh petunjuk kueri perjalanan waktu dan selalu menampilkan data terbaru dalam tabel.
  • Anda dapat mengubah tabel sementara terdistribusi dengan ALTER TABLE, tetapi bukan tabel sementara yang didukung MDF.

Selaraskan data sumber dengan gudang data

Tabel gudang diisi dengan memuat data dari sumber data lain. Untuk mencapai beban yang berhasil, jumlah dan jenis data kolom dalam data sumber harus selaras dengan definisi tabel di gudang.

Jika data berasal dari beberapa penyimpanan data, Anda dapat memindahkan data ke gudang dan menyimpannya dalam tabel integrasi. Setelah data berada dalam tabel integrasi, Anda dapat menggunakan kekuatan gudang untuk menerapkan operasi transformasi. Setelah data disiapkan, Anda dapat menyisipkannya ke dalam tabel produksi.

Batasan

Gudang mendukung banyak, tetapi tidak semua, dari fitur tabel yang ditawarkan oleh database lain.

  • Tabel global sementara tidak didukung saat ini.

Daftar berikut ini memperlihatkan beberapa fitur tabel yang saat ini tidak didukung.

  • 1.024 kolom maksimum per tabel

  • Kolom terhitung

  • Pandangan terindeks

  • Tabel berpartisi

  • Urutan

  • Kolom Jarang

  • Sinonim

  • Pemicu

  • Indeks unik

  • Jenis yang ditentukan pengguna

  • Tabel eksternal

  • Metadata objek gudang di-cache oleh Fabric Data Warehouse untuk menyediakan akses cepat ke objek dan definisinya. Untuk gudang yang sangat besar dengan lebih dari 750.000 objek (misalnya, tabel, tampilan, prosedur tersimpan, dan fungsi), metadata tidak lagi di-cache oleh sistem. Sebagai gantinya, operasi skema mengkueri penyimpanan metadata secara langsung. Ini memastikan stabilitas sistem dan mencegah kelaparan cache dalam database yang sangat besar. Namun, operasi refresh skema dapat memakan waktu lebih lama dibandingkan dengan gudang yang lebih kecil dengan penyimpanan sementara metadata diaktifkan.

Penting

Ada batasan dengan menambahkan batasan tabel atau kolom saat menggunakan Kontrol Sumber dengan Gudang.