如何为titan mr作业设置作业队列

ma8fv8wu  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(356)

泰坦版本是1.0.0​不管我做了什么,所有的应用程序最终都进入了默认队列。以下是我尝试过的:
1) 在titan-hbase-solr.properties中设置属性(以下各项均不起作用)

mapred.job.queue.name=myqueue 
mapreduce.job.queue.name=myqueue 
mapred.mapreduce.job.queue.name=myqueue

2) 在gremlin shell中设置属性

gremlin> graph = TitanFactory.open("/usr/iop/4.2.5.0-0000/titan/conf/titan-hbase-solr.properties") 
gremlin> mgmt = graph.openManagement() 
gremlin> desc = mgmt.getPropertyKey("desc") 
gremlin> mr = new MapReduceIndexManagement(graph) 

gremlin> mgmt.set('gremlin.hadoop.mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root.gremlin]: 

hadoop gremlin> mgmt.set('hadoop.mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root]: hadoop Display stack trace? [yN] n 

gremlin> mgmt.set('titan.hadoop.mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root]: titan Display stack trace? [yN] n 

gremlin> mgmt.set('mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root]: mapred Display stack trace? [yN] n gremlin> 

gremlin> mgmt.set('mapreduce.mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root]: mapreduce Display stack trace? [yN] n 

gremlin> mgmt.set('gremlin.mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root.gremlin]: mapred Display stack trace? [yN] n 

gremlin> mgmt.set('gremlin.hadoop.mapred.job.queue.name', 'myqueue') 
Unknown configuration element in namespace [root.gremlin]: hadoop Display stack trace? [yN] n
63lcw9qa

63lcw9qa1#

Yarn是hadoop2.0的一个特性;但是,Titan1.0并不完全支持Hadoop2.0(见下面的引文),所以这可能会导致您看到的问题。
有些人已经用Titan1.0来增加对TinkerpoP3.1的支持,TinkerpoP3.1增加了对Hadoop2.x的支持,例如,请看这个github repo。还有一个土卫六的错误和讨论 thinkaurelius@ 邮件列表与一个类似的主题,你可能会发现有用的,其中一个职位的参考叉。
作为使用titan 1.0 fork将titan升级到3.1.x的替代方法,您还可以考虑未发布的titan 1.1分支,它依赖于tinkerpop 3.1.1-Cubating,因此可能适合与Hadoop2.x和yarn一起使用。titan 1.1.0-snapshot可能对您有用;请参见sonatype上的工件。
下面是来自titan wiki的信息,解释了titan 1.0支持哪些tinkerpop和hadoop版本:
Titan1.0.0本身与Hadoop1和2都兼容,但是tinkerpop的HadoopGremlin需要Hadoop1。hadoopgremlin包含用于在spark和giraph等位上运行遍历的图形计算机实现。
这将在以后的tinkerpop版本中改变。泰坦1.0.0依赖于tinkerpop 3.0.1的孵化。不过,Tinkerpop3.1.0版本已经宣布支持Hadoop2:https://groups.google.com/d/msg/gremlin-users/vb5d61l-xm8/_0mkqctdaqaj
Tinkerpop3.1.0发布后,随后的titan可以恢复对Hadoop2的完全支持。Hadoop1支持将被保留,如果这样做是无痛的;如果它引发冲突,那么它可能会被丢弃。
然而,对于Tinkerpop3.0.1孵化的Titan1.0.0来说,情况正好相反:由于HadoopGremlin,zipfile发行版中只能完全支持Hadoop1,而Hadoop2支持的范围仅限于可以避免围绕HadoopGremlin的冲突。hadoop1zipfile提供了hadoop2zipfile的所有功能,只是它缺少titansolr,不能与hadoop2clusters(通常包括运行在hadoop2之上的hbase集群)通信。与hadoop 1的对应文件相比,hadoop 2 zipfile缺少以下功能:
hadoop2zipfile缺少titanhadoop和hadoopgremlin
hadoop 2 zipfile缺少mapreduceindexjobs
hadoop2zipfile的测试不如hadoop1zipfile好;有可能其他部分已经损坏,但尚未被发现

相关问题