Apache Hive на собеседовании Data Engineer
Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.
Содержание:
Зачем разбирать на собесе
Hive — legacy, но всё ещё в production многих компаний. На собесе DE: «отличие от Spark SQL», «когда Hive».
Hive основы
SQL-like layer над HDFS / object storage. Translates HiveQL → MapReduce / Tez / Spark.
Components:
- Hive Metastore — schema catalog.
- HiveServer2 — JDBC-compatible.
- CLI / Beeline — clients.
Use case. Big batch SQL queries на data lake. Не interactive.
Partitioning
Partitioning по directory structure.
CREATE TABLE events (
user_id BIGINT,
event_type STRING
) PARTITIONED BY (event_date STRING)
STORED AS PARQUET;
INSERT INTO events PARTITION (event_date='2026-05-07')
VALUES (1, 'click');В HDFS:
/warehouse/events/event_date=2026-05-07/file.parquetПри query WHERE event_date='2026-05-07' — pruning, читает только relevant.
Bucketing
Hash-distribution внутри partition.
CREATE TABLE users (
user_id BIGINT,
name STRING
) CLUSTERED BY (user_id) INTO 32 BUCKETS;Применение:
- Sampling (
TABLESAMPLE). - Optimized joins (bucketed map join).
- Distribution для downstream Spark.
File formats
Text / CSV. Не использовать в production.
Parquet. Default, columnar, compressed. Best для analytics.
ORC. Optimized Row Columnar — Hive-native. Cluster ACID транзакции. Лучшая интеграция с Hive.
Avro. Schema evolution. Часто для CDC.
В 2026: ORC внутри Hive экосистемы, Parquet в Spark / Iceberg экосистеме.
Execution engines
MapReduce (legacy). Slow, batch.
Tez. Faster MR. DAG-based. Стандарт для Hive в 2020+.
Spark. Hive-on-Spark.
В современных setup'ах — Hive часто replaced Trino (interactive) или Spark SQL (batch). Hive остаётся для legacy ETL.
Связанные темы
- Hive Metastore для DE
- Trino и Presto для DE
- Spark RDD vs DataFrame для DE
- Parquet ORC Avro для DE
- Подготовка к собесу Data Engineer
FAQ
Hive используется в 2026?
Скорее legacy / бережно поддерживаемое. Новые проекты — Spark / Trino / Iceberg.
Это официальная информация?
Нет. Статья основана на документации Apache Hive.
Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов.