Hive LLAP 워크로드 관리 명령

워크로드 관리 기능은 다음 Hive 명령을 통해 제어 및 관리될 수 있습니다. 이러한 명령은 기존 ALTER, CREATE, DROP 및 SHOW 문과 유사합니다.

변경 매핑

쿼리 라우팅을 리소스 풀로 변경합니다.

구문

ALTER { USER | GROUP | APPLICATION } MAPPING 'entity_name' IN plan_name { TO pool_path | UNMANAGED } [ WITH ORDER num ]

예제

ALTER USER MAPPING 'hive' IN demo_plan TO etl WITH ORDER 1;

변경 풀

쿼리 풀 속성을 수정하고, 트리거를 추가하고, 트리거를 제거합니다.

구문

ALTER POOL plan_name.pool_path [ SET {property=value, ... } | UNSET { property, ... } ];
ALTER POOL plan_name.pool_path [ ADD | DROP ] TRIGGER name;

예제

ALTER POOL demo_plan.default ADD TRIGGER defaultToETL;

리소스 계획 변경

계획을 사용하는 것으로 설정, 사용하지 않는 것으로 설정, 활성화, 유효성 검사를 하거나 또는 변경합니다.

구문

ALTER RESOURCE PLAN name [ VALIDATE | DISABLE | ENABLE | ACTIVATE | RENAME TO another_name | SET {property=value, ... } | UNSET {property, ... } ];

예제

ALTER RESOURCE PLAN demo_plan SET DEFAULT POOL=etl, QUERY_PARALLELISM=3;

트리거 변경

리소스 풀에 트리거를 추가하거나 리소스 풀에서 트리거를 제거합니다.

구문

ALTER TRIGGER plan_name.name { ADD TO | DROP FROM } { POOL path | UNMANAGED };

예제

ALTER TRIGGER demo_plan.ETLKill ADD TO POOL etl;

매핑 생성

쿼리를 리소스 풀로 라우팅합니다.

구문

CREATE { USER | GROUP | APPLICATION } MAPPING 'entity_name' IN plan_name { TO pool_path | UNMANAGED } [ WITH ORDER num ];

예제

CREATE USER MAPPING 'hive' IN demo_plan TO sys_accounts WITH ORDER 1;

풀 생성

리소스 계획에 대한 쿼리 풀을 만들고 추가합니다.

구문

CREATE POOL plan_name.path WITH ALLOC_FRACTION = decimal, QUERY_PARALLELISM = num, [ SCHEDULING_POLICY = scheduling_value ];

예제

CREATE POOL demo_plan.etl WITH ALLOC_FRACTION = 0.20, QUERY_PARALLELISM = 2;

리소스 계획 생성

리소스 풀을 만듭니다

구문

CREATE RESOURCE PLAN plan_name [ WITH QUERY PARALLELISM=number | LIKE name];

예제

CREATE RESOURCE PLAN demo_plan;

트리거 만들기

트리거를 만들고 리소스 계획에 추가합니다.

구문

CREATE TRIGGER plan_name.name WHEN condition DO action;

예제

CREATE TRIGGER demo_plan.defaultToETL WHEN  ELAPSED_TIME > 20000 DO MOVE TO etl;

워크로드 관리 비활성화

활성 리소스 계획을 비활성화합니다.

구문

DISABLE WORKLOAD MANAGEMENT;

예제

DISABLE WORKLOAD MANAGEMENT

매핑 삭제

리소스 계획에서 매핑을 제거합니다.

구문

DROP { USER | GROUP | APPLICATION } MAPPING 'entity_name' IN plan_name;

예제

DROP USER MAPPING 'hive' IN demo_plan;

풀 삭제

리소스 계획에서 쿼리 풀을 제거합니다.

구문

DROP POOL plan_name.pool_path;

예제

CREATE POOL demo_plan.etl;

리소스 계획 삭제

리소스 계획을 삭제합니다.

구문

DROP RESOURCE PLAN plan_name;

예제

DROP RESOURCE PLAN demo_plan;

트리거 삭제

리소스 계획에서 트리거를 삭제합니다.

구문

DROP TRIGGER plan_name.trigger_name;

예제

DROP TRIGGER demo_plan.defaultToETL;

리소스 계획을 다음으로 바꾸기

한 리소스 계획의 내용을 다른 리소스 계획의 콘텐츠로 바꿉니다.

구문

REPLACE RESOURCE PLAN name1 WITH name2; 
REPLACE ACTIVE RESOURCE PLAN name1 WITH name2;

예제

REPLACE RESOURCE PLAN rp_plan1 WITH rp_plan2;

리소스 계획 표시

계획 콘텐츠를 나열합니다.

구문

SHOW RESOURCE PLAN plan_name;

예제

SHOW RESOURCE PLAN demo_plan;

리소스 계획 표시

모든 리소스 계획을 나열합니다.

구문

SHOW RESOURCE PLANS;

예제

SHOW RESOURCE PLANS;