Bagikan melalui


Data kueri seperti yang ada di masa lalu

Berlaku untuk:✅ Gudang di Microsoft Fabric

Gudang di Microsoft Fabric menawarkan kemampuan untuk mengkueri data historis seperti yang ada di masa lalu. Kemampuan untuk mengkueri data dari tanda waktu tertentu dikenal di industri pergudangan data sebagai perjalanan waktu.

  • Perjalanan waktu memfasilitasi pelaporan yang stabil dengan mempertahankan konsistensi dan akurasi data dari waktu ke waktu.
  • Perjalanan waktu memungkinkan analisis tren historis dengan mengkueri berbagai titik waktu lalu, dan membantu mengantisipasi tren di masa mendatang.
  • Perjalanan waktu menyederhanakan perbandingan biaya rendah antara versi data sebelumnya.
  • Perjalanan waktu membantu menganalisis performa dari waktu ke waktu.
  • Perjalanan waktu memungkinkan organisasi untuk mengaudit perubahan data dari waktu ke waktu, sering kali diperlukan untuk tujuan kepatuhan.
  • Perjalanan waktu membantu mereproduksi hasil dari model pembelajaran mesin.
  • Perjalanan waktu dapat mengkueri tabel seperti yang ada pada titik waktu tertentu di beberapa gudang di ruang kerja yang sama.

Apa itu perjalanan waktu?

Perjalanan waktu di gudang data adalah kemampuan bernilai rendah dan efisien untuk mengkueri versi data sebelumnya dengan cepat.

Microsoft Fabric saat ini memungkinkan pengambilan status data sebelumnya dengan cara berikut:

Perjalanan waktu dengan perintah FOR TIMESTAMP AS OF T-SQL

Dalam item Gudang, tabel dapat dikueri menggunakan sintaks OPTION FOR TIMESTAMP AS OF T-SQL untuk mengambil data pada titik waktu sebelumnya. Klausul ini FOR TIMESTAMP AS OF memengaruhi seluruh pernyataan, termasuk semua tabel gudang yang bergabung.

Hasil yang diperoleh dari kueri perjalanan waktu secara inheren baca-saja. Operasi tulis seperti INSERT, UPDATE, dan DELETE tidak dapat terjadi saat menggunakan petunjuk kueri FOR TIMESTAMP AS OF.

Gunakan klausa OPTION untuk menentukan petunjuk kueri FOR TIMESTAMP AS OF. Kueri mengembalikan data persis seperti yang ada pada tanda waktu, yang ditentukan sebagai YYYY-MM-DDTHH:MM:SS[.fff]. Contohnya:

SELECT *
FROM [dbo].[dimension_customer] AS DC
OPTION (FOR TIMESTAMP AS OF '2024-03-13T19:39:35.28'); --March 13, 2024 at 7:39:35.28 PM UTC

CONVERT Gunakan sintaks untuk format tanggalwaktu yang diperlukan dengan gaya 126.

Tanda waktu hanya dapat ditentukan sekali menggunakan OPTION klausul untuk kueri, prosedur tersimpan, tampilan, dll. Berlaku OPTION untuk semua yang ada dalam pernyataan SELECT .

Untuk sampel, lihat Cara: Kueri menggunakan perjalanan waktu.

Retensi data

Di Microsoft Fabric, gudang secara otomatis mempertahankan dan memelihara berbagai versi data, hingga periode retensi default selama tiga puluh hari kalender. Ini memungkinkan kemampuan untuk mengkueri tabel pada titik waktu sebelumnya. Semua sisipan, pembaruan, dan penghapusan yang dibuat ke gudang data dipertahankan. Retensi secara otomatis dimulai dari saat gudang dibuat. File yang kedaluwarsa dihapus secara otomatis setelah ambang retensi.

  • Saat ini, SELECT pernyataan dengan FOR TIMESTAMP AS OF petunjuk kueri mengembalikan versi terbaru skema tabel.
  • Setiap rekaman yang dihapus dalam tabel tersedia untuk dikueri seperti yang ada sebelum penghapusan, jika penghapusan berada dalam periode retensi.
  • Setiap modifikasi yang dilakukan pada skema tabel, termasuk tetapi tidak terbatas pada penambahan atau penghapusan kolom dari tabel, tidak dapat dikueri sebelum perubahan skema. Demikian pula, menghilangkan dan membuat ulang tabel dengan data yang sama akan menghapus riwayatnya.

Skenario perjalanan waktu

Pertimbangkan kemampuan untuk melakukan perjalanan waktu ke data sebelumnya dalam skenario berikut:

Pelaporan stabil

Eksekusi pekerjaan ekstraksi, transformasi, dan pemuatan (ETL) yang sering dilakukan sangat penting untuk mengikuti lanskap data yang terus berubah. Kemampuan untuk perjalanan waktu mendukung tujuan ini dengan memastikan integritas data sambil memberikan fleksibilitas untuk menghasilkan laporan berdasarkan hasil kueri yang dikembalikan pada titik waktu sebelumnya, seperti malam sebelumnya, saat pemrosesan latar belakang sedang berlangsung.

