Penghapusan data menyeluruh
Catatan
Artikel ini memberikan langkah-langkah tentang cara menghapus data privat dari perangkat atau layanan dan dapat digunakan untuk mendukung kewajiban Anda berdasarkan GDPR. Untuk informasi umum tentang GDPR, lihat bagian GDPR di Pusat Kepercayaan Microsoft dan bagian GDPR di portal Kepercayaan Layanan.
Sebagai platform data, Azure Data Explorer mendukung kemampuan untuk menghapus rekaman individual, melalui penggunaan Kusto .purge
dan perintah terkait. Anda juga dapat menghapus tabel menyeluruh atau menghapus rekaman menyeluruh dalam tampilan materialisasi.
Peringatan
Penghapusan data melalui perintah .purge
dirancang untuk digunakan untuk melindungi data pribadi dan tidak boleh digunakan dalam skenario lain. Ini tidak dirancang untuk mendukung permintaan penghapusan yang sering, atau penghapusan data dalam jumlah besar, dan mungkin memiliki dampak performa yang signifikan pada layanan.
Pedoman penghapusan menyeluruh
Rancang skema data Anda dengan hati-hati dan selidiki kebijakan yang relevan sebelum menyimpan data pribadi di Azure Data Explorer.
- Dalam skenario kasus terbaik, periode retensi pada data ini cukup singkat dan data dihapus secara otomatis.
- Jika penggunaan periode retensi tidak memungkinkan, isolasi semua data yang tunduk pada aturan privasi di beberapa tabel Azure Data Explorer. Secara optimal, gunakan hanya satu tabel dan tautkan ke tabel tersebut dari semua tabel lainnya. Isolasi ini memungkinkan Anda untuk menjalankan proses penghapusan menyeluruh data pada sejumlah kecil tabel yang menyimpan data sensitif, dan menghindari semua tabel lainnya.
- Pemanggil harus melakukan setiap upaya untuk membuat batch eksekusi
.purge
perintah ke 1-2 perintah per tabel per hari. Jangan menerbitkan beberapa perintah dengan predikat identitas pengguna yang unik. Sebagi gantinya, kirimkan satu perintah yang predikatnya menyertakan semua identitas yang memerlukan penghapusan menyeluruh.
Proses penghapusan menyeluruh
Proses penghapusan data menyeluruh secara selektif dari Azure Data Explorer terjadi dalam langkah-langkah berikut:
Fase 1: Berikan input dengan nama tabel Azure Data Explorer dan predikat per rekaman, yang menunjukkan rekaman mana yang akan dihapus. Kusto memindai tabel yang ingin mengidentifikasi jangkauan data yang akan berpartisipasi dalam penghapusan data menyeluruh. Jangkauan yang diidentifikasi adalah yang memiliki satu atau beberapa rekaman yang predikatnya menampilkan true.
Fase 2: (Penghapusan Sementara) Ganti setiap jangkauan data dalam tabel (diidentifikasi dalam tahap (1)) dengan versi yang diserap ulang. Versi yang diserap ulang seharusnya tidak memiliki rekaman yang predikatnya menampilkan true. Jika data baru tidak diserap ke dalam tabel, pada akhir fase ini, kueri tidak akan lagi mengembalikan data yang predikatnya menampilkan true. Durasi fase penghapusan sementara dari penghapusan menyeluruh bergantung pada parameter berikut:
- Jumlah rekaman yang harus dihapus menyeluruh
- Distribusi rekaman di seluruh jangkauan data dalam kluster
- Jumlah node dalam kluster
- Kapasitas cadangan yang dimilikinya untuk operasi penghapusan menyeluruh
- Beberapa faktor lainnya
Durasi fase 2 dapat bervariasi antara beberapa detik hingga berjam-jam.
Fase 3: (Penghapusan Permanen) Kerjakan kembali semua artefak penyimpanan yang mungkin memiliki data "racun", dan hapus dari penyimpanan. Fase ini dilakukan setidaknya lima hari setelah penyelesaian fase sebelumnya, tetapi tidak lebih dari 30 hari setelah perintah awal. Garis waktu ini diatur untuk mengikuti persyaratan privasi data.
Menerbitkan .purge
perintah memicu proses ini, yang membutuhkan waktu beberapa hari untuk diselesaikan. Jika kepadatan rekaman tempat predikat diterapkan cukup besar, proses akan secara efektif menyerap ulang semua data dalam tabel. Penyerapan ulang ini memiliki dampak yang signifikan terhadap performa dan COGS (biaya barang yang dijual).
Batasan dan pertimbangan penghapusan menyeluruh
Proses penghapusan menyeluruh bersifat final dan tidak dapat diubah. Tidak mungkin untuk membatalkan proses ini atau memulihkan data yang telah dihapus menyeluruh. Perintah seperti batalkan penghilangan tabel tidak dapat memulihkan data yang dihapus menyeluruh. Pengembalian data ke versi sebelumnya tidak dapat dilakukan sebelum perintah penghapusan menyeluruh terbaru.
Sebelum menjalankan penghapusan menyeluruh, verifikasi predikat dengan menjalankan kueri dan memeriksa apakah hasilnya sesuai dengan hasil yang diharapkan. Anda juga dapat menggunakan proses dua langkah yang mengembalikan jumlah rekaman yang diharapkan yang akan dihapus menyeluruh.
Perintah
.purge
dijalankan terhadap titik akhir Manajemen Data:https://ingest-[YourClusterName].[region].kusto.windows.net
. Perintah memerlukan izin admin database pada database yang relevan.Karena dampak performa proses penghapusan menyeluruh, dan untuk menjamin bahwa pedoman penghapusan menyeluruh telah diikuti, pemanggil diharapkan untuk mengubah skema data sehingga tabel minimal menyertakan data yang relevan, dan membuat batch perintah per tabel untuk mengurangi dampak COGS yang signifikan dari proses penghapusan menyeluruh.
Parameter
predicate
perintah .purge digunakan untuk menentukan rekaman mana yang akan dihapus menyeluruh.Predicate
ukuran dibatasi hingga 1 MB. Saat menyusunpredicate
:- Gunakan operator 'in', misalnya,
where [ColumnName] in ('Id1', 'Id2', .. , 'Id1000')
. - Perhatikan batas operator 'in' (daftar dapat berisi hingga
1,000,000
nilai). - Jika ukuran kueri besar, gunakan
externaldata
operator, misalnyawhere UserId in (externaldata(UserId:string) ["https://...blob.core.windows.net/path/to/file?..."])
. File menyimpan daftar ID untuk dihapus menyeluruh. - Ukuran kueri total, setelah meluaskan semua
externaldata
blob (ukuran total semua blob), tidak boleh melebihi 64 MB.
- Gunakan operator 'in', misalnya,
Performa penghapusan menyeluruh
Hanya satu permintaan penghapusan menyeluruh yang dapat dijalankan pada kluster, pada waktu tertentu. Semua permintaan lainnya diantrekan dalam status Scheduled
.
Pantau ukuran antrean permintaan penghapusan menyeluruh, dan simpan dalam batas yang memadai agar sesuai dengan persyaratan yang berlaku untuk data Anda.
Untuk mengurangi waktu eksekusi penghapusan menyeluruh:
Ikuti pedoman penghapusan menyeluruh untuk mengurangi jumlah data yang dihapus menyeluruh.
Sesuaikan kebijakan caching karena penghapusan menyeluruh membutuhkan waktu lebih lama pada data dingin.
Meluaskan skala kluster
Tingkatkan kapasitas penghapusan menyeluruh kluster, setelah pertimbangan yang cermat, sebagaimana dirinci dalam Kapasitas build ulang penghapusan menyeluruh jangkauan.
Memicu proses penghapusan menyeluruh
Catatan
Eksekusi penghapusan menyeluruh dipanggil dengan menjalankan perintah hapus menyeluruh tabel TableName rekaman pada titik akhir Manajemen Data https://ingest- [YourClusterName].[Region].kusto.windows.net.
Perintah penghapusan menyeluruh rekaman tabel TableName
Perintah penghapusan menyeluruh dapat dipanggil dalam dua cara untuk skenario penggunaan yang berbeda:
Pemanggilan terprogram: Satu langkah yang ditujukan untuk dipanggil oleh aplikasi. Memanggil perintah ini secara langsung memicu urutan eksekusi penghapusan menyeluruh.
Sintaks
// Connect to the Data Management service #connect "https://ingest-[YourClusterName].[region].kusto.windows.net" // To purge table records .purge table [TableName] records in database [DatabaseName] with (noregrets='true') <| [Predicate] // To purge materialized view records .purge materialized-view [MaterializedViewName] records in database [DatabaseName] with (noregrets='true') <| [Predicate]
Pemanggilan manual: Proses dua langkah yang memerlukan konfirmasi eksplisit sebagai langkah terpisah. Pemanggilan pertama perintah mengembalikan token verifikasi, yang harus disediakan untuk menjalankan penghapusan menyeluruh aktual. Urutan ini mengurangi risiko secara tidak sengaja menghapus data yang salah.
Catatan
Langkah pertama dalam pemanggilan dua langkah mengharuskan menjalankan kueri pada seluruh himpunan data, untuk mengidentifikasi rekaman yang akan dibersihkan.
Kueri ini mungkin kehabisan waktu atau gagal pada tabel besar, terutama dengan sejumlah besar data cache dingin. Jika terjadi kegagalan, validasi predikat secara mandiri dan setelah memverifikasi kebenarannya, gunakan penghapusan menyeluruh satu langkah dengan opsi noregrets
.
Sintaks
Catatan
Untuk menyambungkan ke kluster menggunakan UI Web Azure Data Explorer, lihat Menambahkan kluster.
// Connect to the Data Management service - this command only works in Kusto.Explorer
#connect "https://ingest-[YourClusterName].[region].kusto.windows.net"
// Step #1 - retrieve a verification token (no records will be purged until step #2 is executed)
.purge table [TableName] records in database [DatabaseName] <| [Predicate]
// Step #2 - input the verification token to execute purge
.purge table [TableName] records in database [DatabaseName] with (verificationtoken=h'<verification token from step #1>') <| [Predicate]
Untuk menghapus menyeluruh tampilan materialisasi, ganti kata kunci table
dengan materialized-view
, dan ganti TableName dengan MaterializedViewName.
Parameter | Deskripsi |
---|---|
DatabaseName |
Nama database |
TableName / MaterializedViewName |
Nama tabel/tampilan material yang akan dihapus menyeluruh. |
Predicate |
Identifikasi rekaman yang akan dihapus menyeluruh. Lihat batasan predikat penghapusan menyeluruh. |
noregrets |
Jika diatur, memicu aktivasi satu langkah. |
verificationtoken |
Dalam skenario aktivasi dua langkah (noregrets tidak diatur), token ini dapat digunakan untuk menjalankan langkah kedua dan menerapkan tindakan. Jika verificationtoken tidak ditentukan, itu akan memicu langkah pertama perintah. Informasi tentang penghapusan menyeluruh akan dikembalikan dengan token yang harus diteruskan kembali ke perintah untuk melakukan langkah #2. |
Batasan predikat penghapusan menyeluruh
- Predikat harus berupa pilihan sederhana (misalnya, di mana [ColumnName] == 'X' / di mana [ColumnName] di ('X', 'Y', 'Z') dan [OtherColumn] == 'A').
- Beberapa filter harus dikombinasikan dengan 'dan', bukan klausul
where
terpisah (misalnya,where [ColumnName] == 'X' and OtherColumn] == 'Y'
dan bukanwhere [ColumnName] == 'X' | where [OtherColumn] == 'Y'
). - Predikat tidak dapat mereferensikan tabel selain tabel yang sedang dihapus menyeluruh (TableName). Predikat hanya dapat menyertakan pernyataan pilihan (
where
). Predikat tidak dapat memproyeksikan kolom tertentu dari tabel (skema output saat menjalankan 'table
| Predikat' harus cocok dengan skema tabel). - Fungsi sistem (seperti,
ingestion_time()
,extent_id()
) tidak didukung.
Contoh: Penghapusan menyeluruh dua langkah
Untuk memulai penghapusan menyeluruh dalam skenario aktivasi dua langkah, jalankan langkah #1 dari perintah:
// Connect to the Data Management service
#connect "https://ingest-[YourClusterName].[region].kusto.windows.net"
.purge table MyTable records in database MyDatabase <| where CustomerId in ('X', 'Y')
.purge materialized-view MyView records in database MyDatabase <| where CustomerId in ('X', 'Y')
Output
NumRecordsToPurge | EstimatedPurgeExecutionTime | VerificationToken |
---|---|---|
1\.596 | 00:00:02 | e43c7184ed22f4f23c7a9d7b124d196be2e570096987e5baadf65057fa65736b |
Kemudian, validasi NumRecordsToPurge sebelum menjalankan langkah #2.
Untuk menyelesaikan penghapusan menyeluruh dalam skenario aktivasi dua langkah, gunakan token verifikasi yang dikembalikan dari langkah #1 untuk menjalankan langkah #2:
.purge table MyTable records in database MyDatabase
with(verificationtoken=h'e43c7....')
<| where CustomerId in ('X', 'Y')
.purge materialized-view MyView records in database MyDatabase
with(verificationtoken=h'e43c7....')
<| where CustomerId in ('X', 'Y')
Output
OperationId |
DatabaseName |
TableName |
ScheduledTime |
Duration |
LastUpdatedOn |
EngineOperationId |
State |
StateDetails |
EngineStartTime |
EngineDuration |
Retries |
ClientRequestId |
Principal |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
c9651d74-3b80-4183-90bb-bbe9e42eadc4 | MyDatabase | MyTable | 2019-01-20 11:41:05.4391686 | 00:00:00.1406211 | 2019-01-20 11:41:05.4391686 | Terjadwal | 0 | KE.RunCommand;1d0ad28b-f791-4f5a-a60f-0e32318367b7 | Id aplikasi AAD=... |
Contoh: Penghapusan menyeluruh satu langkah
Untuk memicu penghapusan menyeluruh dalam skenario aktivasi satu langkah, jalankan perintah berikut:
// Connect to the Data Management service
#connect "https://ingest-[YourClusterName].[region].kusto.windows.net"
.purge table MyTable records in database MyDatabase with (noregrets='true') <| where CustomerId in ('X', 'Y')
.purge materialized-view MyView records in database MyDatabase with (noregrets='true') <| where CustomerId in ('X', 'Y')
Output
OperationId |
DatabaseName |
TableName |
ScheduledTime |
Duration |
LastUpdatedOn |
EngineOperationId |
State |
StateDetails |
EngineStartTime |
EngineDuration |
Retries |
ClientRequestId |
Principal |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
c9651d74-3b80-4183-90bb-bbe9e42eadc4 | MyDatabase | MyTable | 2019-01-20 11:41:05.4391686 | 00:00:00.1406211 | 2019-01-20 11:41:05.4391686 | Terjadwal | 0 | KE.RunCommand;1d0ad28b-f791-4f5a-a60f-0e32318367b7 | Id aplikasi AAD=... |
Membatalkan perintah operasi penghapusan menyeluruh
Jika diperlukan, Anda dapat membatalkan permintaan penghapusan menyeluruh yang tertunda.
Catatan
Operasi ini ditujukan untuk skenario pemulihan kesalahan. Hal ini tidak dijamin untuk berhasil, dan tidak harus menjadi bagian dari aliran operasional normal. Ini hanya dapat diterapkan pada permintaan yang masih dalam antrean dan belum dikirim untuk dieksekusi.
Sintaks
// Cancel of a single purge operation
.cancel purge <OperationId>
// Cancel of all pending purge requests in a database
.cancel all purges in database <DatabaseName>
// Cancel of all pending purge requests, for all databases
.cancel all purges
Contoh: Membatalkan satu operasi penghapusan menyeluruh
.cancel purge aa894210-1c60-4657-9d21-adb2887993e1
Output
Output dari perintah ini sama dengan output perintah 'show purges OperationId', menunjukkan status yang diperbarui dari operasi penghapusan menyeluruh yang dibatalkan.
Jika upaya ini berhasil, status operasi diperbarui ke Canceled
. Jika tidak, status operasi tidak diubah.
OperationId |
DatabaseName |
TableName |
ScheduledTime |
Duration |
LastUpdatedOn |
EngineOperationId |
State |
StateDetails |
EngineStartTime |
EngineDuration |
Retries |
ClientRequestId |
Principal |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
c9651d74-3b80-4183-90bb-bbe9e42eadc4 | MyDatabase | MyTable | 2019-01-20 11:41:05.4391686 | 00:00:00.1406211 | 2019-01-20 11:41:05.4391686 | Batal | 0 | KE.RunCommand;1d0ad28b-f791-4f5a-a60f-0e32318367b7 | Id aplikasi AAD=... |
Contoh: Membatalkan semua operasi penghapusan menyeluruh yang tertunda dalam database
.cancel all purges in database MyDatabase
Output
Output dari perintah ini sama dengan output perintah tampilkan penghapusan menyeluruh, yang menunjukkan semua operasi dalam database dengan status yang diperbarui.
Operasi yang berhasil dibatalkan akan diperbarui statusnya menjadi Canceled
. Jika tidak, status operasi tidak diubah.
OperationId |
DatabaseName |
TableName |
ScheduledTime |
Duration |
LastUpdatedOn |
EngineOperationId |
State |
StateDetails |
EngineStartTime |
EngineDuration |
Retries |
ClientRequestId |
Principal |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
5a34169e-8730-49f5-9694-7fde3a7a0139 | MyDatabase | MyTable | 2021-03-03 05:07:29.7050198 | 00:00:00.2971331 | 2021-03-03 05:07:30.0021529 | Batal | 0 | KE.RunCommand;1d0ad28b-f791-4f5a-a60f-0e32318367b7 | Id aplikasi AAD=... | ||||
2fa7c04c-6364-4ce1-a5e5-1ab921f518f5 | MyDatabase | MyTable | 2021-03-03 05:05:03.5035478 | 00:00:00.1406211 | 2021-03-03 05:05:03.6441689 | InProgress | 0 | KE.RunCommand;1d0ad28b-f791-4f5a-a60f-0e32318367b7 | Id aplikasi AAD=... |
Melacak status operasi penghapusan menyeluruh
Catatan
Operasi penghapusan menyeluruh dapat dilacak dengan perintah tampilkan penghapusan menyeluruh, yang dijalankan pada titik akhir Manajemen Data https://ingest-[YourClusterName].[region].kusto.windows.net.
Status = 'Selesai' menunjukkan penyelesaian fase pertama operasi penghapusan menyeluruh yang berhasil, yaitu rekaman dihapus sementara dan tidak lagi tersedia untuk kueri. Pelanggan tidak diharapkan untuk melacak dan memverifikasi penyelesaian fase kedua (penghapusan permanen). Fase ini dipantau secara internal oleh Azure Data Explorer.
Menampilkan perintah penghapusan menyeluruh
Show purges
perintah memperlihatkan status operasi penghapusan menyeluruh dengan menentukan ID operasi dalam periode waktu yang diminta.
.show purges <OperationId>
.show purges [in database <DatabaseName>]
.show purges from '<StartDate>' [in database <DatabaseName>]
.show purges from '<StartDate>' to '<EndDate>' [in database <DatabaseName>]
Properti | Deskripsi | Wajib/Opsional |
---|---|---|
OperationId |
ID operasi Manajemen Data dikeluarkan setelah menjalankan fase tunggal atau fase kedua. | Wajib |
StartDate |
Batas waktu bawah untuk operasi pemfilteran. Jika dihilangkan, akan diatur secara default ke 24 jam sebelum waktu saat ini. | Opsional |
EndDate |
Batas waktu atas untuk operasi pemfilteran. Jika dihilangkan, akan diatur secara default ke waktu saat ini. | Opsional |
DatabaseName |
Nama database untuk memfilter hasil. | Opsional |
Catatan
Status hanya akan disediakan pada database yang kliennya memiliki izin database Admin.
Contoh
.show purges
.show purges c9651d74-3b80-4183-90bb-bbe9e42eadc4
.show purges from '2018-01-30 12:00'
.show purges from '2018-01-30 12:00' to '2018-02-25 12:00'
.show purges from '2018-01-30 12:00' to '2018-02-25 12:00' in database MyDatabase
Output
OperationId |
DatabaseName |
TableName |
ScheduledTime |
Duration |
LastUpdatedOn |
EngineOperationId |
State |
StateDetails |
EngineStartTime |
EngineDuration |
Retries |
ClientRequestId |
Principal |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
c9651d74-3b80-4183-90bb-bbe9e42eadc4 | MyDatabase | MyTable | 2019-01-20 11:41:05.4391686 | 00:00:33.6782130 | 2019-01-20 11:42:34.6169153 | a0825d4d-6b0f-47f3-a499-54ac5681ab78 | Selesai | Penghapusan menyeluruh berhasil diselesaikan (penghapusan artefak penyimpanan tertunda) | 2019-01-20 11:41:34.6486506 | 00:00:04.4687310 | 0 | KE.RunCommand;1d0ad28b-f791-4f5a-a60f-0e32318367b7 | Id aplikasi AAD=... |
OperationId
- ID operasi DM dikembalikan saat menjalankan penghapusan menyeluruh.DatabaseName
** - nama database (peka huruf besar/kecil).TableName
** - nama tabel (peka huruf besar/kecil).ScheduledTime
- waktu menjalankan perintah penghapusan menyeluruh ke layanan DM.Duration
- total durasi operasi penghapusan menyeluruh, termasuk waktu tunggu antrean DM eksekusi.EngineOperationId
- ID operasi penghapusan menyeluruh aktual yang dijalankan dalam mesin.State
- status penghapusan menyeluruh, dapat berupa salah satu dari nilai berikut:Scheduled
- operasi penghapusan menyeluruh dijadwalkan untuk eksekusi. Jika pekerjaan tetap Terjadwal, mungkin ada backlog operasi penghapusan menyeluruh. Lihat performa penghapusan menyeluruh untuk membersihkan backlog ini. Jika operasi penghapusan menyeluruh gagal pada kesalahan sementara, operasi tersebut akan dicoba kembali oleh DM dan diatur ke Terjadwal lagi (sehingga Anda mungkin melihat transisi operasi dari Terjadwal ke InProgress dan kembali ke Terjadwal).InProgress
- operasi penghapusan menyeluruh sedang berlangsung di mesin.Completed
- penghapusan menyeluruh berhasil diselesaikan.BadInput
- penghapusan menyeluruh gagal pada input yang buruk dan tidak akan dicoba kembali. Kegagalan ini mungkin disebabkan oleh berbagai masalah seperti kesalahan sintaks dalam predikat, predikat ilegal untuk perintah penghapusan menyeluruh, kueri yang melebihi batas (misalnya, lebih dari 1 juta entitas dalamexternaldata
operator atau lebih dari 64 MB dari total ukuran kueri yang diperluas), dan kesalahan 404 atau 403 untukexternaldata
blob.Failed
- penghapusan menyeluruh gagal dan tidak akan dicoba kembali. Kegagalan ini dapat terjadi jika operasi menunggu dalam antrean terlalu lama (lebih dari 14 hari), karena backlog operasi penghapusan menyeluruh lainnya atau sejumlah kegagalan yang melebihi batas percobaan ulang. Yang terakhir akan meningkatkan peringatan pemantauan internal dan akan diselidiki oleh tim Azure Data Explorer.
StateDetails
- deskripsi Status.EngineStartTime
- waktu perintah diterbitkan ke mesin. Jika ada perbedaan besar antara waktu ini dan ScheduledTime, biasanya ada backlog yang signifikan dari operasi penghapusan menyeluruh dan kluster tidak mengikuti kecepatan.EngineDuration
- waktu eksekusi penghapusan menyeluruh aktual di mesin. Jika penghapusan menyeluruh dicoba kembali beberapa kali, itu adalah jumlah dari semua durasi eksekusi.Retries
- berapa kali operasi dicoba kembali oleh layanan DM karena kesalahan sementara.ClientRequestId
- ID aktivitas klien dari permintaan penghapusan menyeluruh DM.Principal
- identitas penerbit perintah penghapusan menyeluruh.
Menghapus menyeluruh seluruh tabel
Menghapus menyeluruh tabel termasuk menghilangkan tabel, dan menandainya sebagai dihapus menyeluruh sehingga proses penghapusan permanen yang dijelaskan dalam proses Penghapusan menyeluruh berjalan di atasnya.
Menghilangkan tabel tanpa menghapus menyeluruh tidak akan menghapus semua artefak penyimpanannya. Artefak ini dihapus sesuai dengan kebijakan penyimpanan permanen yang awalnya ditetapkan pada tabel.
Perintah purge table allrecords
ini cepat dan efisien dan lebih baik daripada proses penghapusan menyeluruh rekaman, jika berlaku untuk skenario Anda.
Catatan
Perintah tersebut dipanggil dengan menjalankan perintah hapus menyeluruh tabel TableName allrecords pada titik akhir Manajemen Data https://ingest-[YourClusterName].[region].kusto.windows.net.
Perintah hapus menyeluruh allrecords tabel TableName
Mirip dengan perintah '.purge table records ', perintah ini dapat dipanggil dalam mode terprogram (satu langkah) atau dalam mode manual (dua langkah).
Pemanggilan terprogram (satu langkah):
Sintaks
// Connect to the Data Management service #connect "https://ingest-[YourClusterName].[Region].kusto.windows.net" .purge table [TableName] in database [DatabaseName] allrecords with (noregrets='true')
Pemanggilan manual (dua langkah):
Sintaks
// Connect to the Data Management service #connect "https://ingest-[YourClusterName].[Region].kusto.windows.net" // Step #1 - retrieve a verification token (the table will not be purged until step #2 is executed) .purge table [TableName] in database [DatabaseName] allrecords // Step #2 - input the verification token to execute purge .purge table [TableName] in database [DatabaseName] allrecords with (verificationtoken=h'<verification token from step #1>')
Parameter Deskripsi DatabaseName
Nama database. TableName
Nama tabel. noregrets
Jika diatur, memicu aktivasi satu langkah. verificationtoken
Dalam skenario aktivasi dua langkah ( noregrets
tidak diatur), token ini dapat digunakan untuk menjalankan langkah kedua dan menerapkan tindakan. Jikaverificationtoken
tidak ditentukan, itu akan memicu langkah pertama perintah. Pada langkah ini, token dikembalikan untuk diteruskan kembali ke perintah dan melakukan langkah # 2.
Contoh: Penghapusan menyeluruh dua langkah
Untuk memulai penghapusan menyeluruh dalam skenario aktivasi dua langkah, jalankan langkah #1 dari perintah:
// Connect to the Data Management service #connect "https://ingest-[YourClusterName].[Region].kusto.windows.net" .purge table MyTable in database MyDatabase allrecords
Output
VerificationToken
e43c7184ed22f4f23c7a9d7b124d196be2e570096987e5baadf65057fa65736b Untuk menyelesaikan penghapusan menyeluruh dalam skenario aktivasi dua langkah, gunakan token verifikasi yang dikembalikan dari langkah #1 untuk menjalankan langkah #2:
.purge table MyTable in database MyDatabase allrecords with (verificationtoken=h'eyJT.....')
Outputnya sama dengan output perintah '.show tables' (dikembalikan tanpa tabel yang dihapus menyeluruh).
Output
TableName DatabaseName Folder DocString OtherTable MyDatabase --- ---
Contoh: Penghapusan menyeluruh satu langkah
Untuk memicu penghapusan menyeluruh dalam skenario aktivasi satu langkah, jalankan perintah berikut:
// Connect to the Data Management service
#connect "https://ingest-[YourClusterName].[Region].kusto.windows.net"
.purge table MyTable in database MyDatabase allrecords with (noregrets='true')
Outputnya sama dengan output perintah '.show tables' (dikembalikan tanpa tabel yang dihapus menyeluruh).
Output
TableName | DatabaseName | Folder | DocString |
---|---|---|---|
OtherTable | MyDatabase | --- | --- |
Konten terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk