草庐IT

input-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

java - 配置单元顶点失败 : killed/failed due to:ROOT_INPUT_INIT_FAILURE Caused by: java. lang.NullPointerException

我正在查询一个表,一个简单的计数(*)并收到以下错误:Vertexfailed,vertexName=Map1,vertexId=vertex_1486982569467_0809_3_00,diagnostics=[Vertexvertex_1486982569467_0809_3_00[Map1]killed/faileddueto:ROOT_INPUT_INIT_FAILURE,VertexInput:table_nameinitializerfailed,vertex=vertex_1486982569467_0809_3_00[Map1],java.lang.RuntimeE

arrays - 配置单元 : ParseException line 3:23 cannot recognize input near 'from'

我试图创建这个表:createtabletmp_test(id_string,myelementarray>)STOREDASPARQUETLOCATION'/donne/tmp_test'我有这个错误:编译语句时出错:失败:ParseException行3:23无法识别列规范中“来自”“:”“字符串”附近的输入。我如何转义单词“from”,因为我必须使用这个词?谢谢你的帮助 最佳答案 FROM是Hive中的保留关键字。使用反引号(`)来引用它,createtabletmp_test(id_string,myelementarray

hadoop - Druid 批量索引 inputSpec 类型粒度,错误为 "no input paths specified in job"

我正在按照此处编写的说明进行操作:http://druid.io/docs/0.9.2/ingestion/batch-ingestion.html(滚动到“InputSpecspecification”,寻找“granularity”)。我的索引任务JSON中有:"inputSpec":{"type":"granularity","dataGranularity":"DAY","inputPath":"hdfs://hadoop:9000/druid/events/interview","filePattern":".*","pathFormat":"'y'=yyyy/'m'=MM/

sql - 失败 : ParseException line 1:36 cannot recognize input near '1987'

我正在尝试用它在Hive中创建一个外部表CREATEEXTERNALTABLEIFNOTEXISTS1987(YEARINT,MONTHINT,DAYOFMONTHINT,DAYOFWEEKINT,DEPTIMEINT,CRSINT,ARRTIMETIME,CARRIERSTRING,FLIGHTNUMINT,TAILNUMSTRING,ACTUALELAPSEDINT,CRSELAPSEDINT,AIRTIMEINT,ARRDELAYINT,DEPDELAYINT,ORIGINSTRING,DESTSTRING,DISTANCEINT,TAXIININT,TAXIOUTINT,CAN

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 - Airflow 失败 : ParseException line 2:0 cannot recognize input near

我正在尝试在Airflow上运行测试任务,但我不断收到以下错误:FAILED:ParseException2:0cannotrecognizeinputnear'create_import_table_fct_latest_values''.''hql'这是我的AirflowDag文件:importairflowfromdatetimeimportdatetime,timedeltafromairflow.operators.hive_operatorimportHiveOperatorfromairflow.modelsimportDAGargs={'owner':'raul','s

Hadoop MapReduce : Is it possible to only use a fraction of the input data as the input to a MR job?

我的输入数据的关键类是WritableComparable,它以MapFile的形式存在。有没有什么方法可以设置最小和最大键值,并且只将记录传输到键值介于两者之间的映射器? 最佳答案 这是不可能的。因为对于map-reduce作业,我们只是指定输入。我们可以做的一件事是,在映射器中编写一个条件。如果键是黑白最小值和最大值,则只处理键值对并将输出发送到reducer。否则,什么都不做。但即使在这种情况下,我们的map阶段也会处理所有输入,而reduce阶段只会处理我们指定的键范围。更好的方法:当在给定输入上运行map-reduce作业