zoukankan      html  css  js  c++  java
  • Hive 基本操作 DDL

    • 数据类型

       

    • 要求:字段的类型和顺序要和结构化文件保持一致 hive会尝试转换 不保证转换成功 如果成功就显示 如果失败就显示null
    1. hive除了支持sql类型 还支持java类型 大小写不敏感
    2. hive除了支持基本类型 还支持复合类型(map array) 针对复合类型要跟分隔符指定有关
    • hive读取数据映射的机制

       

    1. 首先调用Inputformat进行读取数据,默认TextInputFormat(一行一行读)
    2. 然后调用SerDe类进行数据切割,默认LazySimpleSerDe根据指定分隔符进行数据切割

    分割符指定:

    语法格式:

    ROW FORMAT DELIMITED | SERDE
    
    ROW FORMAT : 表明开始指定分隔符
    DELIMITED : 使用内置默认的类来进行数据切割 默认LazySimpleSerDe
    SERDE :表明使用其他的类来进行数据切割
     
     
     
    x
     
     
     
     
     
    1
    ROW FORMAT DELIMITED | SERDE
    2
    
    
    3
    ROW FORMAT : 表明开始指定分隔符
    4
    DELIMITED : 使用内置默认的类来进行数据切割 默认LazySimpleSerDe
    5
    SERDE :表明使用其他的类来进行数据切割
     
     
    [FIELDS TERMINATED BY char]  指定字段之间的分隔符
    [COLLECTION ITEMS TERMINATED BY char] 指定集合元素之间分隔符
    [MAP KEYS TERMINATED BY char]  指定map kv之间的分隔符
    [LINES TERMINATED BY char] |  指定换行符
    
     
     
     
     
     
     
     
     
     
    1
    [FIELDS TERMINATED BY char]  指定字段之间的分隔符
    2
    [COLLECTION ITEMS TERMINATED BY char] 指定集合元素之间分隔符
    3
    [MAP KEYS TERMINATED BY char]  指定map kv之间的分隔符
    4
    [LINES TERMINATED BY char] |  指定换行符
    
     
     

    日常命令:

    show tables;
    显示当前数据库所有表
    show databases |schemas;
    显示所有数据库
    show partitions table_name;
    显示表分区信息,不是分区表执行报错
    desc formatted table_name;
    查看表信息(格式化美观)
     
     
     
    x
     
     
     
     
     
    1
    show tables;
    2
    显示当前数据库所有表
    3
    show databases |schemas;
    4
    显示所有数据库
    5
    show partitions table_name;
    6
    显示表分区信息,不是分区表执行报错
    7
    desc formatted table_name;
    8
    查看表信息(格式化美观)
     
     

    hive错误的分类:

    Error while compiling statement    编译期间的错误 sql语法错误 
    Error while processing statement   执行期间的错误  逻辑思维的错误 sql语法层面没问题
     
     
     
    1
     
     
     
     
     
    1
    Error while compiling statement    编译期间的错误 sql语法错误 
    2
    Error while processing statement   执行期间的错误  逻辑思维的错误 sql语法层面没问题
     
     
     



  • 相关阅读:
    SQL/LINQ/Lamda 写法[转发]
    MVC Linq动态排序
    在webBrowser1.Navigate(url)中设置Cookie的注意点
    Bootstrap系列 -- 15. 下拉选择框select【转发】
    js输出指定n位数的随机数的随机整数方法【转发】
    C#时间戳转换[转发]
    gdb 多线程调试
    linux 的终端字体色和背景色的修改方法(三)
    linux 的终端字体色和背景色的修改方法(二)
    linux 的终端字体色和背景色的修改方法(一)
  • 原文地址:https://www.cnblogs.com/TiePiHeTao/p/3e8298051c29ac54ff73e48f47cc74ba.html
Copyright © 2011-2022 走看看