복붙노트

[HADOOP] 쿼리 하이브 Metastore

HADOOP

쿼리 하이브 Metastore

하이브 메타 스토어 데이터베이스를 쿼리하고 다음과 같은 몇 가지 주요 속성을 얻는 방법을 알고 싶습니다.

나는 방금 처럼 하이브 명령 쇼 테이블 확장을 배웠습니다.

0   tableName:<tablename>
1   owner:<userid>
2   location:hdfs://NameService-705/user/hive/warehouse/<username>.db/<tablename>
3   inputformat:org.apache.hadoop.mapred.TextInputFormat
4   outputformat:org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
5   columns:struct columns { i64 ingestts, i64 ingestdate .... map<string,string> params}
6   partitioned:false
7   partitionColumns:
8   totalNumberFiles:1
9   totalFileSize:0
10  maxFileSize:0
11  minFileSize:0
12  lastAccessTime:1453767099408   ->  Mon Jan 25 2016 17:11:39 GMT-0700 (MST)
13  lastUpdateTime:1432218969243   ->  Thu May 21 2015 08:36:09 GMT-0600 (MDT)

나는 field0, 1, 12, 13이 정확히 정보이며, 어떻게 하이브 메타 저장소를 쿼리하여 수천 개의 시간을 보여주는 show table 대신에 직접 정보를 얻을 수 있는지 궁금합니다. 같은 것 :

select tableName, owner, lastAccessTime, lastUpdateTime from <metatable>

감사!

해결법

  1. ==============================

    1.

    select TBL_NAME, OWNER, CREATE_TIME, LAST_ACCESS_TIM
    from TBLS
    limit 11; 
    
  2. ==============================

    2.Java 코드에서 Hive Metastore를 직접 질의 할 수 있습니다 - cf. JavaDoc

    Java 코드에서 Hive Metastore를 직접 질의 할 수 있습니다 - cf. JavaDoc

    또는 빠르고 더러운 트릭을 원한다면 Metastore 데이터베이스 (일반적으로 MySQL 인스턴스)에 연결하여 직접 SQL 쿼리를 실행할 수 있습니다. 불행히도 데이터 모델에 대한 공개 문서는 많지 않습니다.

  3. from https://stackoverflow.com/questions/35005191/query-hive-meta-store by cc-by-sa and MIT license