大数据工具篇之Hive与MySQL整合完整教程
一、引言
Hive元数据存储可以放到RDBMS数据库中,本文以Hive与MySQL数据库的整合为目标,详细说明Hive与MySQL的整合方法。
二、安装驱动
MySQL最新的Java驱动版本为:mysql-connector-java-5.1.28-bin.jar,下载后拷贝到:Hive/Lib目录。
三、安装MySQL
3.1 版本
RHEL5+mysql-5.5.35-1.i386.rpm
3.2 顺序
MySQL-shared-compat-5.5.35-1.rhel15.i386.rpm
MySQL-server-5.5.35-1.rhel5.i386.rpm
MySQL-client-5.5.35-1.rhel5.i386.rpm
四、配置文件
修改Hive配置文件Hive-site.xml,修改后的结果如下所示:
1 <property> 2 <name>javax.jdo.option.ConnectionURL</name> 3 <value>jdbc:mysql://localhost:3306/hivedb?characterEncoding=UTF-8</value> 4 <description>JDBC connect string for a JDBC metastore</description> 5 </property> 6 7 <property> 8 <name>javax.jdo.option.ConnectionDriverName</name> 9 <value>com.mysql.jdbc.Driver</value> 10 <description>Driver class name for a JDBC metastore</description> 11 </property> 12 13 <property> 14 <name>javax.jdo.PersistenceManagerFactoryClass</name> 15 <value>org.datanucleus.jdo.JDOPersistenceManagerFactory</value> 16 <description>class implementing the jdo persistence</description> 17 </property> 18 19 <property> 20 <name>javax.jdo.option.DetachAllOnCommit</name> 21 <value>true</value> 22 <description>detaches all objects from session so that they can be used after transaction is committed</description> 23 </property> 24 25 <property> 26 <name>javax.jdo.option.NonTransactionalRead</name> 27 <value>true</value> 28 <description>reads outside of transactions</description> 29 </property> 30 31 <property> 32 <name>javax.jdo.option.ConnectionUserName</name> 33 <value>root</value> 34 <description>username to use against metastore database</description> 35 </property> 36 37 <property> 38 <name>javax.jdo.option.ConnectionPassword</name> 39 <value>root</value> 40 <description>password to use against metastore database</description> 41 </property>
五、结果展示
安装完成以后,通过访问mysql客户端,可以用来验证是否安装成功。注意与普通关系型数据创建表格后的区别。
mysql>show tables;
1 +----------------+ 2 | Tables_in_hive | 3 +----------------+ 4 | BUCKETING_COLS | 5 | COLUMNS | 6 | DBS | 7 | PARTITION_KEYS | 8 | SDS | 9 | SD_PARAMS | 10 | SEQUENCE_TABLE | 11 | SERDES | 12 | SERDE_PARAMS | 13 | SORT_COLS | 14 | TABLE_PARAMS | 15 | TBLS | 16 +----------------+
六、注意事项
曾经有人单独找我咨询过这个问题:为何无法在Hive中指定使用哪个MySQL数据库?这里面有一个需要说明的地方是Hive的数据库的概念不同于RDBMS数据库,MySQL数据库的指定是基于配置文件的,但是Hive的数据库只是一个命名空间号,类似分组的概念。hive中的数据库可以在使用MySQL数据库中,通过Select * from DBS查看到。
作者:张子良
出处:http://www.cnblogs.com/hadoopdev
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
基于分布式流计算平台(storm)的CGI采集与清理系统
博文作者:雕哥 发布日期:2014-01-09 阅读次数:56 博文内容: CGI好比Web漏洞扫描器的眼睛,只有CGI更全更准,Web漏洞扫描器才能更好的“看到”漏洞,为业务的Web安全保驾护航。本文简单介绍了基于分布式流计算平台Storm的海量CGI采集去重系统——Storm-Cgi。 1、开源分布式流计算平台Storm简介 Storm是一个由Twitter公司开源的与Hadoop并驾齐驱的分布式,实时流计算系统。可以简单、可靠的处理大量的数据流。 1.1、Storm系统的主要特点 a、简单的编程模型。类似于MapReduce降低了并行批处理复杂性,Storm降低了进行实时处理的复杂性。 b、可以使用各种编程语言。你可以在Storm之上使用各种编程语言。默认支持Clojure、Java、Ruby和Python。要增加对其他语言的支持,只需实现一个简单的Storm通信协议即可。 c、容错性。Storm会管理工作进程和节点的故障。 d、水平扩展。计算是在多个线程、进程和服务器之间并行进行的。 e、可靠的消息处理。Storm保证每个消息至少能得到一次完整处理。任务失败时,它会负责从消息...
- 下一篇
ElasticSearch查询 第三篇:词条查询
《ElasticSearch查询》目录导航: ElasticSearch查询 第一篇:搜索API ElasticSearch查询 第二篇:文档更新 ElasticSearch查询 第三篇:词条查询 ElasticSearch查询 第四篇:匹配查询(Match) ElasticSearch查询 第五篇:布尔查询 字符串的完全匹配是指字符的大小写,字符的数量和位置都是相同的,词条(term)查询使用字符的完全匹配方式进行文本搜索,词条查询不会分析(analyze)查询字符串,给定的字段必须完全匹配词条查询中指定的字符串。由于词条查询的字符串是未经分析(analyzed)的词条,因此,词条查询经常用于结构化的数据,例如,数值,日期等,当用于文本搜索时,最好在索引映射中设置字符串字段不被索引,也就是说,设置index属性为not_analyzed,否则,只能对该字段进行单词条搜索,也可以使用多字段(fields)属性,定义一个不被分析的字段,原始字段用于全文搜索,而多字段用于词条搜索: "properties": { "title":{ "type":"string","index":"an...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS关闭SELinux安全模块
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Docker使用Oracle官方镜像安装(12C,18C,19C)