问题标签 [graphframes]

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.

0 投票
0 回答
1367 浏览

apache-spark - Apache Spark计算最短路径

我正在尝试根据 Apache Spark 的权重计算大型网络中从给定源到给定目标的最短路径。因为我所有的其他代码都是用 python 编写的,所以我不想改变。这应该是可能的,不是吗?由于我对 Spark 很陌生,也许我不知道如何解决这个问题。

也许有人可以帮助我?提前致谢!

到目前为止我尝试了什么:

  • 创建顶点和边列表
  • 使用 GraphFrame() 创建图形
  • 取消 GraphFrames 最短路径方法来计算最短路径

到目前为止一切都很好(不是真的)。GraphFrames 最短路径方法的问题在于它计算从每个节点到给定节点集的最短路径,这适用于小型图,但对于大型网络需要很长时间。由于考虑了所有节点,因此完成了许多“不必要的”计算。我只需要获得从一个节点到另一个节点的最短路径。

我在网上搜索,发现 Spark graphx 库有我正在寻找的这样一个功能,但遗憾的是它只适用于 Scala ......

也许我可以使用 rdds 来计算基于权重的最短路径?或者是否有我无法找到的 pyspark 的最短路径实现?不敢相信 pyspark 没有实现最短路径算法。

0 投票
0 回答
326 浏览

apache-spark - 无法使用 zeppelin 加载包

使用带有 spark 的 zeppelin 笔记本,我想使用 ui 管理器加载图形框加载图框 单击保存后,我得到一个提示。我想单击确定以批准新设置并重新启动集群,但该ok按钮没有响应。请注意,当我更改其他设置而不加载依赖项时,它工作正常。 在此处输入图像描述

0 投票
2 回答
562 浏览

apache-spark - 为什么带有 GraphFrames jar 的“spark-shell --jars”会给出“错误:加载类文件'Logging.class'时检测到缺少或无效的依赖项”?

我运行了一个命令spark-shell --jars /home/krishnamahi/graphframes-0.4.0-spark2.1-s_2.11.jar,它给我一个错误

错误:加载类文件“Logging.class”时检测到缺少或无效的依赖项。无法访问 com 包中的术语类型安全,因为它(或其依赖项)丢失。检查您的构建定义是否存在缺失或冲突的依赖项。(使用 -Ylog-classpath 重新运行以查看有问题的类路径。)如果“Logging.class”是针对不兼容的 com 版本编译的,则完全重建可能会有所帮助。错误:加载类文件“Logging.class”时检测到缺少或无效的依赖项。无法访问值 com.typesafe 中的术语 scalalogging,因为它(或其依赖项)丢失。检查您的构建定义是否存在缺失或冲突的依赖项。(使用 -Ylog-classpath 重新运行以查看有问题的类路径。)如果“Logging.class”完全重建可能会有所帮助 是针对 com.typesafe 的不兼容版本编译的。错误:加载类文件“Logging.class”时检测到缺少或无效的依赖项。无法访问值 com.slf4j 中的类型 LazyLogging,因为它(或其依赖项)丢失。检查您的构建定义是否存在缺失或冲突的依赖项。(使用 -Ylog-classpath 重新运行以查看有问题的类路径。)如果“Logging.class”是针对不兼容的 com.slf4j 版本编译的,则完全重建可能会有所帮助。

我正在使用 Spark 版本 2.1.1、Scala 版本 2.11.8、JDK 版本 1.8.0_131、CentOS7 64 位、Hadoop 2.8.0。谁能告诉我我应该给什么额外的命令才能完美运行程序?提前致谢。

0 投票
0 回答
1648 浏览

apache-spark - 在 Spark Graphframes 中收集邻居

我有一个无向图。是否有任何有效的功能可以使用 Spark Graphframes 收集特定顶点 ID 的直接邻居?(此功能在 GraphX [链接]中可用)

如果是,我们如何获得级别 2、3 和 ... 的邻居(这意味着最短路径长度大于 1 的邻居可达)

据我所知,此任务的唯一解决方案是使用 find() 和 filter() 组合(Motif Finding)。但出现了两个问题:

  1. 它有效率吗?主题查找是为非锚定查询(对模式的查询)构建的,而不是为锚定的(对特定顶点的查询)。
  2. 在数据帧上使用连接适用于有向边表。但我的图表是无向的。
0 投票
0 回答
393 浏览

apache-spark - 将 GraphFrames 用于连接组件时出现奇怪的 JavaNullPointerException

我目前正在使用 GraphFrames 从图中检索连接的组件。

我的代码非常简单,如下所示:

下面是代码片段的输出,我也觉得没问题。

打印顶点:

[Row(id=6, name=u'6'), Row(id=12, name=u'12'), Row(id=1, name=u'1'), Row(id=3, name=u'3'), Row(id=9, name=u'9'), Row(id=2, name=u'2'), Row(id=11, name=u'11'), Row(id=10, name=u'10'), Row(id=5, name=u'5'), Row(id=4, name=u'4')]

打印边缘:

[Row(src=2, dst=9), Row(src=2, dst=5), Row(src=2, dst=6), Row(src=9, dst=10), Row(src=11, dst=12), Row(src=4, dst=10), Row(src=1, dst=2), Row(src=1, dst=3), Row(src=1, dst=12)]

