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.

  1. Dalam skenario kasus terbaik, periode retensi pada data ini cukup singkat dan data dihapus secara otomatis.
  2. 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.
  3. 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:

  1. 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.

  2. 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.

  3. 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 menyusun predicate:

    • 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 externaldataoperator, misalnya where 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.

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:

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 bukan where [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 dalam externaldata operator atau lebih dari 64 MB dari total ukuran kueri yang diperluas), dan kesalahan 404 atau 403 untuk externaldata 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).

  1. 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')
    
  2. 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. Jika verificationtoken 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

  1. 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
  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 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 --- ---