zoukankan      html  css  js  c++  java
  • hive的概述和数据类型

    一、Hive概述

      1.Hive简介

      Hive数据仓库软件有助于使用SQL读取、编写和管理驻留在分布式存储中的大型数据集。提供了命令行工具和JDBC驱动程序以将用户连接到Hive。

      Hive可以将SQL语句自动转化为Mapreduce程序,节省了手写框架的困难。

      2.Hive优缺点

      优点:1)操作接口采用了SQL,避免了首先MR程序,简化开发,降低学习成本;

         2)Hive依赖于HDFS做存储,是HDFS上的工具;

         3)Hive虽然使用SQL,但是他能处理大规模的数据;

         4)Hive支持自定义函数。

      缺点:1)Hive执行延迟较高,大多适用于实时性不高的场景或用于处理历史数据;

         2)Hive的SQL表达能力有限,有些复杂场景还需要MR程序;

         3)hive效率低,优化较难。

    二、Hive架构

      Hive提供了一下了接口:hive shell、JDBC/ODBC

      Hive的工作流程:

        1.客户端可以通过多种接口来使用hvie,比如cli(命令行)、jdbc(java);

        2.比如使用命令行select count(*) from user调用SQL

        客户端回去Meta元数据中调用MySQL的数据(hive默认数据库是derby,我们可以修改指定为MySQL);

        3.从Meta获取数据库数据后,命令行和数据一次传入SQL Parser解析器、Physical编译器、Query优化器、Execution执行器;

        4.最后对生成的MR程序进行运算,返回结果。

    三、Hive中的数据类型

    Java数据类型 Hive数据类型 类型长度
    byte tinyint 1byte
    short smallint 2byte
    int int 4byte
    long bigint 8byte
    float float 单精度浮点数
    double double 双精度浮点数
    string string 字符串
      timestamp 时间类型
      binary 字节数组
  • 相关阅读:
    Enum和ViewState的相互转换
    【FAQ】「この Web ページがクリップボードへアクセスするのを許可しますか?」というダイアログボックスが表示される
    读取系统联系人
    二维码的生成
    android两种基本联网方式与一种第三方开源项目的使用
    读取系统短信息
    给FLASH做外部超链接
    stdafx.h
    编写程序,输出用户输入的两个数中的较大者。
    C++中的虚函数(转)
  • 原文地址:https://www.cnblogs.com/HelloBigTable/p/10675258.html
Copyright © 2011-2022 走看看