********************************* 컬럼 파티셔닝 ********************************* 컬럼 테이블 파티셔닝 기능은 하이브에서 제공하는 파티셔닝 방법을 지원하기 위해 설계되었습니다. ============================================================================== 컬럼 파티셔닝 기능을 사용한 테이블은 어떻게 만드나요? ============================================================================== 테이블을 만들때 ``PARTITION BY`` 절을 사용하면 파티셔능 기능을 사용할 수 있습니다. 컬럼 파티셔닝 기능을 사용해 테이블을 만들고 싶으실 경우 ``PARTITION BY COLUMN`` 절에 파티셔닝 키로 사용할 컬럼을 지정하시면 됩니다. 예를 들어, 아래의 테이블 스키마로 구성된 ``orders`` 테이블이 있다고 가정해 보겠습니다.:: id INT, item_name TEXT, price FLOAT 또한, 여러분은 파티셔닝 키로 ``order_date TEXT`` 와 ``ship_date TEXT``컬럼을 사용하고자 한다고 가정해 보겠습니다. 위의 가정을 충족시키기 위해, 아래의 예제처럼 테이블을 생성하실때 ``PARTITION BY COLUMN`` 절에 파티셔닝 키를 기술하시면 됩니다. .. code-block:: sql CREATE TABLE orders ( id INT, item_name TEXT, price ) PARTITION BY COLUMN (order_date TEXT, ship_date TEXT); 이제, ``orders`` 테이블은 ``order_date`` 컬럼과 ``ship_date`` 컬럼들로 파티셔닝 되어 저장될 것입니다. ====================================================================================== 컬럼 파티셔닝 기능을 활용하여 컬럼저장 테이블에서 데이터 선별하기 ====================================================================================== 아래의 여러가지 연산자들은 ``WHERE`` 절에서 사용하실 수 있습니다. 이를 활용하면 질의 처리 계획 생성 단계에서 컬럼 파티션 조건을 충족하지 않는 데이터를 제거하기 위한 연산을 수행하지 않아도 되는 장점이 생깁니다. * ``=`` * ``<>`` * ``>`` * ``<`` * ``>=`` * ``<=`` * LIKE 키워드는 와일드카드 문자와 함께 쓰입니다. * IN 키워드를 사용해 연산자들을 나열할 수도 있습니다. ================================================== 하이브와의 호환성 아슈 ================================================== 만약 하이브에서 파티셔닝 기능을 활용해 테이블을 만들때 Tajo의 외부 테이블로 만드실 경우, Tajo에서 해당 테이블을 바로 사용하실 수 있습니다. 아직까지 Tajo와 하이브의 파티셔닝 테이블의 이용과 관련되어 발견된 호환성 이슈는 없습니다!