加入收藏 | 设为首页 | 会员中心 | 我要投稿 四平站长网 (https://www.0434zz.com.cn/)- 云服务器、对象存储、基础存储、视频终端、数据应用!
当前位置: 首页 > 大数据 > 正文

你会Hive表的简单操作吗?

发布时间:2021-06-03 21:18:59 所属栏目:大数据 来源:互联网
导读:1. 创建表 create table语句遵从sql语法习惯,只不过Hive的语法更灵活。例如,可以定义表的数据文件存储位置,使用的存储格式等。 create table if not exists test.user1( name string comment name, salary float comment salary, address structcountry:s
1. 创建表
create table语句遵从sql语法习惯,只不过Hive的语法更灵活。例如,可以定义表的数据文件存储位置,使用的存储格式等。
create table if not exists test.user1( 
name string comment 'name', 
salary float comment 'salary', 
address struct<country:string, city:string> comment 'home address' 
comment 'description of the table' 
partitioned by (age int) 
row format delimited fields terminated by 't' 
stored as orc; 
没有指定external关键字,则为管理表,跟mysql一样,if not exists如果表存在则不做操作,否则则新建表。comment可以为其做注释,分区为age年龄,列之间分隔符是t,存储格式为列式存储orc,存储位置为默认位置,即参数hive.metastore.warehouse.dir(默认:/user/hive/warehouse)指定的hdfs目录。
2. 拷贝表
使用like可以拷贝一张跟原表结构一样的空表,里面是没有数据的。
create table if not exists test.user2 like test.user1; 
3. 查看表结构
通过desc [可选参数] tableName命令查看表结构,可以看出拷贝的表test.user1与原表test.user1的表结构是一样的。
hive> desc test.user2; 
OK 
name                    string                  name                 
salary                  float                   salary               
address                 struct<country:string,city:string>  home address         
age                     int                                          
 
# Partition Information          
# col_name                data_type               comment              
 
age                     int          
也可以加formatted,可以看到更加详细和冗长的输出信息。
hive> desc formatted test.user2; 
OK 
# col_name                data_type               comment              
 
name                    string                  name                 
salary                  float                   salary               
address                 struct<country:string,city:string>  home address         
 
# Partition Information          
# col_name                data_type               comment              
 
age                     int                                          
 
# Detailed Table Information          
Database:               test                      
Owner:                  hdfs                      
CreateTime:             Mon Dec 21 16:37:57 CST 2020      
LastAccessTime:         UNKNOWN                   
Retention:              0                         
Location:               hdfs://nameservice2/user/hive/warehouse/test.db/user2     
Table Type:             MANAGED_TABLE             
Table Parameters:          
    COLUMN_STATS_ACCURATE   {"BASIC_STATS":"true"} 
    numFiles                0                    
    numPartitions           0                    
    numRows                 0                    
    rawDataSize             0                    
    totalSize               0                    
    transient_lastDdlTime   1608539877           
 
# Storage Information          
SerDe Library:          org.apache.hadoop.hive.ql.io.orc.OrcSerde     
InputFormat:            org.apache.hadoop.hive.ql.io.orc.OrcInputFormat   
OutputFormat:           org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat      
Compressed:             No                        
Num Buckets:            -1                        
Bucket Columns:         []                        
Sort Columns:           []                        
Storage Desc Params:          
    field.delim             t                   
    serialization.format    t            

(编辑:四平站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读