Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added StarRocks integration

Table of Contents

Apache Hive

The Apache HiveTM data Hive™ data warehouse software facilitates querying reading, writing, and managing large datasets residing in distributed storage and queried using SQL syntax.

Built on top of Apache HadoopTMHadoop™, it Hive provides the following features:

  • Tools to enable easy access to data via SQL, thus enabling data warehousing tasks such as extract/transform/load (ETL), reporting, and data analysis.
  • A mechanism to impose structure on a variety of data formats
  • Access to files stored either directly in Apache HDFSTM or in other data storage systems such as Apache HBaseTM 

  • Query execution via MapReduce

Hive defines a simple SQL-like query language, called QL, that enables users familiar with SQL to query the data. At the same time, this language also allows programmers who are familiar with the MapReduce framework to be able 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 provides standard SQL functionality, including many of the later SQL:2003SQL:2011, and SQL:2016 features for analytics.
Hive's SQL can also be extended with user code via user defined functions (UDFs), user defined aggregates (UDAFs), and user defined table functions (UDTFs).

There is not a single "Hive format" in which data must be stored. Hive comes with built in connectors for comma and tab-separated values (CSV/TSV) text files, Apache ParquetApache ORC, and other formats. Users can extend Hive with connectors for other Hive does not mandate read or written data be in the "Hive format" — there is no such thing. Hive works equally well on Thrift, control delimited, or your specialized data formats. Please see File Formats and Hive SerDe in the Developer Guide for details.

Hive is not designed for online transaction processing (OLTP workloads and does not offer real-time queries or row-level updates) workloads. It is best used for traditional data warehousing tasks.

Hive is designed to maximize batch jobs over large sets of append-only data (like web logs). What Hive values most are scalability (scale out with more machines added dynamically to the Hadoop cluster), performance, extensibility (with MapReduce framework and UDF/UDAF/UDTF), fault-tolerance, and loose-coupling with its input formats.

Components of Hive include HCatalog and WebHCat.

  • HCatalog is a component of Hive. It is a table and storage management layer for Hadoop that enables users with different data processing tools — including Pig and MapReduce — to more easily read and write data on the grid.
  • WebHCat provides a service that you can use to run Hadoop MapReduce (or YARN), Pig, Hive jobs or . You can also perform Hive metadata operations using an HTTP (REST style) interface.

...

User Documentation

Administrator Documentation

...

Hive Versions and Branches
Anchor
Hive Versions
Hive Versions
Anchor
Hive Versions and Branches
Hive Versions and Branches

Recent versions of Hive are available on the the Downloads page page of the Hive website. The Downloads For each version, the page provides each version's the release date and list of changes.  If a link to the change log. If you want a list of changes change log for an earlier version (or a development branch), use the the Configure Release Notes page page.

The Apache Hive JIRA keeps track of changes to Hive code, documentation, infrastructure, etc. The version number or branch for each resolved JIRA issue is shown in the "Fix Version/s" field in the Details section at the top of the issue page. For example, HIVE-5107 has a fix version of 0.13.0.

Sometimes a version number changes before the release.  When When that happens, the original number might still be found in the JIRA, wiki, and mailing list discussions. For example:

Release NumberOriginal Number
1.0.00.14.1
1.1.00.15.0
2.3.02.2.0

More information about Hive branches is available in How to Contribute: Understanding Hive Branches.

...