无标题文章

Hive 学习笔记

学习笔记

Hive 简介

Hive 是建立在 Hadoop 上的数据仓库基础构架,可以用来进行数据提取转化加载。

Hive 架构

  • 用户接口:CLI, Client, WUI
  • 通常存储在 mysql
  • 解释器、编译器、优化器、执行器
  • Hadoop:用 HDFS 进行存储,用 MapReduce 进行计算

Hive 特点

  • 不支持对数据的改写和添加
  • 不会对数据中的某些 key 建立索引,需要扫描整张表
  • 数据规模大到超过数据库的处理能力的时候,Hive 的并行计算能体现出优势

可以调用 python

CREATETABLE u_data_new (
userid INT,
movieid INT,
rating INT,
weekday INT)
ROWFORMAT DELIMITED
FIELDSTERMINATED BY ‘\t’;
add FILEweekday_mapper.py;
INSERTOVERWRITE TABLE u_data_new

join 时,每次map/reduce 任务的逻辑

reducer 会缓存 join 序列中除了最后一个表的所有表的记录,再通过最后一个表将结果序列化到文件系统。这一实现有助于在 reduce 端减少内存的使用量。实践中,应该把最大的那个表写在最后(否则会因为缓存浪费大量内存)

你可能感兴趣的:(无标题文章)