2017-12-01 39 views
11

하이브가 동적 피벗 기능을 가지고 있습니까? 정규 피벗 (ie here)을 찾을 수 있지만 하드 코딩 된 피벗 (런타임에 알려진 모든 값)이 아닌 동적 (런타임에 결정된 모든 값)으로 나타납니다.하이브에는 동적 피벗 기능이 있습니까

누군가가 공유 할 수있는 사용자 정의 코드가있는 경우 감사하겠습니다.

+0

하이브에는 동적 피벗 기능이 없으므로 자체 동적 SQL 솔루션을 개발하거나 타사 도구를 사용해야합니다. – leftjoin

답변

1

HiveQL은 사용자가 설명하는 것처럼 동적 피벗을 지원하지 않습니다. 이런 식으로하고 싶다면 직선적 인 동적 SQL을 사용하고 사용중인 모든 오케스트레이션 도구에서 쿼리를 구성해야합니다.

필자는 사용하지는 않았지만 이는 분명히 supported in HPL/SQL through use of the EXEC keyword.입니다. 이렇게하면 동적 SQL 문자열을 실행할 수 있으며 전통적인 Hive 위에 트랜잭션 계층을 더 많이 제공 할 수 있습니다. HPL/SQL is included in Hive 2.0. Hive 2.0을 사용하는 경우 사용할 수 있습니다.

개인적으로 필자는 개인적으로 모든 작업을 수행하는 데 사용하는이 유형의 쿼리 작성을 파이썬에서 수행했습니다.