9.48 OPG_APIS.PR
形式
OPG_APIS.PR( edge_tab_name IN VARCHAR2, d IN NUMBER DEFAULT 0.85, num_iterations IN NUMBER DEFAULT 10, convergence IN NUMBER DEFAULT 0.1, dop IN INTEGER DEFAULT 4, wt_node_pr IN OUT VARCHAR2, wt_node_nextpr IN OUT VARCHAR2, wt_edge_tab_deg IN OUT VARCHAR2, wt_delta IN OUT VARCHAR2, tablespace IN VARCHAR2 DEFAULT NULL, options IN VARCHAR2 DEFAULT NULL, num_vertices OUT NUMBER);
説明
ページ・ランクの計算の準備を行います。
パラメータ
- edge_tab_name
-
プロパティ・グラフ・エッジ表の名前。
- d
-
減衰係数。
- num_iterations
-
ページ・ランク値の計算の反復回数。
- convergence
-
しきい値。現在の反復のページ・ランク値と次の反復のページ・ランク値の違いがこのしきい値よりも小さい場合、計算は停止します。
- dop
-
操作の並列度。
- wt_node_pr
-
頂点のページ・ランク値を保持する作業表の名前。
- wt_node_pr
-
頂点のページ・ランク値を保持する作業表の名前。
- wt_node_next_pr
-
次の反復の頂点のページ・ランク値を保持する作業表の名前。
- wt_edge_tab_deg
-
エッジとノードの並列度情報を保持する作業表の名前。
- wt_delta
-
いくつかの特別な頂点に関する情報を保持する作業表の名前。
- tablespace
-
すべてのグラフ・データおよび索引データを保持する表領域の名前。
- options
-
操作に対する追加の設定。次の値が1つ以上含まれる(カンマ区切り)オプションの文字列。
-
CREATE_UNDIRECTED=T
-
REUSE_UNDIRECTED_TAB=T
-
- num_vertices
-
ページ・ランクの計算により処理される頂点の数。
使用上のノート
プロパティ・グラフ・エッジ表はデータベースに存在している必要があり、OPG_APIS.PR_PREPプロシージャはコール済である必要があります。
例
次の例は、準備を実行してから、mypg
という名前のプロパティ・グラフの頂点のページ・ランク値を計算します。
set serveroutput on DECLARE wt_pr varchar2(2000); -- name of the table to hold PR value of the current iteration wt_npr varchar2(2000); -- name of the table to hold PR value for the next iteration wt3 varchar2(2000); wt4 varchar2(2000); wt5 varchar2(2000); n_vertices number; BEGIN wt_pr := 'mypgPR'; opg_apis.pr_prep('mypgGE$', wt_pr, wt_npr, wt3, wt4, null); dbms_output.put_line('Working table names ' || wt_pr || ', wt_npr ' || wt_npr || ', wt3 ' || wt3 || ', wt4 '|| wt4); opg_apis.pr('mypgGE$', 0.85, 10, 0.01, 4, wt_pr, wt_npr, wt3, wt4, 'SYSAUX', null, n_vertices) ; END; /
出力は、次のようになります。
Working table names "MYPGPR", wt_npr "MYPGGE$$TWPRX277", wt3 "MYPGGE$$TWPRE277", wt4 "MYPGGE$$TWPRD277"
計算されたページ・ランク値は、次の定義およびデータを含むmypgpr表に格納されます。
SQL> desc mypgpr; Name Null? Type ----------------------------------------- -------- ---------------------------- NODE NOT NULL NUMBER PR NUMBER C NUMBER SQL> select node, pr from mypgpr; NODE PR ---------- ---------- 101 .1925 201 .2775 102 .1925 104 .74383125 105 .313625 103 .1925 100 .15 200 .15
親トピック: OPG_APISパッケージのサブプログラム