metastore

    [Hive] Metastore의 heap memory 증가 이슈 해결 과정

    이번 글에서는 토이 프로젝트를 진행하면서 Hive Metastore의 heap memory가 비정상적으로 증가하는 이슈의 해결 과정에 대해 공유하겠습니다. 해당 이슈 해결 과정을 보기에 앞서 [Hive] Hive 아키텍처와 HiveServer2 & Hive Metastore 글을 읽으면 좀 더 이해하기 쉬울 것이라고 생각됩니다. 문제 발견 Hive를 사용하면서 Hive 쿼리가 정상적으로 수행되지 않는 문제를 발견하게 되었습니다. 처음에는 Hiveserver2가 다운된 문제라고 생각했습니다. 하지만 이상한 점은 Hiveserver2 프로세스가 죽지 않고 살아있었다는 점입니다. 어쨌든 문제의 원인을 파악하기 위해 Hiveserver2의 로그를 분석했습니다. 로그 분석 hiveserver2.log WARN [..

    [Hive] Hive 아키텍처와 HiveServer2 & Hive Metastore

    이번 글에서는 Hive의 디테일한 아키텍처와 HiveServer2, Hive Metastore의 내용을 주로 다루도록 하겠습니다. Hive 아키텍쳐 Hive 아키텍처는 크게 HiveServer와 RDB, Hadoop의 관계로 구성할 수 있습니다. HiveServer는 Apache Thrift를 기반으로 만들어졌습니다. 여기서 Thrift는 서로 다른 언어 간의 통신을 가능하게 해주는 cross-language RPC 프레임워크로써, HiveServer2 이전에는 HiveServer를 Thrift server라고 부르곤 했습니다. 이번 글에서는 편의상 HiveServer2 이전 버전을 HiveServer1이라고 하겠습니다. - Client : Client가 Hive 쿼리를 사용할 수 있는 인터페이스. ..

    [Hive] Unable to fetch table .null 에러 해결 방법

    이번 글에서는 빅데이터 클러스터를 운영하면서 Hive 관련 "Unable to fetch table .null" 에러가 발생했던 경험을 공유하겠습니다. 문제 상황 & 분석 과정 클러스터 운영 중에 특정 Hive Table이 에러가 발생하며 drop을 포함한 모든 명령어가 먹히지 않는 문제가 발생했습니다. 문제 상황은 아래와 같았습니다. - Hiveserver 정상 - Hive에 접속해 Table 리스트를 보면 존재함 - Hue에서 UI를 통한 Hive Table 조회시 에러 발생 - 문제가 되던 특정 Table에 HQL 수행 시 에러 발생 - 해당 Table drop도 불가능 Failed: SemanticException Unable to fetch table [table_name].null 해당 문제..

    [Hive] Metastore & MySQL 문제로 Hive Query 실행 안되는 이슈 해결 방법

    빅데이터 플랫폼을 운영하면서 겪었던 문제 중 Hive 관련 경험을 소개하도록 하겠습니다. 문제 상황 & 분석 과정 클러스터 운영 중에 Hive Query가 작동하지 않는다는 문의를 받았습니다. 문의 사항은 너무 일반적인 문제 상황이었기 때문에 현재 상황을 파악했고 아래와 같았습니다. - Hiveserver 정상 - Terminal CLI에서 Hive 접속 가능 - Hive Metastore 정상 Hive 상태를 체크했지만 겉으로 보기에는 전혀 문제가 있어보이지 않았습니다. 그래서 일단 Hive에 접속해 간단한 select문을 실행해봤습니다. [root@server1 ~]# hive .... hive > select * from example_db.example_table; 하지만 Query를 실행한지 한..