Aktivitas ETL dapat berjalan bersamaan saat tabel yang sama dikueri pada titik waktu sebelumnya.

Tren historis dan analisis prediktif

Perjalanan waktu menyederhanakan analisis data historis, membantu mengungkap tren dan pola berharga melalui kueri data di berbagai kerangka waktu sebelumnya. Ini memfasilitasi analisis prediktif dengan mengaktifkan eksperimen dengan himpunan data historis dan pelatihan model prediktif. Ini membantu mengantisipasi tren di masa depan dan membantu membuat keputusan berbasis data yang terinformasi dengan baik.

Analisis dan perbandingan

Perjalanan waktu menawarkan kemampuan pemecahan masalah yang efisien dan hemat biaya dengan menyediakan lensa historis untuk analisis dan perbandingan, memfasilitasi identifikasi akar penyebabnya.

Analisis Performa

Perjalanan waktu dapat membantu menganalisis performa kueri gudang dari waktu ke waktu. Ini membantu mengidentifikasi tren penurunan performa berdasarkan kueri yang dapat dioptimalkan.

Audit dan kepatuhan

Perjalanan waktu menyederhanakan prosedur audit dan kepatuhan dengan memberdayakan auditor untuk menavigasi melalui riwayat data. Ini tidak hanya membantu untuk tetap mematuhi peraturan tetapi juga membantu meningkatkan jaminan dan transparansi.

Model pembelajaran mesin

Kemampuan perjalanan waktu membantu mereproduksi hasil model pembelajaran mesin dengan memfasilitasi analisis data historis dan mensimulasikan skenario dunia nyata. Ini meningkatkan keandalan keseluruhan model sehingga keputusan berbasis data yang akurat dapat dibuat.

Pertimbangan Desain

Pertimbangan untuk PETUNJUK kueri OPTION FOR TIMESTAMP AS OF:

  • FOR TIMESTAMP AS OF Petunjuk kueri tidak dapat digunakan untuk membuat tampilan pada titik waktu sebelumnya dalam periode retensi. Ini dapat digunakan untuk mengkueri tampilan pada titik waktu lalu, dalam periode retensi.
  • FOR TIMESTAMP AS OF Petunjuk kueri hanya dapat digunakan sekali dalam SELECT pernyataan.
  • FOR TIMESTAMP AS OF Petunjuk kueri dapat ditentukan dalam SELECT pernyataan dalam prosedur tersimpan.

Izin untuk perjalanan waktu

Setiap pengguna yang memiliki peran ruang kerja Admin, Anggota, Kontributor, atau Penampil dapat mengkueri tabel pada titik waktu lalu. Saat pengguna mengkueri tabel, pembatasan yang diberlakukan oleh keamanan tingkat kolom (CLS), keamanan tingkat baris (RLS), atau masking data dinamis (DDM) secara otomatis diberlakukan.

Batasan

  • Pasokan paling banyak tiga digit detik pecahan dalam tanda waktu. Jika Anda menyediakan lebih banyak presisi, Anda menerima pesan An error occurred during timestamp conversion. Please provide a timestamp in the format yyyy-MM-ddTHH:mm:ss[.fff]. Msg 22440, Level 16, State 1, Code line 29kesalahan .

  • Saat ini, hanya zona waktu Waktu Universal Terkoordinasi (UTC) yang digunakan untuk perjalanan waktu.

  • Saat ini, retensi data untuk kueri perjalanan waktu adalah tiga puluh hari kalender.

  • FOR TIMESTAMP AS OF nilai dalam OPTION klausa harus deterministik. Untuk contoh parameterisasi, lihat Perjalanan waktu dalam prosedur tersimpan.

  • Perjalanan waktu tidak didukung untuk titik akhir analitik SQL Lakehouse.

  • Sintaks OPTION FOR TIMESTAMP AS OF hanya dapat digunakan dalam kueri yang dimulai dengan SELECT pernyataan. Kueri seperti INSERT INTO SELECT dan CREATE TABLE AS SELECT tidak dapat digunakan bersama dengan OPTION FOR TIMESTAMP AS OF. Pertimbangkan sebagai gantinya kemampuan untuk Mengkloning tabel gudang pada titik waktu tertentu.

  • Definisi tampilan tidak boleh berisi OPTION FOR TIMESTAMP AS OF sintaks. Tampilan dapat dikueri dengan SELECT .. FROM <view> ... OPTION FOR TIMESTAMP AS OF sintaks. Namun, Anda tidak dapat mengkueri data sebelumnya dari tabel dalam tampilan sebelum tampilan dibuat.

  • FOR TIMESTAMP AS OF sintaks untuk perjalanan waktu saat ini tidak didukung dalam mode kueri Power BI Desktop Direct atau opsi Jelajahi data ini.

Langkah selanjutnya