zoukankan      html  css  js  c++  java
  • hive RegexSerDe View

    EXTERNALkeyword它允许用户创建一个外部表。在表中的同时施工指定的路径中的实际数据(LOCATION)。Hive 创建内部表时。会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径,不正确数据的位置做不论什么改变。在删除表的时候,内部表的元数据和数据会被一起删除。而外部表仅仅删除元数据,不删除数据

    1.  LIKE 同意用户复制现有的表结构,可是不复制数据

    2.  hive中RegexSerDe的使用

    RegexSerDe是hive自带的一种序列化/反序列化的方式,主要用来处理正則表達式。

       CREATETABLE test_serde(

       c0string,

       c1string,

       c2string)

       ROWFORMAT

       SERDE'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'

       WITHSERDEPROPERTIES

       ('input.regex' = '([^ ]*) ([^ ]*) ([^ ]*)',

       'output.format.string'= '%1$s %2$s %3$s')

       STOREDAS TEXTFILE;

    3.  表名和列名不区分大写和小写

    4.       建立外部表指定数据存储路径

    Create externaltable exter_trl(

    Id int,

    Name string,

    Age int,

    Tel string

    Location ‘/user/data/trl/external’;

    )

    1、在导入数据到外部表。数据并没有移动到自己的数据仓库文件夹下,也就是说外部表中的数据并非由它自己来管理的!

    而表则不一样;

    2、在删除表的时候。Hive将会把属于表的元数据和数据所有删掉。而删除外部表的时候。Hive只删除外部表的元数据,数据是不会删除的。

      那么,应该怎样选择使用哪种表呢?在大多数情况没有太多的差别,因此选择仅仅是个人喜好的问题。

    可是作为一个经验,假设全部处理都须要由Hive完毕,那么你应该创建表,否则使用外部表.。

    5.按指定的分区载入数据

      Loaddata inpath

    '/user/data/clickstat_gp_fatdt0/0' OVERWRITEINTO TABLE c02_clickstat_fatdt1

      PARTITION(dt='20140820');

    5.      建表的同步指定hdfs的路劲

    CREATE EXTERNALTABLE page_view(viewTime INT, userid BIGINT,

    page_url STRING,referrer_url STRING,

    ip STRINGCOMMENT 'IP Address of the User',

    country STRINGCOMMENT 'country of origination')

    COMMENT 'This isthe staging page view table'

    ROW FORMATDELIMITED FIELDS TERMINATED BY '54'

    STORED ASTEXTFILE

    LOCATION'<hdfs_location>';

    6.      HIVE VIEW(视图降低复杂查询 )

    CREATE VIEW test_trlAS 

    SELECT * FROM t1JOIN t2 

    ON (t1.id=t2.id)WHERE t1.name='trl';  

    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    'live-server' 不是内部或外部命令,也不是可运行的程序 或批处理文件。(解决)
    Node.js安装及环境配置之Windows篇
    开发模式
    IOS13越狱后虚拟定位插件的推荐,relocate
    python,向列表中追加字典,被最后的值覆盖的问题解决办法
    博客园cnblog使用百度统计等站长统计的方法
    IOS解锁哔哩哔哩大会员免费版越狱插件的cydia源
    filza无法安装deb(filza command not found)的解决办法
    Mac 中dock栏图标中文乱码英文正常的解决办法
    关于NVIDIA显卡控制面板中“调整桌面颜色设置”在重启后设置失效的处理方法
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4847350.html
Copyright © 2011-2022 走看看