使用 “版本 ”下拉列表切换服务。 了解有关导航的详细信息。
适用于:✅ Azure Data Explorer
可以通过多种方式从表中删除数据。 以下信息可帮助你选择最适合你的用例的删除方法。
| 使用案例 | 注意事项 | 方法 |
|---|---|---|
| 删除表中的所有数据。 |
使用 .clear table data 命令 |
|
| 定期删除旧数据。 | 需要自动删除解决方案时使用。 | 使用保留策略 |
| 按存储区块批量删除特定数据。 | 仅在你是专家用户时使用。 |
使用 .drop extents 命令 |
| 根据内容删除记录。 | - 包含已删除记录的存储工件不一定被删除。 - 已删除的记录无法恢复(无论使用哪种保留或可恢复性设置)。 - 需要快速删除记录时使用。 |
使用软删除 |
| 根据内容删除记录。 | - 包含已删除记录的存储制品将被删除。 - 已删除的记录无法恢复(无论使用哪种保留或可恢复性设置)。 - 需要大量系统资源和时间才能完成。 |
使用清除操作 |
以下部分介绍不同的删除方法。
删除表中的所有数据
若要删除表中的所有数据,请使用 .clear table data 命令。 这是从表中删除所有数据最高效的命令。
语法:
.clear table <TableName> data
使用保留策略删除数据
根据保留策略自动删除数据。 可以在数据库或表级别设置保留策略。 无法确定何时发生删除,但在保留期之前不会删除数据。 此方法是删除旧数据的高效便捷方法。
假设某个数据库或表的保留期设置为 90 天。 如果只需要 60 天的数据,请删除旧数据,如下所示:
.alter-merge database <DatabaseName> policy retention softdelete = 60d
.alter-merge table <TableName> policy retention softdelete = 60d
通过删除盘区来删除数据
Extent(数据分片)是数据存储的内部结构。 每个盘区可容纳多达数百万条记录。 可以使用 删除扩展区命令来单独删除扩展区或成组删除扩展区。
示例
你可以删除表中的所有行,或者只删除特定的区段。
删除表中的所有行:
.drop extents from TestTable删除特定的区段
.drop extent e9fac0d2-b6d5-4ce3-bdb4-dea052d13b42