但是,当执行 g.connectedComponents() 时,程序开始给出以下 NullPointerException。

将不胜感激任何关于这里出了什么问题的建议!

ERROR LiveListenerBus: Listener JobProgressListener 在 org.apache.spark.ui.jobs.JobProgressListener$$anonfun$onTaskEnd$1.apply(JobProgressListener.scala:361) 在 org.apache.spark.ui.jobs 抛出异常 java.lang.NullPointerException .JobProgressListener$$anonfun$onTaskEnd$1.apply(JobProgressListener.scala:360) at scala.collection.immutable.List.foreach(List.scala:318) at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala :32) 在 org.apache.spark.ui.jobs.JobProgressListener.onTaskEnd(JobProgressListener.scala:360) 在 org.apache.spark.scheduler 的 scala.collection.mutable.ListBuffer.foreach(ListBuffer.scala:45)。 SparkListenerBus$class.onPostEvent(SparkListenerBus.scala:42) at org.apache.spark.scheduler.LiveListenerBus.onPostEvent(LiveListenerBus.scala:31) at org.org.apache.spark.util.ListenerBus$class.postToAll(ListenerBus.scala:55) 上的 apache.spark.scheduler.LiveListenerBus.onPostEvent(LiveListenerBus.scala:31) org.apache.spark.util.AsynchronousListenerBus.postToAll( AsynchronousListenerBus.scala:37) at org.apache.spark.util.AsynchronousListenerBus$$anon$1$$anonfun$run$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(AsynchronousListenerBus.scala:80) at org.apache.spark.util.AsynchronousListenerBus$$anon$1$$anonfun$run$1$$anonfun$apply$mcV$sp$1.apply(AsynchronousListenerBus.scala:65) at org.apache.spark.util.AsynchronousListenerBus$$ anon$1$$anonfun$run$1$$anonfun$apply$mcV$sp$1.apply(AsynchronousListenerBus.scala:65) at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57) at org.apache.spark.util .AsynchronousListenerBus$$anon$1$$anonfun$run$1。apply$mcV$sp(AsynchronousListenerBus.scala:64) at org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1183) at org.apache.spark.util.AsynchronousListenerBus$$anon$1.run(AsynchronousListenerBus .scala:63)

0 投票
1 回答
508 浏览

scala - GraphFrame:加载类文件时检测到缺少或无效的依赖项

我正在尝试使用 spark graphframe 创建图形

这是代码:

但这是我得到的错误:

错误:加载类文件“GraphFrame.class”时检测到缺少或无效的依赖项。无法访问包 org.apache.spark 中的类型 Logging,因为它(或其依赖项)丢失。检查您的构建定义是否存在缺失或冲突的依赖项。(重新运行-Ylog-classpath以查看有问题的类路径。)如果“GraphFrame.class”是针对不兼容的 org.apache.spark 版本编译的,则完全重建可能会有所帮助。

我正在使用 Apache Spark 2.1 和 Scala 2.11。任何建议可能是什么问题?

0 投票
1 回答
1329 浏览

apache-spark - GraphFrames 主题搜索上的边缘属性过滤器不起作用

我有一些关于我想查询的家庭图的示例数据。

我想在 GraphFrames 对象上使用 find 方法来查询边缘类型为“Mother”的主题 A->B。

由于 GraphFrames 使用 Neo4J 的密码语言的子集,我想知道以下是否是正确的查询?

或者在 GraphFrames 中实现这一点的最佳方法是什么?

这不起作用,因为我无法过滤方向,所以我只想得到母亲:)

任何的想法?

0 投票
0 回答
196 浏览

apache-spark - GraphFrames shortestPaths 在本地模式下很好,但在集群上完成时出错

我正在学习 Apache Spark 和 graphframes 试图让 shortestPaths 使用此处提供的代码在我的 6 节点集群上工作https://graphframes.github.io/user-guide.html

当在本地运行时,shortestPaths 工作,但是当使用集群运行时,我收到以下警告,然后是一个错误:

这是我一直在使用的 spark 提交:

我的 SBT 文件

0 投票
1 回答
173 浏览

scala - 如何将文本时间跟随结构导入到 GraphFrame

我有一个文件遵循结构。第一列是nodeID。在“:”之后是一个与nodeID有连接的节点。每个 nodeID 可以有多个连接。

如何应用转换以导入到 GraphFrame?

0 投票
2 回答
359 浏览

pyspark - Apache toree - pySpark 不加载包

我按照https://medium.com/@faizanahemad/machine-learning-with-jupyter-using-scala-spark-and-python-the-setup-62d05b0c7f56的说明安装了 Apache Toree 。

但是,我无法通过使用内核文件中的 PYTHONPATH 变量在 pySpark 内核中导入包:

/usr/local/share/jupyter/kernels/apache_toree_pyspark/kernel.json。

使用笔记本我可以在 sys.path 和 os.environ['PYTHONPATH'] 中看到所需的 .zip,相关的 .jar 位于 os.environ['SPARK_CLASSPATH'] 但我得到了

导入时“没有名为 graphframe 的模块”:import graphframe。

关于如何导入图框的任何建议?

谢谢你。