zoukankan      html  css  js  c++  java
  • hive之SQL

    提示:查看学习SQL主要通过官网

    输入hive.apache.org进入hive的官网。

    点击Hive Wiki  进入一个界面选择DDL或者DML选择你需要的进行语法查询

    一)、DDL:CREATE/DROP/ALTER/MSCK/SHOW/DESCRIBE 

    CREATE (DATABASE|SCHEMA2选一) [IF NOT EXISTS可有可无] database_name(必须存在
    [COMMENT database_comment]
    [LOCATION hdfs_path]  )
    [WITH DBPROPERTIES (property_name=property_value, ...)];

    1.CREATE DATABASE hive;  创建一个database  名字叫hive

    提问:hive这个库建立起来以后存在于哪里?如何查看?
    答:desc database hive;  查看hive的默认目录

    hdfs://hadoop001:9000/user/hive/warehouse/hive.db
    hdfs://hadoop001:9000: HDFS目录

    /user/hive/warehouse/:默认的hive存储在HDFS上的目录
    hive.metastore.warehouse.dir hive的元数据metastorede 它的一个数据仓库warehourse指向了(dir)

    Default Value: /user/hive/warehouse 一个默认目录
    Added In: Hive 0.2.0
    Location of default database for the warehouse.

    hive.db
    create database hive; hive是db的名称.db

    hive> desc database hive;
    OK
    hive hdfs://hadoop001:9000/user/hive/warehouse/hive.db hadoop USER

    hive> CREATE DATABASE hive2
    > location '/d6_hive/directory';  ----自己定义hive在HDFS上的位置
    OK
    Time taken: 0.034 seconds
    hive> desc database hive2;
    OK
    hive2 hdfs://hadoop001:9000/d6_hive/directory hadoop USER

    修改hdfs://hadoop001:9000/user/hive/warehouse/hive.db 参数的方法:

    修改hive参数的几种形式
    1) set hive.metastore.warehouse.dir;
    set key 取值
    set key=value 设置值


    局部 单session(当前窗口)
    2)hive-site.xml
    全局

    hive查看默认配置的方法:

    打开官网

    输入hive.apache.org进入hive的官网。

    点击Hive Wiki 进入一个界面找到以下红框的内容,hive配置属性。这个文件里能找到所有的hive的默认配置

     查看元数据的方法还有一种,hive是建立在hadoop上的数仓,mysql是存储元数据的地方。要查看hive在HDFS上上的相应目录,也可以去mysql里查看。DB_LOCATION_URI 字段对应着database的默认存储目录或者指定存储目录。NAME对应着database的名字。

    select * from dbs G;   G的作用是格式化一下。看起来更清晰。

    在执行 desc database hive 出现的信息是哪里来的 ,都是执行命令以后去元数据找来的。

    二、在HDFS上的的文件要想加上schema,必须知道行与行之间的分隔符和字段与字段之间的分隔符。

    行与行的分隔符是回车(建表语句中不用考虑,默认回车),字段与字段之间的分隔符多种多样。

    (row format/ file format
    两大分隔符:行与行 字段与字段之间的分隔符
    列分隔符:01
    file格式:行式 列式)

    三、

    DDL

    create   /drop   /alter    /truncate   /show  /describe

    DML

    load   /insert    /update    /delete   /merge  import   /export  explain plan

  • 相关阅读:
    Linux 虚拟机虚拟网卡问题导致无法连接问题
    使用 Load Balancer,Corosync,Pacemaker 搭建 Linux 高可用集群
    如何在 Linux 虚拟机上扩展根文件系统
    Linux 虚拟机中配置 GNOME + VNC
    在 Linux 中使用 Azure Premium 存储的基本优化指南
    如何为运行的 ARM Linux 启用 LAD2.3 版本的诊断扩展
    如何解决 Linux 虚拟机磁盘设备名不一致的问题
    Java 调用 Rest api 设置经典 Linux 虚拟机的实例启停
    CentOS: 将虚拟机迁移到 Azure (以阿里云为例)
    Linux 虚拟机的计划维护
  • 原文地址:https://www.cnblogs.com/xuziyu/p/10503095.html
Copyright © 2011-2022 走看看