.move extents 명령
적용 대상: ✅Azure Data Explorer
이 명령은 특정 데이터베이스의 컨텍스트에서 실행됩니다. 원본 테이블에서 대상 테이블로 지정된 익스텐트 이동
참고 항목
- 익스텐트(데이터 분할)에 대한 자세한 내용은 익스텐트(데이터 분할) 개요를 참조하세요.
.move
모든 원본 익스텐트에서 명령이 완료되거나 실패합니다. 부분적인 결과는 없습니다.
사용 권한
원본 및 대상 테이블에 대한 테이블 관리자 권한 이상이 있어야 합니다.
제한 사항
- 원본 테이블과 대상 테이블은 모두 컨텍스트 데이터베이스에 있어야 합니다.
- 원본 테이블의 모든 열은 이름과 데이터 형식이 같은 대상 테이블에 있어야 합니다.
- 대상 테이블이 구체화된 뷰의 원본 테이블인 경우 구체화된 뷰가 이동된 익스텐트의 레코드를 처리하지 않으므로 명령이 실패할 수 있습니다. 구체화된 뷰 제한 사항 페이지에서 자세한 내용을 참조하세요. 이동 명령 중에 새 수집 시간을 설정하여 이 오류를 해결할 수 있습니다. 지원되는 속성을 참조하세요.
setNewIngestionTime
구문
모든 익스텐트 이동:
.move
[async
] extents
from
table
all
sourceTableName table
to
DestinationTableName [ with
(
PropertyName =
PropertyValue [,
...]])
ID로 지정된 이동 익스텐트:
.move
[async
] extents
from
table
SourceTableName to
table
DestinationTableName [ with
(
PropertyName =
PropertyValue [,
...]] (
)
GUID [,
...])
쿼리 결과에 지정된 익스텐트 이동:
.move
[async
] extents
table
to
DestinationTableName [ with
(
PropertyName =
PropertyValue [,
...]] <|
)
쿼리
구문 규칙에 대해 자세히 알아봅니다.
매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
async |
string |
지정된 경우 명령은 비동기적으로 실행됩니다. | |
SourceTableName | string |
✔️ | 이동할 익스텐스가 포함된 테이블의 이름입니다. |
DestinationTableName | string |
✔️ | 익스텐트 이동을 위한 테이블의 이름입니다. |
PropertyName, PropertyValue | string |
하나 이상의 지원되는 속성입니다. | |
쿼리 | string |
✔️ | 이 KQL(Kusto 쿼리 언어) 쿼리의 결과는 원본 테이블과 원본 테이블에서 이동할 ID 범위를 지정합니다. "ExtentId" 및 "TableName"이라는 열이 있는 레코드 집합을 반환해야 합니다. |
지원되는 속성
Property name | Type | 필수 | 설명 |
---|---|---|---|
setNewIngestionTime |
bool |
이 값으로 true 설정하면 새 수집 시간이 이동되는 범위의 모든 레코드에 할당됩니다. 이는 구체화된 뷰 및 연속 데이터 내보내기와 같이 데이터베이스 커서에 의존하는 워크로드에서 레코드를 처리해야 하는 경우에 유용합니다. |
|
extentCreatedOnFrom |
datetime |
✔️ | 이 시점 이후에 만든 익스텐트에서 적용합니다. |
extentCreatedOnTo |
datetime |
✔️ | 이 시점 이전에 만든 익스텐트에서 적용합니다. |
참고 항목
성능을 향상시키려면 가능한 가장 작은 범위로 매개 변수를 설정합니다 extentCreatedOnFrom
extentCreatedOnTo
.
반품
명령이 동기적으로 실행되면 다음 스키마가 있는 테이블이 반환됩니다.
출력 매개 변수 | Type | 설명 |
---|---|---|
OriginalExtentId | string |
원본 테이블의 원래 익스텐트에서 대상 테이블로 이동된 고유 식별자(GUID)입니다. |
ResultExtentId | string |
원본 테이블에서 대상 테이블로 이동된 결과 범위의 고유 식별자(GUID)입니다. 실패 시 - "실패". |
세부 정보 | string |
작업이 실패하는 경우 오류 세부 정보를 포함합니다. |
명령이 비동기적으로 실행되면 작업 ID(GUID)가 반환됩니다. .show operations 명령을 사용하여 작업의 상태를 모니터링하고 .show 작업 세부 정보 명령을 사용하여 성공적인 실행 결과를 검색합니다.
예제
모든 익스텐트 이동
테이블의 모든 익스텐트에서 테이블 MyTable
MyOtherTable
로 이동:
.move extents all from table MyTable to table MyOtherTable
지정된 생성 시간 범위에서 두 개의 특정 익스텐트 이동
테이블 MyTable
MyOtherTable
간 지정된 생성 시간 범위에서 두 개의 특정 익스텐트(익스텐트 ID 기준)를 이동합니다.
.move extents from table MyTable to table MyOtherTable with (extentCreatedOnFrom=datetime(2023-03-10), extentCreatedOnTo=datetime(2023-03-12)) (AE6CD250-BE62-4978-90F2-5CB7A10D16D7,399F9254-4751-49E3-8192-C1CA78020706)
특정 테이블에서 지정된 생성 시간 범위의 모든 익스텐트 이동
지정된 생성 시간 범위의 모든 익스텐트를 특정 테이블(MyTable1
, MyTable2
)에서 테이블 MyOtherTable
로 이동합니다.
.move extents to table MyOtherTable with (extentCreatedOnFrom=datetime(2023-03-10), extentCreatedOnTo=datetime(2023-03-12)) <| .show tables (MyTable1,MyTable2) extents
새 수집 시간을 설정하여 모든 익스텐트 이동
.move extents all from table MyTable to table MyOtherTable with (setNewIngestionTime=true)
샘플 출력
OriginalExtentId | ResultExtentId | 세부 정보 |
---|---|---|
e133f050-a1e2-4dad-8552-1f5cf47cab69 | 0d96ab2d-9dd2-4d2c-a45e-b24c65aa6687 | |
cdbeb35b-87ea-499f-b545-defbae091b57 | a90a303c-8a14-4207-8f35-d8ea94ca45be | |
4fcb4598-9a31-4614-903c-0c67c286da8c | 97aafea1-59ff-4312-b06b-08f42187872f | |
2dfdef64-62a3-4950-a130-96b5b1083b5a | 0fb7f3da-5e28-4f09-a000-e62eb41592df |