graphx操作例項02 joinVertices

2021-07-09 08:54:48 字數 1093 閱讀 9268

例子說明:利用joinvertices和outjoinvertices對graph的頂點屬性進行修改

import org.apache.spark._

import org.apache.spark.sparkcontext

import org.apache.spark.sparkcontext._

import org.apache.spark.graphx._

import org.apache.spark.rdd.rdd

object day03 )

// 將users中的vertex屬性新增到graph中,生成graph2

// 使用joinvertices操作,用user中的屬性替換圖中對應id的屬性

// 先將圖中的頂點屬性置空

val graph2 = graph.mapvertices((id, attr) => "").joinvertices(users)

println("\n\n~~~~~~~~~ confirm vertices internal of graph2 ")

graph2.vertices.collect.foreach(println(_))

// (1,taro)

// (2,jiro)

// (3,)

// 使用outerjoinvertices將user中的屬性賦給graph中的頂點,如果圖中頂點不在user中,則賦值為none

val graph3 = graph.mapvertices((id, attr) => "").outerjoinvertices(users)

println("\n\n~~~~~~~~~ confirm vertices internal of graph3 ")

graph3.vertices.collect.foreach(println(_))

// (2,jiro)

// (1,taro)

// (3,none)

// 結果表明,如果graph的頂點在user中,則將user的屬性賦給graph中對應的頂點,否則賦值為none。

sc.stop

}}

shell指令碼例項0

從程式設計師的角度來看,shell本身是一種用c語言編寫的程式,從使用者的角度來看,shell是使用者與linux作業系統溝通的橋梁。使用者既可以輸入命令執行,又可以利用 shell指令碼程式設計,完成更加複雜的操作。在linux gui日益完善的今天,在系統管理等領域,shell程式設計仍然起著不...

selenium儲存cookies 例項02

from selenium import webdriver import pickle import time pickle模組實現了基本的資料序列化和反序列化。通過pickle模組的序列化操作我們能夠將程式中執行的物件資訊儲存到檔案中去,永久儲存 通過pickle模組的反序列化操作,我們能夠從檔...

msql 例項操作

新增使用者 guest,密碼為123,insert into use host,user,password,select priv,insert priv,update priv values localhost guest password 123 y y y flush privileges 選...