草庐IT

horizontal_filter

全部标签

hadoop - 我可以在 hadoop - PIG 中使用 "filter by' 和 Map 结构吗?

前提是有一个像,,,这样的mapmap.文本[key1#v1][key2#v2][key3#v3]然后,如果我尝试查找“key2的值​​”,A=load‘map.text’as(M:map[]);B=foreachAgenerateM#'key2';C=filterBby$0!='';//togetridofemptyvaluelike(),(),().dumpC;还有其他方法可以找到key2吗?仅使用“过滤依据”。谢谢你。 最佳答案 不需要GENERATE一个字段,然后在FILTER中使用它;您可以将其包含在FILTER语句中,开

java - 将多个参数传递给 Pig Filter UDF

我是Pig脚本的新手。我想将多个参数传递给Pig过滤器UDF,但出现错误“无效的标量投影:需要从关系中投影列才能将其用作标量”我正在执行以下步骤。input=load'....';dumpinput;/*workingabletoseedata*/output=FILTERinputbynotFilterUDF(input,val1,val2);这没有用。所以我试着跟随。input=load'......';dumpinput;/*workingabletoseedata*/dataWithVal=FOREACHinputGENERATE$0,$1,val1,val2;dumpdata

filter - pig 中的过滤器匹配太多

我有一个过滤关键字列表(大约1000个),我需要使用这个列表过滤pig中的一个关系字段。最初,我将这些关键字声明为:%declarep1'.keyword1.';.......%declarep1000'.keyword1000.';我然后像这样进行过滤:Filtered=FITLERSRCBY(not$0matches'$p1')and(not$0matches'$p2')and......(not$0matches'$p1000');DUMP过滤;假设我的源关系在SRC中,我需要在第一个字段(即$0)上应用过滤。如果我将过滤器的数量减少到100-200,它工作正常。但随着过滤器数量

hadoop - Apache pig : filter based on tupple member content

我正在学习ApachePig,在实现我的愿望时遇到了问题。我有这个对象(在执行GROUPBY之后):MLSET_1:{groupchararray,MLSET:{(key:chararray,text:chararray)}}我只想在某个模式(PATTERN_A)出现在文本中并且另一个模式(PATTERN_B)未出现在一个键的文本字段中时才生成key。我知道我可以使用MLSET.text获取特定键的所有文本值的元组,但是关于如何从元组中筛选项目列表,我仍然遇到同样的问题。这是一个例子:(key_A,{(key_A,start),(key_A,stop),(key_A,unknown),

hadoop - Apache pig : Easier way to filter by a bunch of values from the same field

假设我想根据同一字段中的值选择数据子集。现在我必须做这样的事情TestLocationsResults=FILTERSalesDataby(StoreId=='17'orStoreId=='85'orStoreId=='12'orStoreId=='45'orStoreId=='26'orStoreId=='75'orStoreId=='13')在SQL中,我们可以简单地这样做:SELECT*FROMSalesDatawhereStoreIDIN(17,12,85,45,26,75,13)Pig中是否有我缺少的类似快捷方式? 最佳答案

filter - 如何在 HBase 中获取最大行键?

如何获取HBase表中的最大rowkey?我有一个包含两行的表格:TT-0001column=cf:col-1,timestamp=1341218075789,value=abcTT-0002column=cf:col-1,timestamp=1341218075789,value=abc我想获取row2(rowkey的最大值)。我如何在Hbase中执行此操作? 最佳答案 使用你选择的行键,你可以简单地返回你的表的“最后”行并打印出行键(因为我假设你只是增加“TT-”后面的数字)。您还可以使用KeyOnlyFilter这将发出值,您

exception - PIG (v0.10.0) FILTER 操作期间异常 : java. lang.Integer cannot be cast to java.lang.String

这是我的(看似微不足道的)PIG脚本,后面是它生成的异常:raw_logs=LOAD'./Apache-WebLog-Samples.d/access_log.txt'USINGTextLoader()AS(line:chararray);logs=FOREACHraw_logsGENERATEFLATTEN(REGEX_EXTRACT_ALL(line,'^(\\S+)\\s+(\\S+)\\s+(\\S+)\\s+\\[([\\w:/]+\\s[+\\-]\\d{4})\\]\\s+"(..*)"\\s+(\\S+)\\s+(\\S+)'))AS(remoteAddr:charar

hadoop - pig : filtering out empty string

我正在尝试从我的数据中过滤掉NULL和空字符串data_filtered=FILTERraw_data byCOLUMN_NAMEisnotnullandCOLUMN_NAME!='';当我运行它时,出现以下错误:ERRORorg.apache.pig.tools.grunt.Grunt-ERROR1200:Unexpectedcharacter' '如何解决此错误并过滤掉NULLS和空白字符串? 最佳答案 可以使用TRIM函数过滤空格data_filtered=FILTERraw_databy(COLUMN_NAMEisnotnu

hadoop - pig 镀金 : filtering records based on values in bag

我是Piglatin的新手,我有一个看起来像这样的数据文件(消息、电子邮件、用户session、垃圾邮件类型)为了简单起见,我只使用了垃圾邮件/非垃圾邮件——这个字段的值通常是大约100种不同的变体message1user1@email12345spammessage2user1@email12345spammessage3user1@email12345not-spammessage10user2@email90879not-spammessage11user2@email90879not-spam如果来自一个用户的任何一条消息被标记为垃圾邮件,我只需要删除/过滤他的所有消息..所以

hadoop - CDH4 Hbase 使用 Pig ERROR 2998 java.lang.NoClassDefFoundError : org/apache/hadoop/hbase/filter/Filter

我在伪分布式模式下使用CDH4,我在同时使用HBase和Pig时遇到了一些问题(但两者都可以单独工作)。我正在逐步遵循这个不错的教程:http://blog.whitepages.com/2011/10/27/hbase-storage-and-pig/所以我的Pig脚本看起来像这样register/usr/lib/zookeeper/zookeeper-3.4.3-cdh4.1.2.jarregister/usr/lib/hbase/hbase-0.92.1-cdh4.1.2-security.jarregister/usr/lib/hbase/lib/guava-11.0.2.ja