资源描述:
《java私塾:hive ql——深入浅出学hive》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、创建时间:2013-12-909:15:00内容来自:Java私塾Java私塾:HiveQL——深入浅出学Hive 目录:初始HiveHive安装与配置Hive内建操作符与函数开发HiveJDBChive参数Hive高级编程HiveQLHiveShell基本操作hive优化Hive体系结构Hive的原理 配套视频课程 第一部分:DDLDDL•建表•删除表•修改表结构•创建/删除视图•创建数据库•显示命令建表CREATE[EXTERNAL]TABLE[IFNOTEXISTS]table_name [(col_nameda
2、ta_type[COMMENTcol_comment],...)] [COMMENTtable_comment] [PARTITIONEDBY(col_namedata_type[COMMENTcol_comment],...)] [CLUSTEREDBY(col_name,col_name,...) [SORTEDBY(col_name[ASC
3、DESC],...)]INTOnum_bucketsBUCKETS] [ROWFORMATrow_format] [STOREDASfile_format] [L
4、OCATIONhdfs_path]•CREATETABLE创建一个指定名字的表。如果相同名字的表已经存在,则抛出异常;用户可以用IFNOTEXIST选项来忽略这个异常创建时间:2013-12-909:15:00内容来自:Java私塾•EXTERNAL关键字可以让用户创建一个外部表,在建表的同时指定一个指向实际数据的路径(LOCATION)•LIKE允许用户复制现有的表结构,但是不复制数据•COMMENT可以为表与字段增加描述 •ROWFORMAT DELIMITED[FIELDSTERMINATEDBYchar][C
5、OLLECTIONITEMSTERMINATEDBYchar] [MAPKEYSTERMINATEDBYchar][LINESTERMINATEDBYchar]
6、SERDEserde_name[WITHSERDEPROPERTIES(property_name=property_value,property_name=property_value,...)] 用户在建表的时候可以自定义SerDe或者使用自带的SerDe。如果没有指定ROWFORMAT或者ROWFORMATDELIMITED,
7、将会使用自带的SerDe。在建表的时候,用户还需要为表指定列,用户在指定表的列的同时也会指定自定义的SerDe,Hive通过SerDe确定表的具体的列的数据。•STOREDAS SEQUENCEFILE
8、TEXTFILE
9、RCFILE
10、INPUTFORMATinput_format_classnameOUTPUTFORMAT output_format_classname 如果文件数据是纯文本,可
11、以使用STOREDASTEXTFILE。如果数据需要压缩,使用STOREDASSEQUENCE。建立外部表CREATEEXTERNALTABLEpage_view(viewTimeINT,useridBIGINT, page_urlSTRING,referrer_urlSTRING, ipSTRINGCOMMENT'IPAddressoftheUser', countrySTRINGCOMMENT'countryoforigination') COMMENT'Thisisthestagingpagevi
12、ewtable' ROWFORMATDELIMITEDFIELDSTERMINATEDBY' 54' STOREDASTEXTFILE LOCATION'';建分区表CREATETABLEpar_table(viewTimeINT,useridBIGINT, page_urlSTRING,referrer_urlSTRING, ipSTRINGCOMMENT'IPAddressoftheUser') COMMENT'Thisisthepageviewtable' PARTITI
13、ONEDBY(dateSTRING,posSTRING)ROWFORMATDELIMITED‘t’ FIELDSTERMINATEDBY''STOREDASSEQUENCEFILE;创建时间:2013-12-909:15:00内容来自:Java私塾建Bucket表CREATETABLEpar_table(vi