Hive 中 SerDe 概述
<span style="font-family: verdana, sans-serif; font-size: 14px; line-height: 21px;">From: http://blog.csdn.net/dajuezhao/archive/2010/07/21/5753791.aspx一、背景
1、当进程在进行远程通信时,彼此可以发送各种类型的数据,无论是什么类型的数据都会以二进制序列的形式在网络上传送。发送方需要把对象转化为字节序列才可在网络上传输,称为对象序列化;接收方则需要把字节序列恢复为对象,称为对象的反序列化。
2、Hive的反序列化是对key/value反序列化成hive table的每个列的值。
3、Hive可以方便的将数据加载到表中而不需要对数据进行转换,这样在处理海量数据时可以节省大量的时间。
二、技术细节
<blockquote style="">1、SerDe是Serialize/Deserilize的简称,目的是用于序列化和反序列化。
2、用户在建表时可以用自定义的SerDe或使用Hive自带的SerDe,SerDe能为表指定列,且对列指定相应的数据。
CREATE TABLE table_name[(col_name data_type , ...)], ...)], ...)]INTO num_buckets BUCKETS]创建指定SerDe表时,使用row format row_format参数,例如:
页:
[1]