欢迎投稿

今日深度:

Hive部署,

Hive部署,


Linux MySQL Hadoop

1)Hadoop是什么
海量数据分布式的存储和计算框架
数据存储:HDFS: Hadoop Distributed File System
数据计算:YARN/MapReduce

IDE

2)Hadoop的访问方式
shell cli:
文件夹、文件的创建以及删除
移动、改名
下载、复制
查看
Java API:
Web UI: 50070 HUE
3)使用MapReduce来处理HDFS文件系统上的数据—真心麻烦

一个框架如果最终不能落地到使用SQL处理,
那么这个框架将不会是一个受欢迎的框架。

Hive – 若泽

产生背景
MapReduce编程不方便:开发、测试、需求变更
传统关系型数据库人员的需要
DBA:我就像使用sql一样的方式来处理分析大数据
= = > Hive
文件存放在HDFS之上的,那么如果你想使用SQL去处理它,需要一个什么前提?
结构化、文件映射成表格 ==> Schema 元数据信息(metastore)

Hive是什么: hive.apache.org
data warehouse
分布式存储:HDFS、S3、OSS
hdfs://xxxxxxx
s3://…

Facebook开源:解决海量结构化日志的数据 pv uv
构建在Hadoop之上的数据仓库
Hive定义了SQL语言:HQL (类SQL)
通常用于离线处理
SQL = = = = =Hive = = = = =MapReduce/Spark/Tez===>YARN
Hive on MapReduce
Hive on Spark
Hive on Tez

Hive发展历程
08/07 Facebook
05/13 0.11 Stinger Phase 1 ORC HiveServer2
10/13 0.12 Stinger Phase 2 ORC improvement
04/14 0.13 Stinger Phase 3 Tez and Vectorized query engine
11/14 0.14 Stinger.next Phase 1: Cost-based optimizer

为什么要使用Hive
1) SQL
2) Hadoop
3) MetaStore: Pig/Impala/Presto/SparkSQL共享元数据信息

部署架构
Hadoop分布式 集群
Hive 客户端

Hive与RDBMS的关系
SQL: Hive QL和SQL的关系
实时性
事务
分布式
数据量

Hive部署
下载:http://archive-primary.cloudera.com/cdh5/cdh/5/
在使用CDH版本的时候一定要注意:尾巴对准了
wget http://archive-primary.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz

解压:tar -zxvf hive-1.1.0-cdh5.7.0.tar.gz -C ~/app/

配置环境变量: ~/.bash_profile
export HIVE_HOME=/home/hadoop/app/hive-1.1.0-cdh5.7.0
export PATH=$ HIVE_HOME/bin:$PATH
生效: source ~/.bash_profile
(1)vi ~/.bash_profile,配置个人环境变量

Hive配置:$ HIVE_HOME/conf
hive-env.sh
HADOOP_HOME=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0

(1)先在conf目录下找到hive-env.sh.template,然后cp一份重新命名为hive-env.sh

(2)然后配置文件内容

hive-site.xml配置的就是MySQL的相关信息
(1)把hive-site.xml传到root用户,然后scp到hadoop用户下的指定目录

(2)修改文件内容,MySQL的用户名和密码

拷贝mysql驱动到$HIVE_HOME/lib
路径:/home/hadoop/app/hive-1.1.0-cdh5.7.0/lib
(1)把jar包传到root用户,然后scp到hadoop用户中的指定目录下

(2)在lib目录下查看jar包是否存在


javax.jdo.option.ConnectionURL
jdbc:mysql://localhost:3306/ruoze_d5?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8

javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword root 可能遇到的问题:mysql赋权

部署完成,启动Hive

MySQL中生成新的数据库

快速入门

create table ruoze_helloworld(id int,name string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’;

load data local inpath ‘/home/hadoop/data/helloworld.txt’ overwrite into table ruoze_helloworld;

alter database ruoze_d5 character set latin1;

bin:目录存放脚本
conf:配置文件
lib:依赖包

坑:hive-site.xml文件中配置信息是自己的MySQL用户名,密码也是。

www.htsjk.Com true http://www.htsjk.com/hive/40868.html NewsArticle Hive部署, Linux MySQL Hadoop 1)Hadoop是什么 海量数据分布式的存储和计算框架 数据存储:HDFS: Hadoop Distributed File System 数据计算:YARN/MapReduce IDE 2)Hadoop的访问方式 shell cli: 文件夹、文件...
相关文章
    暂无相关文章
评论暂时关闭