我正在使用Cloudera-quickstat5.4。我有一个文件,每一行都有数据,例如:323.81.303.680--[25/Oct/2011:01:41:00-0500]"GET/download/download6.zipHTTP/1.1"2000"-""Mozilla/5.0(Windows;U;WindowsNT5.1;en-US;rv:1.9.0.19)Gecko/2010031422Firefox/3.0.19"在apachepig中,我使用的脚本如下:A=LOAD'weblog.txt'usingTextLoader()as(line:chararray);B=FOR
我需要从配置单元中的一个字段中删除美元符号和大括号。示例数据:$210.53$210.53($390.53)($210.53)问题是有些记录有大括号,有些则没有。以下是我想出的语法:selectREGEXP_REPLACE(amount,'\(\$|\)','')asamountfromtablewhereid=1234;输出:$210.53$210.53390.53210.53此语法不会从没有大括号的记录中删除美元符号。有人可以指导我吗? 最佳答案 如果您想从字段中删除a)美元符号和b)括号,您需要编写涵盖这两种情况的正则表达式。
在hue-hive接口(interface)中使用文件创建表时,我们必须指定一个分隔符。(制表符、空格、逗号等)。但是我的文件由一个或多个空格分隔。如何指定分隔符以一个或多个空格分隔。 最佳答案 您可以通过这种方式使用正则表达式作为分隔符来创建表格:数据,把数据放到hdfs中1234abcd创建表://grammarforcreatetableCREATETABLEtest1(astring,bstring,cstring,dstring)ROWFORMATSERDE'org.apache.hadoop.hive.contrib.s
我正在将S3中的日志文件加载到在EMR上运行的Hive中,但在查看数据时我得到了所有NULL...我创建的表是这样的:createexternaltablecoglogs(HostIDstring,ProcessIDstring,Timestring,TimeZoneOffsetstring,SessionIDstring,RequestIDstring,SubRequestIDstring,StepIDstring,Threadstring,Componentstring,BuildNumberstring,Levelstring,Loggerstring,Operationstri
我有字符串列,我想要第一个分号后的数据列数据:Options;list:direct&ACFs:Sharemarket我希望输出为list:direct&ACFs:股票市场我试过这个选项选择(regexp_extract(property,'^(?:([^;]*)\;?){2}',1))结果输出为list:direct&如何在第一个分号之后填充完整的字符串,就像我的输出一样list:direct&ACFs:股票市场有人能帮帮我吗? 最佳答案 你可以试试这个selectregexp_extract('Options;list;d
我正在尝试配置一个从.csv或.xl3读取的水槽代理。文件示例:ClientAClientBStart-timeEnd-timeDurationStatus358625153695845216/01/201716/01/201710good324569882258369416/01/201716/01/201705good359684783698572416/01/201716/01/2017324569882258369416/01/201716/01/201701good我希望代理逐行过滤文件。如果Duration不为空,则事件将发送到hdfs/usr/admin/Good_Cal
我正在尝试为具有以下格式的日志文件创建一个Hive表。日志文件:#Software:1#Version:1#Start-Date:xx#Date:xx#Fields:datetimetime-takenc-ipcs-usernamecs-auth-groupx-exception-idsc-filter-resultcs-categoriescs(Referer)sc-statuss-actioncs-methodrs(Content-Type)cs-uri-schemecs-hostcs-uri-portcs-uri-pathcs-uri-querycs-uri-extensionc
我需要使用regex_extract从列中的字符串中提取数字。我在外部表上使用Impala。我已经检查了正则表达式,为了测试它,我还使用了regexp_like和regexp_replace。他们两个都工作得很完美。这里是查询:selectsucursal,regexp_like(sucursal,'^[0-9]{1,3}')asmatch,regexp_extract(sucursal,'^[0-9]{1,3}',1)asCodSucusal,regexp_replace(sucursal,'^[0-9]{1,3}','lala')asRepCodSucusalfromjdv.stg
我有一个如下所述的csv文件。VTS,51,0071,9739965515,NM,GP,INF01,V,19,072219,291014,0000.0000,N,00000.0000,E,07AEVTS,01,0097,9739965515,SP,GP,18,072253,V,0000.0000,N,00000.0000,E,0.0,0.0,291014,0000,00,4000,11,999,169,B205VTS,51,0071,9739965515,NM,GP,INF01,V,18,072311,291014,0000.0000,N,00000.0000,E,C24EVTS,01
输入文件如下eno::ename::dept::sal101::emp1::comp1::2800000201::emp2::comp2::2800000301::emp3::comp3::3400000401::emp4::comp4::3600000501::emp5::comp5::400000>createtableemp(enamestring,edeptstring)>rowformatserde'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'>WITHSERDEPROPERTIES(>"input.regex"="^([