HIVE를 설치하는 방법 Ubuntu (다운로드 및 설정 가이드)
⚡ 스마트 요약
Apache Hive 설치 Ubuntu 이미 실행 중인 하둡 클러스터 위에 얇은 데이터 웨어하우스 계층을 구축하는 방식이므로, 설정은 대부분 하나의 아카이브 압축을 풀고 세 개의 환경 변수를 올바른 디렉터리로 지정하는 것만으로 완료됩니다.
Apache Hive를 설치하기 전에 전용 서버가 필요합니다. 하둡 모든 Hadoop 데몬을 설치하고 실행합니다.
하둡 설치에 대해서는 다음을 확인하세요. 링크.
모든 하둡 데몬이 정상적으로 작동하면 Hive 부분 설치를 시작하세요. 아래 안내는 네 단계로 진행됩니다.
Apache Hive 설치 과정
- 필수 조건 및 버전 호환성
- 하이브 설치
- Metastore 스키마 초기화
- Hive 셸 명령
Apache Hive 설치를 위한 필수 조건 Ubuntu
Hive는 독립형 데이터베이스가 아닙니다. HiveQL을 기존 클러스터에서 실행되는 작업으로 변환하는 쿼리 계층이므로, 거의 모든 설치 실패는 이러한 기존 클러스터에서 발생합니다. tracHive 자체의 문제가 아니라 필수 구성 요소가 누락된 문제입니다. 다운로드하기 전에 다음 사항을 확인하십시오.
- 지원되는 JDK입니다. Hive 4.1.x는 JDK 17에서 실행되지만, Hive 4.2.x는 최소 요구 사항이 JDK 21로 높아졌습니다. 다음 명령어로 버전을 확인하세요. 자바 버전 그리고 JAVA_HOME이 내보내지는지 확인하세요.
- 실행 중인 하둡 클러스터. NameNode와 DataNode 모두 활성 상태여야 합니다. 실행하세요. JPS NameNode, DataNode, ResourceManager 및 NodeManager가 모두 목록에 나타나는지 확인하십시오.
- HDFS에 대한 쓰기 권한이 있습니다. Hive를 시작하는 계정에는 하위 디렉터리를 생성할 수 있는 권한이 필요합니다. HDFS.
- 버전이 일치합니다. Hive 4.2.0은 Hadoop 3.4.1 및 Tez 0.10.5를 기반으로 빌드되었습니다. Hive 3.x 제품군은 2024년 10월에 지원이 종료되었으므로 새로 설치할 때는 4.x 제품군을 대상으로 해야 합니다.
- 무료 자료. 단일 노드 학습 환경은 약 4GB의 RAM과 20GB의 여유 디스크 공간이면 원활하게 작동합니다.
위 사항들을 모두 확인하셨다면, 아래의 다운로드 및 압축 해제 과정은 문제없이 진행될 것입니다.
Hive를 설치하는 방법 Ubuntu
다음은 Hive를 설치하는 방법에 대한 단계별 프로세스입니다. Ubuntu:
1단계) Hive를 다운로드하고 설치합니다. Ubuntu
Hive 안정 버전 설치 파일을 다운로드하려면 다음을 참조하십시오. 아파치 URL 아래에 언급된 바와 같습니다.
https://www.apache.org/dyn/closer.cgi/hive/ — ~로 가세요 URL 그리고 아파치 미러 다운로드 링크를 선택하세요. Apache Hive 다운로드 페이지 각 릴리스와 해당 Hadoop 버전이 어떻게 쌍을 이루는지 나열합니다.
미러 페이지는 아래 그림과 같이 사용 가능한 Hive 릴리스 디렉터리 목록과 함께 열립니다.
Hive 설치 프로그램의 최신 버전을 선택하세요. (제 경우에는 hive – 3.1.2입니다.) 릴리스 폴더에는 바이너리 및 소스 아카이브가 나란히 나열됩니다.
bin 파일을 클릭하면 다운로드가 시작됩니다.
2단계) 예시tract tar 파일
다운로드한 tar 파일이 있는 위치로 이동한 다음 실행하세요.trac다음 명령어를 사용하여 tar 파일을 압축 해제하고 Hive를 설치하세요. Ubuntu 귀하의 시스템에.
tar -xvf apache-hive-3.1.2-bin.tar.gz
터미널은 새 Hive 디렉터리에 파일이 압축 해제될 때마다 각 파일의 내용을 출력합니다.
3단계) Apache Hive에 다양한 구성 속성 배치
이 단계에서는 두 가지 작업을 수행할 것입니다.
- bashrc 파일에 Hive 홈 경로를 추가합니다.
- hive-config.sh에 Hadoop 홈 경로 위치를 지정합니다.
1) ~/.bashrc 파일에 Hive 경로를 명시하세요.
아래 명령어를 사용하여 파일을 편집 모드로 엽니다.
- 위 스크린샷에 표시된 대로 bashrc 파일을 엽니다.
- bashrc 파일에 Hive 홈 경로, 즉 HIVE_HOME 경로를 명시하고 아래와 같이 export 명령을 실행하세요.
Code bashrc에 추가해야 합니다:
export HIVE_HOME="/home/guru99hive/apache-hive-1.2.0-bin" export PATH=$PATH:$HIVE_HOME/bin
파일을 다시 로드하세요 소스 ~ / .bashrc 따라서 새 경로는 현재 터미널 세션에 적용됩니다.
2) hive-config.sh에서 Hadoop 경로 내보내기
하둡 생태계와 통신하기 위해 Hive 설정 파일에 하둡 홈 경로를 정의합니다. 아래와 같이 hive-config.sh 파일을 엽니다.
아래와 같이 hive-config.sh 파일에 HADOOP_HOME 경로를 명시하십시오.
4단계) Hadoop에서 Hive 디렉터리 생성
하둡과 통신하려면 아래와 같이 하둡에 디렉터리를 생성해야 합니다. Hive는 관리 테이블 데이터를 warehouse 디렉터리에 기록하고 스테이징 출력을 tmp 디렉터리에 기록합니다.
하둡에서 Hive 폴더를 생성할 수 있도록 루트 권한을 부여하는 방법입니다. 오류 메시지가 표시되지 않으면 하둡이 Hive 폴더에 대한 권한을 성공적으로 부여한 것입니다.
5단계) Hive 셸에 접속합니다.
Hive 셸에 접속하려면 다음 명령어를 입력하세요. '. /하이브' 아래와 같이 명령.
Hive 메타스토어 스키마 초기화 방법
Hive는 모든 테이블 이름, 열 이름 및 데이터 형식을 메타스토어라는 관계형 저장소에 저장합니다. 새로 설치하면 이 저장소는 비어 있으며, Hive 3.x 버전부터는 스키마 테이블이 생성될 때까지 셸이 시작되지 않습니다. Hive bin 디렉터리에 있는 schematool 유틸리티를 사용하여 스키마 테이블을 생성할 수 있습니다.
1인 학습 환경의 경우, 함께 제공되는 Derby 데이터베이스로 충분합니다.
$HIVE_HOME/bin/schematool -dbType derby -initSchema
이 명령은 생성된 스키마 버전을 출력하고 끝납니다. schemaTool 완료됨Derby는 명령이 실행된 디렉토리에 파일을 저장하므로, 이후에는 항상 동일한 디렉토리에서 Hive를 실행해야 합니다.
Derby는 한 번에 하나의 활성 세션만 허용하므로 공유 클러스터에는 적합하지 않습니다. Point Hive는 다음과 같습니다. MySQL 대신 hive-site.xml에 연결 속성을 추가하고 다른 데이터베이스 유형으로 도구를 다시 실행하십시오.
$HIVE_HOME/bin/schematool -dbType mysql -initSchema
전체 숙소 목록과 운전기사 배치 정보는 안내서에 자세히 나와 있습니다. Hive 메타스토어를 다음과 같이 구성합니다. MySQL기억해 둘 만한 깃발이 두 개 더 있습니다.
- -정보 아무것도 변경하지 않고 메타스토어에 현재 기록된 스키마 버전을 보고합니다.
- -스키마 업그레이드 기존 메타스토어를 새로 설치된 Hive 릴리스의 스키마 버전으로 마이그레이션합니다.
스키마가 설정되었으므로 셸은 첫 번째 HiveQL 문을 수락할 준비가 되었습니다.
Hive 셸 명령
여기서는 Hive 셸 명령어 "create"를 사용하여 열 이름을 지정하고 샘플 테이블을 생성해 보겠습니다.
Hive에서 데이터베이스를 생성하는 샘플 코드입니다. 아래 스크린샷은 생성문과 describe 명령의 출력 결과를 순서대로 보여줍니다.
위 스크린샷에서 다음과 같은 점을 확인할 수 있습니다.
1) Hive에서 열 이름이 포함된 샘플 테이블 생성
- 여기서 테이블 이름은 세 개의 열 이름이 있는 "product"입니다. 제품, 이름, 가격
- 세 개의 열 이름은 각각의 데이터 유형으로 표시됩니다.
- 모든 필드는 쉼표(', ')로 구분됩니다.
2) Hive 테이블 정보 표시
- "describe" 명령어를 사용하면 Hive에 있는 테이블 정보를 확인할 수 있습니다.
- 여기에는 테이블 스키마에 있는 열 이름과 해당 데이터 유형이 표시됩니다.
- 마지막으로, 이 명령을 실행하는 데 걸린 시간과 가져온 행 수가 표시됩니다.
데이터베이스를 생성하는 샘플 코드 하이브 (자가 점검용)
1) product 테이블 생성 (product int, pname string, price float)
Row format delimited Fields terminated by ',';
2) 제품을 설명하십시오;
테이블이 describe 명령에 응답하면 셸, 메타스토어 및 HDFS가 모두 연결됩니다. 이후 동일한 세션에서 더 넓은 범위의 요청을 수락할 수 있습니다. 테이블 생성, 수정 및 삭제 진술 및 정렬 기준, 그룹 기준 및 클러스터 기준 검색어.
일반적인 Hive 설치 오류 Ubuntu 그리고 그것을 고치는 방법
대부분의 첫 실행 실패는 Hive 자체보다는 Hive 주변 환경에서 발생합니다. 아래 표는 가장 자주 나타나는 오류 메시지와 그 원인, 그리고 오류를 해결하는 명령어를 보여줍니다.
| 화면 메시지 | 가능한 원인 | 수정 |
|---|---|---|
| hive: 명령어를 찾을 수 없습니다 | HIVE_HOME/bin이 PATH에 없습니다. | bashrc 파일의 export 라인을 다시 확인한 후 실행하세요. 소스 ~ / .bashrc |
| 메타스토어에서 버전 정보를 찾을 수 없습니다. | 메타스토어 스키마가 초기화되지 않았습니다. | 선택한 데이터베이스 유형에 대해 schematool을 -initSchema 옵션과 함께 실행합니다. |
| localhost:9000 호출이 연결 예외로 인해 실패했습니다. | HDFS가 실행 중이 아닙니다. | 하둡 데몬을 시작하고 네임노드와 데이터노드가 나타나는지 확인하십시오. JPS |
| 네임노드가 안전 모드에 있습니다. | 네임노드는 아직 시작 안전 모드에 있습니다. | 안전 모드에서 나가려면 hdfs dfsadmin -safemode leave |
| 권한이 거부되었습니다: /user/hive/warehouse에 대한 쓰기 권한 | 창고 디렉토리에 그룹 쓰기 권한이 없습니다. | 재신청 hdfs dfs -chmod g+w 창고 및 임시 디렉터리에 |
| Preconditions.checkArgument에서 NoSuchMethodError가 발생했습니다. | Hive와 Hadoop은 서로 다른 Guava jar 버전을 제공합니다. | Hive 라이브러리 디렉터리에 있는 기존 Guava jar 파일을 삭제하고 그 자리에 Hadoop jar 파일을 복사하세요. |
Hive 문제와 Hadoop 문제를 빠르게 구분하는 방법은 다음 명령어를 실행하는 것입니다. JPS 먼저, 데몬이 누락된 경우 클러스터에 문제가 있는 것이고, 데몬이 존재하는데도 셸 실행에 실패하는 경우 Hive 구성 또는 메타스토어 스키마에 문제가 있는 것입니다. 셸이 안정적으로 작동하면 다음 단계로 넘어갈 수 있습니다. HiveQL 연산자 및 내장 함수 참고 자료는 자연스러운 다음 단계입니다.








