大数据开发之hive知识点总结

hive

一、认知

              数据库与数据仓库

                 数据库

                      mysql,oracle,sqlserver,DB2,sqlite,MDB

                 数据仓库

                      hive

                            是MR的客户端,不必要每台机器都安装部署

              特性

                 1、hive操作接口是采用SQL语法的,HQL

                 2、避免了写MapReduce的繁琐过程

              体系结构

                 1、client

                       终端命令行

                      JDBC,不常用,很麻烦

                 2、matastore

                      原本的数据集和字段名称以及数据信息之间的双射关系

                      我们目前是存在mysql中

                 3、serverce---hadoop

                      在操作hive之前,需要将hadoop的HDFS开启,YARN开启,MAPRED配置好

           mysql----metastore----双射,唯一映射

                 hive把拿到的数据通过SQL语句,转化为MR代码

二、hive的部署与安装

           1、解压hive到安装目录

           2、重命名配置文件

           3、hive-env.sh

           4、安装mysql

                 1)yum -y install mysql mysql-server mysql-devel

                 2)wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

                 3)rpm -ivh mysql-community-release-el7-5.noarch.rpm

                 4)yum -y install mysql-community-server

                 ps:如果使用离线绿色版本(免安装版本)需要手动初始化mysql数据库

           5、配置mysql

                 1)开启mysql服务systemctl start mysqld.service

                 2)设置root用户密码#mysqladmin -uroot password '123456'

                 3)为用户以及其它机器节点授权#grant all *.* to root@'hadoop001' identified by '123456';

                      grant:授权

                      all:所有权限

                      *.*:数据库名称.表名称

                      root:操作mysql的用户

                      @'':主机名

                      密码:123456

                 4)hive-site.xml

                      (1)javax.jdo.option.ConnectionURL

                            jdbc:mysql://hlh001:3306/hive?createDatabaseIfNotExist=true

                      (2)javax.jdo.option.ConnectionDriverName

                            com.mysql.jdbc.Driver

                      (3)javax.jdo.option.ConnectionUserName

                            root

                      (4)javax.jdo.option.ConnectionPassword

                            123

                 5)hive-log4j.properties

                      hive.log.dir=/opt/module/hive/logs

                 6)拷贝mysql-connector-java.jar驱动包到hive的lib目录下

           6、启动hive

                 bin/hive

           7、修改HDFS系统中关于hive的一些目录权限

                 /opt/module/hadoop/bin/hadoop fs -chmod 777 /tmp/

                 /opt/module/hadoop/bin/hadoop fs -chmod 777 /user/hive/warehouse

           8、显示数据库名称以及字段名称

                 是否在当前客户端中显示查询出来的数据的字段的名称hive.cli.print.header

                      true

                 是否在当前客户端中显示当前数据库名称hive.cli.print.current.db

                      true

三、基础操作

           1、创建数据库和表操作

                 创建数据库

                      hive> create database staff;

                 创建表

                      hive> create table t1(eid int, name string, sex string) row format delimited fields terminated by '\t';

           2、导入数据

                 从本地导入

                      load data local inpath '文件路径' into table;

                            select * from table

                            select name from table

                 从HDFS系统导入

你可能感兴趣的:(大数据,hive)