Skip to content
Mirror of Apache Hive
Java PHP Perl Python PLpgSQL Shell Other
Find file
Latest commit 2663f49 @jxiang jxiang HIVE-12987: Add metrics for HS2 active users and SQL operations(Jimmy…
…, reviewed by Szehon, Aihua)
Failed to load latest commit information.
accumulo-handler HIVE-12302: Use KryoPool instead of thread-local caching (Prasanth Ja…
ant HIVE-9862 Vectorized execution corrupts timestamp values (Matt McClin…
beeline HIVE-12993: user and password supplied from URL is overwritten by the…
bin HIVE-13032: Hive services need HADOOP_CLIENT_OPTS for proper log4j2 i…
checkstyle HIVE-6123 : Implement checkstyle in maven (Lars Francke via Ashutosh …
cli Preparing for 2.1.0 development
common HIVE-12987: Add metrics for HS2 active users and SQL operations(Jimmy…
conf HIVE-11878: ClassNotFoundException can possibly occur if multiple jar…
contrib HIVE-1608:use sequencefile as the default for storing intermediate re…
data HIVE-12828: Update Spark version to 1.6 (Rui reviewed by Xuefu)
dev-support HIVE-10943 Beeline-cli: Enable precommit for beelie-cli branch(Ferdin…
docs HIVE-12020: Revert log4j2 xml configuration to properties based confi…
findbugs HIVE-3099. add findbugs in build.xml (Ransom Hezhiqiang via egc)
hbase-handler HIVE-1608:use sequencefile as the default for storing intermediate re…
hcatalog HIVE-12958: Make embedded Jetty server more configurable (Aihua Xu, r…
hplsql Preparing for 2.1.0 development
hwi Preparing for 2.1.0 development
itests HIVE-12987: Add metrics for HS2 active users and SQL operations(Jimmy…
jdbc HIVE-12993: user and password supplied from URL is overwritten by the…
lib HIVE-2761: Remove lib/javaewah-0.3.jar (ecapriolo via hashutosh)
llap-client HIVE-12934. Refactor llap module structure to allow for a usable clie…
llap-common HIVE-12934. Refactor llap module structure to allow for a usable clie…
llap-server HIVE-12990 : LLAP: ORC cache NPE without FileID support (Sergey Shelu…
llap-tez HIVE-12934. Refactor llap module structure to allow for a usable clie…
metastore HIVE-12892 : Add global change versioning to permanent functions in m…
odbc Preparing for 2.1.0 development
orc HIVE-9862 Vectorized execution corrupts timestamp values (Matt McClin…
packaging HIVE-12985 : distribution configs are wrong and out of date (Sergey S…
ql HIVE-12892 : Add global change versioning to permanent functions in m…
serde HIVE-9862 Vectorized execution corrupts timestamp values (Matt McClin…
service-rpc HIVE-12442: Refactor/repackage HiveServer2's Thrift code so that it c…
service HIVE-12987: Add metrics for HS2 active users and SQL operations(Jimmy…
shims HIVE-10115: HS2 running on a Kerberized cluster should offer Kerberos…
spark-client HIVE-12568: Provide an option to specify network interface used by Sp…
storage-api HIVE-9862 Vectorized execution corrupts timestamp values (Matt McClin…
testutils HIVE-12848: Change derby scripts, for HMS upgrade tests, to accomodat…
.arcconfig HIVE-2588 [jira] Update arcconfig to include commit listener
.checkstyle HIVE-2930 [jira] Add license to the Hive files
.gitattributes HIVE-7023 : Bucket mapjoin is broken when the number of small aliases…
.gitignore HIVE-10165 Improve hive-hcatalog-streaming extensibility and support …
.reviewboardrc Preparing for 1.3.0 development
LICENSE HIVE-10662: LLAP: Wait queue pre-emption (Prasanth Jayachandran)
NOTICE HIVE-11748: HivePreparedStatement's setTimestamp() does not quote val…
README.txt HIVE-10676 : Update Hive's README to mention spark, and to remove jdk…
RELEASE_NOTES.txt Updating release notes to reflect 1.2.1
errata.txt HIVE-12826: Vectorization: fix VectorUDAF* suspect isNull checks (err…
pom.xml HIVE-12839: Upgrade Hive to Calcite 1.6 (Pengcheng Xiong, reviewed by…

README.txt

Apache Hive (TM) @VERSION@
======================

The Apache Hive (TM) data warehouse software facilitates querying and
managing large datasets residing in distributed storage. Built on top
of Apache Hadoop (TM), it provides:

* Tools to enable easy data extract/transform/load (ETL)

* A mechanism to impose structure on a variety of data formats

* Access to files stored either directly in Apache HDFS (TM) or in other
  data storage systems such as Apache HBase (TM)

* Query execution using Apache Hadoop MapReduce, Apache Tez
  or Apache Spark frameworks.

Hive implements a dialect of SQL (Hive QL) that focuses on analytics
and presents a rich set of SQL semantics including OLAP functions,
subqueries, common table expressions and more. Hive allows SQL
developers or users with SQL tools to easily query, analyze and
process data stored in Hadoop.
Hive also allows programmers familiar with the MapReduce framework
to plug in their custom mappers and reducers to perform more
sophisticated analysis that may not be supported by the built-in
capabilities of the language. QL can also be extended with custom
scalar functions (UDF's), aggregations (UDAF's), and table
functions (UDTF's).

Hive users have a choice of 3 runtimes when executing SQL queries.
Users can choose between Apache Hadoop MapReduce, Apache Tez or
Apache Spark frameworks as their execution backend. MapReduce is a
mature framework that is proven at large scales. However, MapReduce
is a purely batch framework, and queries using it may experience
higher latencies (tens of seconds), even over small datasets. Apache
Tez is designed for interactive query, and has substantially reduced
overheads versus MapReduce. Apache Spark is a cluster computing
framework that's built outside of MapReduce, but on top of HDFS,
with a notion of composable and transformable distributed collection
of items called Resilient Distributed Dataset (RDD) which allows
processing and analysis without traditional intermediate stages that
MapReduce introduces.

Users are free to switch back and forth between these frameworks
at any time. In each case, Hive is best suited for use cases
where the amount of data processed is large enough to require a
distributed system.

Hive is not designed for online transaction processing and does
not support row level insert/updates. It is best used for batch
jobs over large sets of immutable data (like web logs). What
Hive values most are scalability (scale out with more machines
added dynamically to the Hadoop cluster), extensibility (with
MapReduce framework and UDF/UDAF/UDTF), fault-tolerance, and
loose-coupling with its input formats.


General Info
============

For the latest information about Hive, please visit out website at:

  http://hive.apache.org/


Getting Started
===============

- Installation Instructions and a quick tutorial:
  https://cwiki.apache.org/confluence/display/Hive/GettingStarted

- A longer tutorial that covers more features of HiveQL:
  https://cwiki.apache.org/confluence/display/Hive/Tutorial

- The HiveQL Language Manual:
  https://cwiki.apache.org/confluence/display/Hive/LanguageManual


Requirements
============

- Java 1.7

- Hadoop 1.x, 2.x


Upgrading from older versions of Hive
=====================================

- Hive @VERSION@ includes changes to the MetaStore schema. If
  you are upgrading from an earlier version of Hive it is imperative
  that you upgrade the MetaStore schema by running the appropriate
  schema upgrade scripts located in the scripts/metastore/upgrade
  directory.

- We have provided upgrade scripts for MySQL, PostgreSQL, Oracle,
  Microsoft SQL Server, and Derby databases. If you are using a
  different database for your MetaStore you will need to provide
  your own upgrade script.

Useful mailing lists
====================

1. user@hive.apache.org - To discuss and ask usage questions. Send an
   empty email to user-subscribe@hive.apache.org in order to subscribe
   to this mailing list.

2. dev@hive.apache.org - For discussions about code, design and features.
   Send an empty email to dev-subscribe@hive.apache.org in order to
   subscribe to this mailing list.

3. commits@hive.apache.org - In order to monitor commits to the source
   repository. Send an empty email to commits-subscribe@hive.apache.org
   in order to subscribe to this mailing list.
Something went wrong with that request. Please try again.