美文网首页
<官网学大数据>Hive

<官网学大数据>Hive

作者: kangapp | 来源:发表于2020-03-15 10:54 被阅读0次
    Hive简介
    • Hive是简历在Hadoop HDFS上的数据仓库基础架构
    • Hive可以用来进行数据提取转化加载(ETL),通过sqoop加载数据
    • Hive定义了简单的sql查询语言Hql
    • Hive是SQL解析引擎,将sql语句转换成M/R Job在Hadoop执行
    • Hive的表其实就是HDFS文件和目录
    Hive的体系结构
    • Hive的元数据
      1. hive将元数据存储在数据库中(metastore),支持mysql、derby等数据库
      2. Hive中的元数据包括表的名字,表的列和分区及其属性(是否为外部表等),表的数据所在的目录等
    Hive管理方式
    环境搭建
    export HIVE_HOME=/home/kang/app/hive-1.1.0-cdh5.7.0
    export PATH=$PATH:$HIVE_HOME/bin
    

    安装和配置mysql
    hive-site.xml

    
    <configuration>
    
    <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    </property>
    
    <property>
      <name>javax.jdo.option.ConnectionDriverName</name>
      <value>com.mysql.jdbc.Driver</value>
    </property>
    
    <property>
      <name>javax.jdo.option.ConnectionUserName</name>
      <value>root</value>
    </property>
    
    <property>
      <name>javax.jdo.option.ConnectionPassword</name>
      <value>123456</value>
    </property>
    
    <property>
      <name>hive.hwi.listen.host</name>
      <value>0.0.0.0</value>
      <description>This is the host address the Hive Web Interface will listen on</description>
    </property>
     
    <property>
      <name>hive.hwi.listen.port</name>
      <value>9999</value>
      <description>This is the port the Hive Web Interface will listen on</description>
    </property>
     
    <property>
      <name>hive.hwi.war.file</name>
      <value>lib/hive-hwi-1.1.0.war</value>
      <description>This is the WAR file with the jsp content for Hive Web Interface</description>
    </property>
    
    </configuration>
    

    hive-env.sh

    export HADOOP_HOME=/home/kang/app/hadoop-2.6.0-cdh5.7.0
    export HIVE_CONF_DIR=/home/kang/app/hive-1.1.0-cdh5.7.0/conf
    
    Hive的数据类型

    https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types

    • 基本数据类型


      基本数据类型
    • 复杂数据类型


      复杂数据类型
    • 时间类型


      时间类型
    Hive的数据模型
    • 内部表


      内部表
      实例
    • 分区表


      分区表
      创建分区表
    • 外部表


      外部表
    Hive数据的导入
    • 使用load语句


      load
    • 使用sqoop
    Hive的数据查询
    • 简单查询
      查询所有表信息不执行MapReduce作业
      支持算术表达式
      若值为null,表达式则为null,可用函数nvl(列字段,null转换的值)
      null值查询不能使用=连接,用is连接


      查询语法
    • Fetch Task(简单查询不启动MapReduce作业)
      配置方式

    Fetch Task配置方式

    前两种只在当前session生效

    <name>hive.fetch.task.conversion</name>
    <value>more</value>

    • 使用排序


      根据第几列排序

      null排序升序排在前面

    • Hive的函数
    数学函数

    round() ---------------- 四舍五入
    。。。

    字符函数
    image.png
    收集函数
    收集函数
    类型转换函数
    类型转换函数
    日期函数

    内置函数

    条件函数
    条件函数
    聚合函数
    表生成函数

    相关文章

      网友评论

          本文标题:<官网学大数据>Hive

          本文链接:https://www.haomeiwen.com/subject/nxiokqtx.html