<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ```scala Graph[VD,ED] // 使用邊集合與頂點集合構建圖 VertexRDD[VD] // 操作頂點的RDD視圖 EdgeRDD[ED] // 操作邊的RDD視圖 EdgeTriplet[VD,ED] // 表示頂點與邊的集合 Edge:樣例類,表示一條邊 VertexId:Long的別名,頂點的Id ``` 下面使用Scala代碼構建如下圖: ![](https://img.kancloud.cn/4f/c9/4fc971d0f47c7a0290f0614faaead7bd_967x171.png) **構圖方式1: `SparkContext.parallelize/SparkContext.makeRDD`先創建頂點集合和邊集合RDD,再構建圖。**(常用) ```scala import org.apache.spark.SparkContext import org.apache.spark.graphx.{Edge, Graph, VertexId} import org.apache.spark.rdd.RDD import org.apache.spark.sql.SparkSession object GraphxAPI { def main(args: Array[String]): Unit = { val spark:SparkSession = SparkSession.builder() .appName(this.getClass.getName) .master("local[4]") .getOrCreate() val sc:SparkContext = spark.sparkContext import spark.implicits._ // 1. 頂點集合 (頂點Id, 頂點的值) val vertices:RDD[(VertexId, Int)] = sc.makeRDD(Seq((1L, 1), (2L, 2), (3L, 3))) // 2. 邊集合 (開始頂點Id, 目的頂點Id, 兩個頂點的邊的值) val edges:RDD[Edge[Int]] = sc.makeRDD(Seq(Edge(1L, 2L, 1), Edge(2L, 3L, 2))) // 3. 使用頂點集合和邊集合構建圖,Graph[點值類型, 邊值類型] val graph:Graph[Int, Int] = Graph(vertices, edges) // 打印圖的頂點,(頂點id, 頂點值) graph.vertices.foreach(x=>println(s"(Id:${x._1}, attr:${x._2})")) // (Id:3, attr:3) // (Id:1, attr:1) // (Id:2, attr:2) // 打印圖的邊, (開始頂點, 目的頂點, 兩個頂點的邊的值) graph.edges.foreach(x=>println(s"(srcId:${x.srcId}, dstId:${x.dstId}, attr:${x.attr})")) // (srcId:1, dstId:2, attr:1) // (srcId:2, dstId:3, attr:2) // triplets獲取帶有屬性的點和屬性的邊 graph.triplets.foreach(x=>println(x.toString())) // ((srcId, srcAttr), (dstId, dstAttr), srcId到dstId的邊的值) // ((2,2),(3,3),2) // ((1,1),(2,2),1) } } ``` <br/> **構圖方式2:加載外部文件構建圖** (1)數據的格式為`srcId dstId`,頂點和邊的Attr都默認為1。 ```txt 2 1 4 1 1 2 ``` (2)代碼 ```scala import org.apache.spark.SparkContext import org.apache.spark.sql.SparkSession object GraphLoaderFile { def main(args: Array[String]): Unit = { val spark:SparkSession = SparkSession.builder() .appName(this.getClass.getName) .master("local[4]") .getOrCreate() val sc:SparkContext = spark.sparkContext import spark.implicits._ import org.apache.spark.graphx.GraphLoader val graph = GraphLoader.edgeListFile(sc, "file:///E:\\hadoop\\input\\graph.txt") // 打印圖的頂點,(頂點id, 頂點值) graph.vertices.foreach(x=>println(s"(Id:${x._1}, attr:${x._2})")) // (Id:4, attr:1) // (Id:2, attr:1) // (Id:1, attr:1) // 打印圖的邊, (開始頂點, 目的頂點, 兩個頂點的邊的值) graph.edges.foreach(x=>println(s"(srcId:${x.srcId}, dstId:${x.dstId}, attr:${x.attr})")) // (srcId:2, dstId:1, attr:1) // (srcId:1, dstId:2, attr:1) // (srcId:4, dstId:1, attr:1) // triplets獲取帶有屬性的點和屬性的邊 graph.triplets.foreach(x=>println(x.toString())) // ((srcId, srcAttr), (dstId, dstAttr), srcId到dstId的邊的值) // ((2,1),(1,1),1) // ((1,1),(2,1),1) // ((4,1),(1,1),1) } } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看