• hive详解


    、hive:

    ——————————————————————————————

    ·hive解释

    hive是建立在hdfs之上,对数据操作分析的工具。hive存储数据结构(schema)在数据库中,处理的数据进入hdfs.

    ·hive结构

    hdfs:        存储真正的数据

    Meta store:元数据库:存储表结构(一般是mysql)

    Hive QL Peocess English:  hive查询处理器

    Execution English: 执行引擎(一般是mapreduce)

    user interfaces :   命令接口 (如web ui)

    ·hive流程

    大体流程如下:  

    1提交作业给驱动——>2.编译器编译——3>元数据库从mysql中查出结构——>4.5返回——>6交给执行引擎—

    ——>7执行作业(mapreduce运行)从hdfs查询——>8.9.10返回结果

    二、安装hive(这里把mysql数据库安装在本地)

    ________________________________________________________

    1.下载hive2.1-tar.gz
    2.tar开
      $>tar -xzvf hive-2.1.0.tar.gz -C /soft //tar开
      $>cd /soft/hive-2.1.0 //
      $>ln -s hive-2.1.0 hive //符号连接

    3.配置环境变量
    [/etc/profile]
      HIVE_HOME=/soft/hive
      PATH=...:$HIVE_HOME/bin

    4.验证hive安装成功
      $>hive --version

    5.配置hive,使用win10的mysql存放hive的元数据.
    a)复制mysql驱动程序到hive的lib目录下。
    ...
    b)配置hive-site.xml
    复制hive-default.xml.template为hive-site.xml
    修改连接信息为mysql链接地址,将${system:...字样替换成具体路径。
    [hive/conf/hive-site.xml]

    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>密码</value>
    <description>password to use against metastore database</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>你的用户名</value>
    <description>Username to use against metastore database</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://ip地址:3306/数据库名字</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
    </property>
    

      

    6)在msyql中创建存放hive信息的数据库
      mysql>create database hive2 ;

    7)初始化hive的元数据(表结构)到mysql中。
      $>cd /soft/hive/bin
      $>schematool -dbType mysql -initSchema
      注意主机防火墙会禁止端口,所以应该添加防火墙例外端口 

    windows添加防火墙例外端口方法

    进入防火墙选择高级设置

    入站规则设置
    1 选择 入站规则 然后 新建规则,选择 端口,然后下一步
    2 选择TCP 选择特定端口 然后输入端口,如有多个端口需要用逗号隔开了 例如: 3306
    3 选择允许连接
    4 选择配置文件
    5 输入规则名称 如:mysqlport

    出站规则设置
    1 选择出站规则 然后 新建规则,选择 端口,然后下一步
    2 选择TCP 选择特定端口 然后输入端口,如有多个端口需要用逗号隔开了 例如: 3306
    3 选择允许连接
    4 选择配置文件
    5 输入规则名称 如:mysqlport


  • 相关阅读:
    webpack4.x相关笔记整理
    vue原理探索--响应式系统
    git常用命令备忘
    小程序开发知识点及坑点总结
    无异常日志,就不能排查问题了???
    【从单体架构到分布式架构】(三)请求增多,单点变集群(2):Nginx
    【从单体架构到分布式架构】(二)请求增多,单点变集群(1):负载均衡
    【从单体架构到分布式架构】(一)万丈高楼平地起:环境准备
    一个接口查询关联了十几张表,响应速度太慢?那就提前把它们整合到一起
    docker基础:容器操作命令
  • 原文地址:https://www.cnblogs.com/du1269038969/p/9937028.html
Copyright © 2020-2023  润新知