zoukankan      html  css  js  c++  java
  • Hive DDL ROW FORMAT

    HiveQL DDL语法规则包括

    • CREATE DATABASE/SCHEMA, TABLE, VIEW, FUNCTION, INDEX(创建 数据库/模式,表,视图,函数,索引)
    • DROP DATABASE/SCHEMA, TABLE, VIEW, INDEX(删除 数据库/模式,表,视图,索引)
    • TRUNCATE TABLE(清空 表)
    • ALTER DATABASE/SCHEMA, TABLE, VIEW(修改 数据库/模式,表,视图)
    • MSCK REPAIR TABLE (or ALTER TABLE RECOVER PARTITIONS)(MSCK修复表或ALTER TABLE恢复分区)
    • SHOW DATABASES/SCHEMAS, TABLES, TBLPROPERTIES, VIEWS, PARTITIONS, FUNCTIONS, INDEX[ES], COLUMNS, CREATE TABLE(查看)
    • DESCRIBE DATABASE/SCHEMA, table_name, view_name(查看 数据库/模式描述信息)

    创建表时需要指定数据切分格式,会用到ROW FORMAT关键字。下面是Hive官网关于ROW FORMAT的用法:

    下面通过一个例子说明数据之间分隔符用法。比如有两条数据:

    1,Lilei,book-tv-code,beijing:chaoyang-shanghai:pudong
    2,Hanmeimei,book-Lilei-code,beijing:haidian-shanghai:huangpu

    先看JAVA集合框架图,明确每个字段数据类型

    再看数据格式,指定分隔符

    每个字段之间由[ , ]分割----------FIELDS TERMINATED BY ','

    第二个字段是Array形式,元素与元素之间由[ - ]分割----------COLLECTION ITEMS TERMINATED BY '-'

    第三个字段是K-V形式,每组K-V对内部由[ : ]分割,每组K-V对之间由[ - ]分割----------MAP KEYS TERMINATED BY ':'

    每条数据之间由换行符分割(默认[ ]),如果是其它分割方式(比如[ ; ])----------LINES TERMINATED BY ';'

    完整建表语句

    create table psn (
    id int,
    name string,
    hobbies ARRAY <string>,
    address MAP <string, string>
    )
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY ','
    COLLECTION ITEMS TERMINATED BY '-'
    MAP KEYS TERMINATED BY ':'; 

    ~完~

  • 相关阅读:
    什么是 Visual VM?
    myeclipse svn 修改用户名和密码
    unix/linux共享内存应用与陷阱
    linux内存查看方式
    Linux下crontab命令的用法
    linux ftp命令参数全集
    XmlDataSource控件绑定GridView
    VC++发布Activex控件
    SqlServer数据库自定义Split()函数
    C和C++中的主要数据类型和字节大小
  • 原文地址:https://www.cnblogs.com/fuos/p/7283770.html
Copyright © 2011-2022 走看看