.drop extents コマンド
指定されたデータベース*またはテーブル*からエクステント*をドロップします。
このコマンドにはいくつかのバリエーションがあります: 1つは、削除するエクステント*を Kusto* クエリ*によって指定するというものです。 その他のバリアントでは、以下に説明するミニ言語*でエクステント*が指定されています。
Note
データ シャードは extents と呼ばれ、すべてのコマンドでシノニムとして "エクステント" または "エクステント" が使用されます。 エクステントの詳細については、エクステント (データ シャード) の概要に関する記事を参照してください。
注意事項
エクステントをドロップすると、そのエクステント内のすべての行が削除されます。 個々のレコードを削除するには、論理的な削除を使用します。
アクセス許可
TableName が指定されている場合は、コマンドを実行するには、少なくとも Table 管理者アクセス許可が必要です。
TableNameが指定されていない場合、コマンドを実行するには、少なくとも Database Admin アクセス許可が必要です。
構文
クエリ*でエクステント*をドロップする*
.drop
extents
[whatif
] <|
Query
構文規則について詳しく知る。
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
whatif |
string |
指定した場合、エクステントは削除されずに報告されます。 | |
クエリ | string |
✔️ | このKusto 照会言語 (KQL) クエリの結果は、削除するソース テーブルとエクステント ID を指定します。 "ExtentId" と "TableName" という列を含むレコードセットを返す必要があります。 |
特定のエクステントまたは複数のエクステントをドロップする
.drop
extents
(
ExtentIds)
from
TableName
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
ExtentIds | guid |
✔️ | 削除するエクステントのコンマ区切りの一意識別子を 1 つ以上指定します。 |
TableName | string |
削除するエクステントが配置されているテーブルの名前。 |
指定されたプロパティ*によってエクステント*をドロップする*
.drop
extents
[older
N (days
| hours
)] from
(TableName | all
tables
) [trim
by
(extentsize
| datasize
) Size (MB
| GB
| bytes
)] [limit
LimitCount]
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
N | int |
✔️ | N より古いエクステント日/時間を削除します。 |
TableName | string |
ドロップするエクステントが配置されているテーブルの名前 | |
[サイズ] | int |
✔️ | エクステントの合計が必要なサイズ (MaxSize) と一致するまで、データベース内のデータがトリミングされます。 |
LimitCount | int |
✔️ | 最初の LimitCount 個のエクステントに適用されます。 |
このコマンドは、実際に実行されていないコマンドが実行*されたかのように出力*を生成する、エミュレーション モードをサポート*します。 .drop
ではなく .drop-pretend
を使用します。
返品
このコマンドは、次の情報を含むテーブルを返します。
出力パラメーター | 型 | 説明 |
---|---|---|
ExtentId | string |
コマンドの理由でドロップされた ExtentId |
TableName | string |
エクステント*が属していたテーブル*名 |
CreatedOn | dateTime |
エクステント*が最初に作成された日時に関する情報を保持する timestamp* |
たとえば、コマンドの戻り値は次の表のようになります。
エクステント* ID* | テーブル名 | 作成日 |
---|---|---|
43c6e03f-1713-4ca7-a52a-5db8a4e8b87d | TestTable | 2015-01-12 12:48:49.4298178 |
例
特定のエクステント*をドロップする*
特定のエクステントをドロップするには、エクステント ID を使用します。
.drop extent 609ad1e2-5b1c-4b79-90c0-1dec262e9f46 from Table1
複数のエクステントをドロップする
エクステント ID の一覧を使用して、複数のエクステントをドロップします。
.drop extents (609ad1e2-5b1c-4b79-90c0-1dec262e9f46, 310a60c6-8529-4cdf-a309-fe6aa7857e1d) from Table1
作成 time* ごとに、エクステント*をすべて削除*する
10日以上前に作成されたエクステント*をすべて、データベース*内のすべてのテーブル*から削除*するMyDatabase
.drop extents <| .show database MyDatabase extents | where CreatedOn < now() - time(10d)
作成 time* ごとに、エクステント*を一部削除*する
テーブル*内にあるすべてのエクステント*を削除Table1
、およびTable2
作成 time* から10日を経過したエクステントを削除する
.drop extents older 10 days from tables (Table1, Table2)
extent_id() を使用してエクステントを削除する
組み込みの extent_id()
関数を使用して、テーブルからエクステントを削除します。
.drop extents <|
StormEvents
| where EventId == '66144'
| summarize by ExtentId = extent_id(), TableName = "StormEvents"
エミュレーション モード: コマンドで削除*するエクステント*を表示します
Note
エクステント* ID* パラメーター*は、このコマンドに使用できません。
.drop-pretend extents older 10 days from all tables
' TestTable ' からすべてのエクステント*を削除*する
.drop extents from TestTable
Note
ストリーミング インジェストが有効になっている場合、すべてのエクステントを削除しても、必ずしもテーブル内のすべてのデータが削除されるわけではありません。 テーブルのすべてのデータをクリアするには、 .clear table data TestTable
を使用します。