Favicon of Apache Hive

Apache Hive

Apache Hive is a distributed, fault-tolerant data warehouse system that enables analytics at massive scale, running SQL over data in the Hadoop ecosystem on Apache Tez, with LLAP for sub-second queries and first-class Apache Iceberg support in the 4.x line.

LicenseOpen source (permissive)· Apache-2.0
DeploymentSelf-hostedManaged
PricingFree
Operational complexityHigh
WorkloadBatchInteractive
LanguageJava

Use it when

  • You already run a Hadoop estate; Hive 4.x on Tez with LLAP is a real upgrade path that keeps HiveQL jobs working.
  • The Hive Metastore is your catalog of record and you want the engine that maintains it natively.
  • You need full DML on Iceberg (insert, update, delete, merge) inside a Hadoop-centric stack.
  • Long batch jobs must survive worker failures; Tez retries tasks rather than restarting queries.

Think twice when

  • You are starting fresh on cloud object storage; Trino, Spark, or a warehouse reach the same data without a Hadoop cluster.
  • Sub-second interactive queries are the goal; LLAP narrows the gap, but engines built for interactivity hold it.
  • HiveQL is its own dialect, and each year on it makes leaving Hadoop more expensive.
  • Operating it means a full Hadoop deployment: metastore database, Tez, YARN, and ZooKeeper.

How it runs

Self-hosted on a Hadoop cluster: HiveServer2 fronts queries over Thrift with JDBC, ODBC, and Beeline; Tez executes them; LLAP keeps daemons warm for low latency; and the metastore sits on a relational database with leader election for HA. Managed variants ship in EMR, Dataproc, and HDInsight.

Details

Compare

How Apache Hive answers the questions Query Engines turns on.

Query Engines
How it works
Engine shapeDistributed cluster on Tez; LLAP for sub-second
Catalog requiredIt is the metastore: HMS on a relational database is the catalog Trino, Spark and Flink all talk to
SQL dialectHiveQL: its own dialect rather than ANSI SQL, and the reason leaving Hadoop is expensive
Running it
Concurrent usersWorkload management resource plans divide LLAP into query pools, mappings route by user or group, and triggers kill runaway queries
AccelerationLLAP keeps executors warm and caches data; materialized views rewrite queries automatically through Calcite, and the CBO uses column statistics
Failure recoveryTez retries failed tasks and reattempts lost work, so a long batch query survives a worker dying
Connections
Non-lake sourcesExternal tables through storage handlers, JDBC (read-only), HBase, Kafka, Druid; no write-back to the JDBC source
Table formatsORC, Parquet, Avro, text and SequenceFile natively; Iceberg embedded since 4.0 with full DML, insert, update, delete, merge
Client accessHiveServer2 over Thrift, with JDBC and ODBC drivers and the Beeline shell
Access
Access controlStorage-based authorization in the metastore, SQL standard-based GRANT and REVOKE in HiveServer2, column-level policies once Ranger's plugin is added

Share:

Alternatives to Apache Hive

Favicon

 

  
  
Favicon

 

  
  
Favicon