有这么些记录,大概2000W条:
1909290281,aa,aa,,&aa.,aa,1909290281,11,13,8,,,tp2.sinaimg.cn/1909290281/50/0/1,0,,"2632861870,1728104535,1894638220,1774978073,1839047245,2033895032,1769871333,1909308537,1909363617"
由于导入hive后是根据逗号进行字段分割的,而双引号内的数据不应该给分割,因此需要对双引号内的逗号进行替换。
使用AWK脚本为:
BEGIN{
print "start weibo analyse!"
FS="\""
}
{
result=""
for(i=1;i<NF;i++){
if( i%2 == 0 ){
gsub(",",";",$i)
result=result"\""$i"\""
}else{
result=result$i
}
}
print result
}
EDN{
print "end weibo analyse!"
}
这样能正确处理数据,但是效率太差。