问题描述
hive 中有一个普通的表,例如pageads ,记录如下
+-----------------+--------------------+
| pageads.pageid | pageads.adid_list |
+-----------------+--------------------+
| front_page | ["1","2","3"] |
| contact_page | ["3","4","5"] |
| detail_page | [] |
+-----------------+--------------------+
现在创建另一个相同的表,只是存储为 orc
create table pageAds_orc(pageid STRING,adid_list Array<string>) stored as orc TBLPROPERTIES ('transactional'='true');
然后将数据从 pageads 复制到 pageAds_orc
insert into pageAds_orc select * from pageAds;
但空数组转换为非空数组,[] ==> [""]
+---------------------+------------------------+
| pageads_ocr.pageid | pageads_ocr.adid_list |
+---------------------+------------------------+
| front_page | ["1","3"] |
| contact_page | ["3","5"] |
| detail_page | [""] |
+---------------------+------------------------+
为什么会这样?怎么让它原样?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)