Поделиться через


Удаление данных

Область применения: ✅Microsoft Fabric✅Azure Data Explorer

Удаление данных из таблицы поддерживается несколькими способами. Ниже приводится информация, которая поможет вам правильно выбрать наиболее подходящий метод для вашего варианта использования.

Вариант использования Рекомендации Способ
Удалите все данные из таблицы. Используйте команду .clear table data.
Обычно удаляйте старые данные. Используйте, если требуется решение автоматического удаления. Используйте политику хранения
Массовое удаление определенных данных по экстентам. Используется только в том случае, если вы являетесь экспертным пользователем. Используйте команду .drop extents.
Удаление записей на основе их содержимого. — Артефакты хранилища, содержащие удаленные записи, не обязательно удаляются.
— Удаленные записи не могут быть восстановлены (независимо от каких-либо параметров хранения или возможности восстановления).
— Используйте, если требуется быстрый способ удаления записей.
Используйте обратимое удаление
Удаление записей на основе их содержимого. — Артефакты хранилища, содержащие удаленные записи, удаляются.
— Удаленные записи не могут быть восстановлены (независимо от каких-либо параметров хранения или возможности восстановления).
— требует значительных системных ресурсов и времени завершения.
Используйте операцию очистки
Вариант использования Рекомендации Способ
Удалите все данные из таблицы. Используйте команду .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

Удаление данных путем удаления экстентов

Экстент (сегмент данных) — это внутренняя структура, в которой хранятся данные. Каждый экстент может содержать до миллионов записей. Экстенты можно удалять по отдельности или в виде группы с помощью команд удаления экстентов.

Примеры

Вы можете удалить все строки в таблице или только определенный экстент.

  • Удалите все строки в таблице:

    .drop extents from TestTable
    
  • Удалите определенный экстент:

    .drop extent e9fac0d2-b6d5-4ce3-bdb4-dea052d13b42
    

Удаление отдельных строк

Очистка и обратимое удаление могут использоваться для удаления отдельных строк. Обратимое удаление не обязательно удаляет артефакты хранилища, содержащие записи для удаления, и очистка удаляет все такие артефакты хранилища.

Оба этих метода гарантируют невозможность восстановления удаленных записей, независимо от настроенных параметров периода удержания и возможности восстановления. Процесс удаления является окончательным и необратимым.

Обратимое удаление

При обратимом удалении данные не обязательно удаляются из артефактов хранилища. Этот метод помечает все соответствующие записи как удаленные, чтобы они были отфильтрованы в запросах и не требуют значительных системных ресурсов.

Очистка

С очисткой экстенты, имеющие одну или несколько записей для удаления, заменяются новыми экстентами, в которых эти записи не существуют. Этот метод выполняется не мгновенно, требует значительных системных ресурсов, а иногда растягивается на целый день.

Обратимое удаление можно использовать для удаления отдельных строк. Данные не обязательно удаляются из артефактов хранилища. Обратимое удаление предотвращает восстановление удаленных записей независимо от любых параметров хранения или возможности восстановления. Процесс удаления является окончательным и необратимым. Этот метод помечает все соответствующие записи как удаленные, чтобы они были отфильтрованы в запросах и не требуют значительных системных ресурсов.