아파치 하이브는 아파치 소프트웨어 재단의 자원봉사자들이 운영하는 오픈소스 프로젝트입니다. 이전에는 아파치의 하위 프로젝트였지만®®, 지금은 자체 최고 수준의 프로젝트가 되었습니다. 프로젝트에 대해 배우고 전문 지식을 기부하는 것이 좋습니다. Hive는 API 액세스 또는 SparkSQL을 통해 예측 분석, 기계 학습 및 기타 프로그래밍 모델에서 Spark의 관계형 데이터 스토어로 작동할 수 있습니다. Hive는 Hive 테이블(위치 및 스키마)에 대한 메타데이터와 메타스토어 서비스 API를 통해 개발자가 프로그래밍 방식으로 사용할 수 있는 파티션을 제공하는 메타스토어를 제공합니다. 하이브는 하이브 메타스토어에 하이브 테이블스키마를 저장합니다. Metastore는 웨어하우스에 있는 테이블 및 파티션에 대한 모든 정보를 보유하는 데 사용됩니다. 기본적으로 메타스토어는 Hive 서비스와 동일한 프로세스에서 실행되며 기본 메타스토어는 DerBy 데이터베이스입니다. 하이브 v0.7.0은 하두프 보안과 통합을 추가했습니다. Hadoop은 보안을 제공하기 위해 Kerberos 권한 부여 지원을 사용하기 시작했습니다. Kerberos는 클라이언트와 서버 간의 상호 인증을 허용합니다.

이 시스템에서는 요청에 따라 티켓에 대한 클라이언트의 요청이 전달됩니다. Hadoop의 이전 버전에는 hadoop.job.ugi 속성을 설정하여 사용자 이름을 스푸핑할 수 있는 사용자와 동일한 사용자(hadoop 또는 mapred)에서 실행되는 MapReduce 작업과 같은 몇 가지 문제가 있었습니다. Hive v0.7.0이 Hadoop 보안과 통합되면서 이러한 문제가 크게 해결되었습니다. TaskTracker 작업은 시작한 사용자가 실행하고 사용자 이름은 hadoop.job.ugi 속성을 설정하여 더 이상 스푸핑할 수 없습니다. Hive에서 새로 만든 파일에 대한 권한은 HDFS에 의해 결정됩니다. Hadoop 분산 파일 시스템 권한 부여 모델은 사용자, 그룹 및 읽기, 쓰기 및 실행이라는 세 가지 권한이 있는 세 가지 엔터티를 사용합니다. 새로 생성된 파일에 대한 기본 사용 권한은 Hive 구성 변수 hive.files.umask.value의 umask 값을 변경하여 설정할 수 있습니다. [3] Hive의 SQL은 기본 SQL 작업을 제공합니다. 이러한 작업은 테이블 또는 파티션에서 작동합니다.

이러한 작업은 다음과 같습니다: 단어 수 프로그램은 입력에서 각 단어가 발생하는 횟수를 계산합니다. 단어 수는 HiveQL에서 다음과 같이 쓸 수 있습니다:[3] Hive는 아파치 하두프를 기반으로 하는 데이터 웨어하우징 인프라입니다. Hadoop은 상용 하드웨어의 데이터 저장 및 처리를 위한 대규모 확장 및 내결함성 기능을 제공합니다. 내부적으로 컴파일러는 HiveQL 문을 MapReduce, Tez 또는 Spark 작업의 지시된 비순환 그래프로 변환하며, 이 그래프는 실행을 위해 Hadoop에 제출됩니다. [26] 테이블 생성, 표시, 변경 및 삭제에 대한 자세한 내용은 Hive 데이터 정의 언어를 참조하십시오.