zoukankan      html  css  js  c++  java
  • Hive笔记及配置

    Hive

    基于Hadoop的数据仓库工具;

    将结构化的数据文件,映射为一张表,并提供类SQL查询功能;

    本质:将HQL转化为MapReduce程序;

    • Hive处理的数据存储在HDFS;

    • Hive分析数据底层的默认实现是MapReduce;

    • 执行程序是在Yarn上;

    特点

    1. Hive执行延迟高,适用于对实时性要求不高的场景;优势在于处理大数据,不适合处理小数据

    2. (MR)不适合迭代式运算,不适合数据挖掘;

    3. (MR)效率低;

    4. 调优困难,粒度太粗;

    5. 作为数据仓库的Hive,是读多写少,基本不修改;

    6. 没有索引,查询数据,要暴力扫描所有的数据(分区表可以减少搜索范围),延迟较高(主要由于MapReduce的框架本身延迟较高);

    Hive配置

    准备
    1. hive-site.xml

      <?xml version="1.0" encoding="UTF-8" standalone="no"?>
      <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
      <configuration>
      <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://master:3306/metastore?createDatabaseIfNotExist=true</value>
        <description>metastore地址</description>
      </property>
      <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
        <description>Driver name</description>
      </property>
      <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>whr</value>
        <description>username</description>
      </property>
      <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>123456</value>
        <description>password</description>
      </property>
      <property>
        <name>hive.cli.print.header</name>
        <value>true</value>
      </property>
      <property>
        <name>hive.cli.print.current.db</name>
        <value>true</value>
      <!--交互界面显示数据库名-->
      </property>
      </configuration>
    2. hive.env.sh

      # 添加两个配置
      HADOOP_HOME=/home/whr/workbench/hadoop
      export HIVE_CONF_DIR=/home/whr/workbench/hive/conf
    3. 初始化,也可以先创建数据库,这里有点简化了mysql的操作,mysql中的数据库以及用户权限要配置好,不然会初始化失败:

      schematool -dbType mysql -initSchema
    元数据

    将derby元数据,放进mysql;

    在mysql的hivedb中存在很多张表,记录着元数据代表着各种信息:

    COLUMNS_V2  # 记录着列的信息
    TBLS       # 记录着已创建的表名以及创建时间,OWNER...
    VERSION     # hive版本信息
    ...

     

  • 相关阅读:
    linq
    存储过程动态显示top条数
    js正则表达式
    WebClient异步下载文件
    C++ socket编程基础(ZT)
    Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令(转载)
    C#获取各种格式的系统时间
    C++中对sprintf()函数的说明(转)
    史上最全前端面试题(含答案)B篇
    常用正则表达式
  • 原文地址:https://www.cnblogs.com/mussessein/p/11612201.html
Copyright © 2011-2022 走看看