Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop HDFS的并行性提示_Hadoop_Hdfs_Apache Storm - Fatal编程技术网

Hadoop HDFS的并行性提示

Hadoop HDFS的并行性提示,hadoop,hdfs,apache-storm,Hadoop,Hdfs,Apache Storm,我正在使用ApacheStorm和HDFS。若我对螺栓1使用并行提示,它正在创建一个文件,将数据写入该文件并正常工作。但当我将bolt的parallelism hint增加到3时,它创建了3个文件,并且只向一个文件写入数据 我的应用程序有一个喷嘴和两个螺栓(Xbolt和Yblot) 并行性提示如下 喷嘴1、Xbolt 1、Ybolt 3 应用程序流程 喷出-->Xbolt-->Ybolt-->文件 如果使用fieldGrouping,所有数据都可能散列到螺栓上(即使不太可能)。shuffle()

我正在使用ApacheStorm和HDFS。若我对螺栓1使用并行提示,它正在创建一个文件,将数据写入该文件并正常工作。但当我将bolt的parallelism hint增加到3时,它创建了3个文件,并且只向一个文件写入数据

我的应用程序有一个喷嘴和两个螺栓(Xbolt和Yblot) 并行性提示如下 喷嘴1、Xbolt 1、Ybolt 3

应用程序流程 喷出-->Xbolt-->Ybolt-->文件


如果使用fieldGrouping,所有数据都可能散列到螺栓上(即使不太可能)。shuffle()将以循环方式将数据发送到螺栓上。

您的连接模式是什么?是否所有数据都只能路由到一个螺栓?@gudivinay提供您的驱动程序代码please@MatthiasJ.Sax,是的,所有数据仅路由到单个bot。例如HDFS bolt,我正在使用抽象HDFS bolt将数据写入文件。@Alex,驱动程序代码?对不起,我是新来的风暴,我没有得到你的确切要求,你能澄清我吗?@gudivinay np,我的意思是你能发布你的主要方法的主体,在那里你设置螺栓,喷口和提交拓扑
TopologyBuilder builder = new TopologyBuilder(); 
BoltDeclarer boltDeclarer;

int parallelismHint = 0;
parallelismHint = SpoutLogic.determineParallelismHint(config);

builder.setSpout("TOPIC_ID", new Spout(), parallelismHint); 
parallelismHint = XBoltLogic.determineParallelismHint(config); 
boltDeclarer = builder.setBolt("XBOLT_ID", new XBolt(), parallelismHint);    
boltDeclarer.shuffleGrouping("TOPIC_ID","XBoltMessage"); 
parallelismHint = HDFSBoltLogic.determineParallelismHint(config); 
boltDeclarer = builder.setBolt("HDFSBOLT_ID",new HDFSBolt(), parallelismHint);
boltDeclarer.fieldsGrouping("XBOLT_ID","XBoltMessage",new Fields("Table")); StormSubmitter.submitTopology("MyTopologyName", config, builder.createTopology());