scala - 如何将图形作为参数传递给Scala中的方法
问题描述
我是 Scala 的新手,我想创建一个用于管理图形任务的类。所以我想将一个 Graph 对象作为参数传递给我的类。例如:
val graph = Graph(users, edges, nowhere)
users: RDD[(Long, String)],
edges: RDD[Edge(Long, Long, String)]
nowhere: String
这是我的课
import org.apache.spark._
import org.apache.spark.rdd.RDD
import org.apache.spark.util.IntParam
// import classes required for using GraphX
import org.apache.spark.graphx._
class GraphAnalyzer(_graph: ???? ) {
val graph:???? =_graph
def GetVertecies(str: String): Long = {
val nodesCount: Long =graph.vertices.count()
nodesCount
}
}
我不知道我应该在“???” 我班的一部分。谁能帮我做这件事?
解决方案
我找到了解决方案。
这很简单,IDE 可以帮助我们。Eclipse 向我展示了一个工具提示。基于图结构,它实际上取决于图的顶点和边。
我使用了以下类型并且它有效:
import org.apache.spark._
import org.apache.spark.rdd.RDD
import org.apache.spark.util.IntParam
// import classes required for using GraphX
import org.apache.spark.graphx._
class GraphAnalyzer(_graph: Graph[String, Int] ) {
val graph:Graph[String, Int] =_graph
def GetVertecies(): Long = {
val nodesCount: Long = graph.vertices.count().toLong
nodesCount*100
}
}
推荐阅读
- python - 为什么我的 on_message 事件打印日志两次?
- spring - 使用 NamedParameterJdbcTemplate 插入批处理并返回完整对象
- cmake - 以非重复方式在 CMake 中设置一堆编译选项
- javascript - 带有 ngModel 的 Textarea 在 ngFor 循环中被覆盖
- c# - 我可以将 EFCore 的 DBContextPool 与 .NET Core 控制台应用程序一起使用吗
- c - 在 C 宏中未声明(在此函数中首次使用)
- javascript - 如何获得授权?如何防止用户通过编写 URL 直接访问我的 html 页面?
- php - 如何将数据从一页传递到另一页?
- linux - 发生一个或多个错误。(Permission denied /var/run/iotedge/mgmt.sock) 引起:docker返回退出代码:
- azure - 使用 EF 的 Cosmos DB 中的字典属性