问题标签 [spark-graphx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 获取连接到 Apache Spark GraphX 中某个节点的所有节点
假设我们在 Apache GraphX 中的输入为:
顶点RDD:
边缘RDD:
我需要连接到 Apache Spark GraphX 中节点的所有组件
apache-spark - Spark/GraphX 1.5.0 中工作人员之间的任务分配不均
我有一个很大的边列表作为 5000 个分区 RDD。现在,我正在做一个简单但重洗牌的操作:
这项工作分为 9 个阶段(每个阶段 5000 个任务)。我的集群在同一个本地网络中有 3 个工作人员。尽管 Spark 1.5.0 运行速度更快,并且前几个阶段在满负载下运行,但从一个阶段mapPartitions at GraphImpl.scala:235
(任务一直RUNNING
持续到实际工作的一台机器完成所有工作。有趣的是,在 Spark 1.3.1 上,所有阶段的任务在集群机器之间平均分配。我怀疑这可能是 1.5.0 中的错误
UPD:似乎问题与数据无关:我随机生成了一个高度同质的图(每个顶点的度数为 5)并观察到相同的行为。所以这要么是一个奇怪的硬件问题,要么是与钨相关的问题。仍然没有确切的答案
java - 我们可以在 GraphX pregel API 中发送 java 对象作为消息的一部分吗?
我在graphX的pregel API中发送一个java复杂java对象作为消息,我在运行时收到以下错误
java.lang.IllegalArgumentException at com.esotericsoftware.reflectasm.shaded.org.objectweb.asm.ClassReader.(Unknown Source) at com.esotericsoftware.reflectasm.shaded.org.objectweb.asm.ClassReader.(Unknown Source) at com. org.apache.spark.graphx.util.BytecodeUtils$.getClassReader(BytecodeUtils.scala:91) at org.apache.spark.graphx.util 的 esotericsoftware.reflectasm.shaded.org.objectweb.asm.ClassReader.(Unknown Source) .BytecodeUtils$._invokedMethod(BytecodeUtils.scala:67) at org.apache.spark.graphx.util.BytecodeUtils$.invokedMethod(BytecodeUtils.scala:41) at org.apache.spark.graphx.impl.GraphImpl.accessesVertexAttr(GraphImpl .scala:298) at org.apache.spark.graphx.impl.GraphImpl.mapReduceTriplets(GraphImpl.scala:210) at org.apache.spark.graphx.Pregel$.apply(Pregel.scala:124) at org.apache .spark.graphx.GraphOps.pregel(GraphOps.scala:362) 在 com.ulb.code。wit.main.TestGraph$.main(TestGraph.scala:32) 在 com.ulb.code.wit.main.TestGraph.main(TestGraph.scala)
任何人都可以知道为什么会这样。
scala - 减少分区数量会减少执行时间
我想看看我的程序的执行时间如何随着不同数量的分区而变化。我使用一台 8 核和 16GB RAM 的机器来运行我的程序。默认情况下,当我创建图形边和顶点时,spark 使用 8 个分区(numPartitions),时间为 11 分钟。但是,当我减少分区数(即sc.parallelize(edges, X)
)时,我得到以下结果:
有人可以解释为什么会这样吗?另外,如果我在内核较少的机器上运行相同的程序,是否可以确定执行时间会减少?有机会保持原样吗?
scala - 使用 graphX 查询从内存错误中删除
使用 apache-spark 的 graphX API,我编写了以下代码,成功生成了 Graph。但是,当我尝试查询此图时,会发生一些与内存相关的错误
如果我尝试使用 graph.numvertices ,我会收到错误
请建议我在哪里犯了错误。
谢谢
scala - GraphX 中的非法访问错误
我第一次在 IntelliJ IDEA 上使用 Spark 和 Graphx。我正在尝试创建一个图形并在其上运行查询,但出现以下错误:
java.lang.IllegalAccessError:试图从类 org.apache.spark.graphx.impl.EdgePartitionBuilder 访问类 org.apache.spark.util.collection.Sorter
这是我的代码:
database - GraphX 是否支持子图查询?
我已经使用 GraphX API 加载了一个大图和一个小图(这将是我的查询),我想检查大图是否包含查询图。我在网上搜索了关于子图/图查询使用 GraphX,我找不到任何关于此的信息。GraphX 支持这个吗?如果是,有谁知道它如何处理子图同构问题:它是否使用某种索引?
scala - 使用 Spark 从顶点创建边
假设我有一个顶点数组,我想以每个顶点连接到下一个 x 顶点的方式从它们创建边。x 可以有任何整数值。有没有办法用 Spark 做到这一点?
到目前为止,这就是我对 Scala 的看法:
其中 vertices 变量是 (Long, String) 的数组。但整个过程当然是连续的。
编辑:
例如,如果我有这样的顶点:Hello
, World
, and
, Planet
cosmos
. 我需要以下边缘:Hello -> World
, World -> Hello
, Hello -> and
, and -> Hello
, Hello
-> Planet
, Planet -> Hello
, World -> and
, and -> World
, World -> Planet
, Planet -> World
, World -> cosmos
, cosmos -> World
, 等等。
scala - Spark 中的 Scala 和 GraphX
知道为什么我们会收到这些错误吗?
代码是:
apache-spark - 从 VertexProperty 创建 VertexId
我是 Spark 的新手,我想做的是创建一个连接 aseller
和 a的 Graph device
,这device
是一个String
,当我创建一个时Edge
,我必须给出一个VertexId
,如何VertexId
从VertexProperty
spark中生成