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版本信息
...

Hive笔记及配置的更多相关文章

  1. Hive学习笔记——基本配置及测试

    1.什么是Hive Hive 是建立在 Hadoop上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在Hadoop中的大规模数据的机 ...

  2. hadoop2.2.0 + hbase 0.94 + hive 0.12 配置记录

    一开始用hadoop2.2.0 + hbase 0.96 + hive 0.12 ,基本全部都配好了.只有在hive中查询hbase的表出错.以直报如下错误: java.io.IOException: ...

  3. 【转】hive简介安装 配置常见问题和例子

    原文来自:  http://blog.csdn.net/zhumin726/article/details/8027802 1 HIVE概述 Hive是基于Hadoop的一个数据仓库工具,可以将结构化 ...

  4. Hive的安装配置

    Hive的安装配置 Hive的安装配置 安装前准备 下载Hive版本1.2.1: 1.[root@iZ28gvqe4biZ ~]# wget http://mirror.bit.edu.cn/apac ...

  5. Hive安装与配置详解

    既然是详解,那么我们就不能只知道怎么安装hive了,下面从hive的基本说起,如果你了解了,那么请直接移步安装与配置 hive是什么 hive安装和配置 hive的测试 hive 这里简单说明一下,好 ...

  6. 《玩转Django2.0》读书笔记-Django配置信息

    <玩转Django2.0>读书笔记-Django配置信息 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 项目配置是根据实际开发需求从而对整个Web框架编写相应配置信息. ...

  7. [hive] hive 安装、配置

    一.hive安装 1.官网下载 1.2.2版本 http://apache.fayea.com/hive/hive-1.2.2/ 2. 解压,此处目录为 /opt/hadoop/hive-1.2.2 ...

  8. Hive安装与配置--- 基于MySQL元数据

    hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过 ...

  9. 【Hive一】Hive安装及配置

    Hive安装及配置 下载hive安装包 此处以hive-0.13.1-cdh5.3.6版本的为例,包名为:hive-0.13.1-cdh5.3.6.tar.gz 解压Hive到安装目录 $ tar - ...

随机推荐

  1. k8s记录-docker私有仓库

    docker pull registry docker run -d -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always ...

  2. Nginx配置自定义的403页面

    1.开启nginx的状态码,虚拟主机配置中加入下边一段 location /nginx_status{ stub_status on; access_log off; } 或着在nginx的http模 ...

  3. Codeforces 1029B. Creating the Contest 动态规划O(nlogn)解法 及 单调队列O(n)解法

    题目链接:http://codeforces.com/problemset/problem/1029/B 题目大意:从数组a中选出一些数组成数组b,要求 b[i+1]<=b[i]*2 . 一开始 ...

  4. 【error】OutOfRangeError (see above for traceback): RandomShuffleQueue

    前言 在使用tensorflow TFRecord的过程中,读取*.tfrecord文件时出现错误,本文解决这个错误. 错误描述: OutOfRangeError (see above , curre ...

  5. jquery weui 图片浏览器Photo Browser

    jquery weui 图片浏览器Photo Browser 如何使用? 对应组件地址:http://jqweui.com/extends#swiper 先说说业务场景:类似朋友圈这样的布局效果,点击 ...

  6. 【ARTS】01_47_左耳听风-201900930~201901006

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  7. 【GStreamer开发】GStreamer基础教程07——多线程和Pad的有效性

    目标 GStreamer会自动处理多线程这部分,但在有些情况下,你需要手动对线程做解耦.本教程会教你怎样才能做到这一点,另外也展示了Pad的有效性.主要内容包括: 如何针对部分的pipeline建立一 ...

  8. react-native 上拉加载

    import React, {Component} from 'react'; import {View, ScrollView, Text, Dimensions, Image} from 'rea ...

  9. jquery设置滚动条样式

    HTML结构 下面是该滚动条插件工作所必须的HTML结构: <div id="about" class="nano">     <div cl ...

  10. Image Perimeters

    Description 给出一张由"x"和"."组成的矩阵.每个"x"可以向上下左右及两个斜对角进行连通,请问由某个点开始的"x& ...