Udostępnij za pośrednictwem


Polecenie .drop extents

Dotyczy: ✅Microsoft Fabric✅Azure Data Explorer

Spada zakresy z określonej bazy danych lub tabeli.

To polecenie ma kilka wariantów: w jednym zakresy, które mają zostać porzucone, są określane przez zapytanie Kusto. W innych wariantach zakresy są określane przy użyciu minijęzycznego języka opisanego poniżej.

Uwaga

Fragmenty danych są nazywane zakresami, a wszystkie polecenia używają "extent" lub "extents" jako synonimu. Aby uzyskać więcej informacji na temat zakresów, zobacz Omówienie zakresów (fragmentów danych).

Uwaga

Jeśli usuniesz zakres, wszystkie wiersze w tym zakresie zostaną usunięte. Aby usunąć poszczególne rekordy, użyj usuwania nietrwałego.

Uprawnienia

Jeśli parametr TableName jest określony, musisz mieć co najmniej uprawnienia administratora tabeli, aby uruchomić polecenie .

Jeśli parametr TableName nie jest określony, musisz mieć co najmniej uprawnienia administratora bazy danych, aby uruchomić polecenie .

Składnia

Usuwanie zakresów za pomocą zapytania

.dropextents [whatif] <| Zapytanie

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
whatif string Jeśli zostanie określony, zakresy zostaną zgłoszone zamiast porzucania.
Zapytanie string ✔️ Wyniki tego zapytania język zapytań Kusto (KQL) określają tabele źródłowe i identyfikatory zakresu, które mają zostać porzucone. Powinien zwrócić zestaw rekordów z kolumnami o nazwie "ExtentId" i "TableName".

Usuwanie określonych lub wielu zakresów

.dropextents (ExtentIds) from TableName

Parametry

Nazwisko Type Wymagania opis
Identyfikatory zakresu guid ✔️ Co najmniej jeden unikatowy identyfikator rozdzielony przecinkami zakresów, które mają zostać porzucone.
TableName string Nazwa tabeli, w której znajduje się zakres do porzucenia.

Upuszczanie zakresów według określonych właściwości

.dropextents [older N ()] from (hours | daysTableNametablesall | ) [trim by (extentsize | datasize) Rozmiar (MB | bytes | GB)] [limit LimitCount]

Parametry

Nazwisko Type Wymagania opis
N int ✔️ Zakresy upuszczania starsze niż N dni/godziny.
TableName string Nazwa tabeli, w której znajduje się zakres do porzucenia
Rozmiar int ✔️ Przycinanie danych w bazie danych do momentu dopasowania sumy zakresów do wymaganego rozmiaru (MaxSize).
LimitCount int ✔️ Zastosowano do pierwszych zakresów LimitCount .

Polecenie obsługuje tryb emulacji, który generuje dane wyjściowe tak, jakby polecenie zostało uruchomione, ale bez faktycznego wykonania. Użyj .drop-pretend zamiast .drop.

Zwraca

Polecenie zwraca tabelę z następującymi informacjami.

Parametr wyjściowy Type Opis
ExtentId string ExtentId, który został usunięty z powodu polecenia
TableName string Nazwa tabeli, w której należy zakres
CreatedOn dateTime Sygnatura czasowa zawierająca informacje o tym, kiedy zakres został początkowo utworzony

Na przykład zwracana wartość polecenia może wyglądać podobnie do poniższej tabeli.

Identyfikator zakresu Nazwa tabeli Utworzono
43c6e03f-1713-4ca7-a52a-5db8a4e8b87d TestTable 2015-01-12 12:48:49.4298178

Przykłady

Usuwanie określonego zakresu

Użyj identyfikatora zakresu, aby usunąć określony zakres.

.drop extent 609ad1e2-5b1c-4b79-90c0-1dec262e9f46 from Table1

Usuwanie wielu zakresów

Użyj listy identyfikatorów zakresu, aby usunąć wiele zakresów.

.drop extents (609ad1e2-5b1c-4b79-90c0-1dec262e9f46, 310a60c6-8529-4cdf-a309-fe6aa7857e1d) from Table1

Usuń wszystkie zakresy według utworzonego czasu

Usuń wszystkie zakresy utworzone ponad 10 dni temu ze wszystkich tabel w bazie danych MyDatabase

.drop extents <| .show database MyDatabase extents | where CreatedOn < now() - time(10d)

Usuń niektóre zakresy według utworzonego czasu

Usuń wszystkie zakresy w tabelach Table1 i Table2 których czas tworzenia wynosił ponad 10 dni temu

.drop extents older 10 days from tables (Table1, Table2)

Usuwanie zakresu przy użyciu extent_id()

Usuń zakres z tabeli przy użyciu wbudowanej extent_id() funkcji.

.drop extents  <|
    StormEvents
    | where EventId == '66144'
    | summarize by ExtentId = extent_id(), TableName = "StormEvents"

Tryb emulacji: Pokaż, które zakresy zostaną usunięte przez polecenie

Uwaga

Parametr identyfikatora zakresu nie ma zastosowania do tego polecenia.

.drop-pretend extents older 10 days from all tables

Usuń wszystkie zakresy z tabeli "TestTable"

.drop extents from TestTable

Uwaga

Usunięcie wszystkich zakresów nie musi usuwać wszystkich danych w tabeli, jeśli pozyskiwanie przesyłania strumieniowego jest włączone. Aby wyczyścić wszystkie dane tabeli, użyj polecenia .clear table data TestTable.