- プロパティ・グラフのグラフ開発者ガイド
- グラフ・サーバー(PGX)上級ユーザー・ガイド
- PGXプログラミング・ガイド
- グラフのバージョニング
- リフレッシュを使用したスナップショットの作成
26.8.2 リフレッシュを使用したスナップショットの作成
リフレッシュを使用してスナップショットを作成するには、次のステップを実行します。
- セッションを作成し、メモリーにグラフをロードします。
PgxSession.getAvailableSnapshots()
メソッドを使用して、グラフの使用可能なスナップショットを確認します。opg4j> session.getAvailableSnapshots(G) ==> GraphMetaData [getNumVertices()=4, getNumEdges()=4, memoryMb=0, dataSourceVersion=1453315103000, creationRequestTimestamp=1453315122669 (2016-01-20 10:38:42.669), creationTimestamp=1453315122685 (2016-01-20 10:38:42.685), vertexIdType=integer, edgeIdType=long]
Deque<GraphMetaData> snapshots = session.getAvailableSnapshots(G); for( GraphMetaData metaData : snapshots ) { System.out.println( metaData ); }
snapshots = session.get_available_snapshots(G) for metadata in snapshots: print(metadata)
- ソース・ファイルを編集して、追加の頂点および追加のエッジを含めるか、データベースに2行挿入します。
- 元のグラフをロードしたセッションと同じセッション内で更新されたグラフをリロードします。新しいスナップショットが作成されます。
opg4j> var G = session.readGraphWithProperties( G.getConfig(), true ) ==> PGX Graph named 'sample_2' bound to PGX session 'a1744e86-65fb-4bd1-b2dc-5458b20954a9' registered at PGX Server Instance running in embedded mode opg4j> session.getAvailableSnapshots(G) ==> GraphMetaData [getNumVertices()=4, getNumEdges()=4, memoryMb=0, dataSourceVersion=1453315103000, creationRequestTimestamp=1453315122669 (2016-01-20 10:38:42.669), creationTimestamp=1453315122685 (2016-01-20 10:38:42.685), vertexIdType=integer, edgeIdType=long] ==> GraphMetaData [getNumVertices()=5, getNumEdges()=5, memoryMb=3, dataSourceVersion=1452083654000, creationRequestTimestamp=1453314938744 (2016-01-20 10:35:38.744), creationTimestamp=1453314938833 (2016-01-20 10:35:38.833), vertexIdType=integer, edgeIdType=long]
G = session.readGraphWithProperties( G.getConfig(), true ); Deque<GraphMetaData> snapshots = session.getAvailableSnapshots( G );
G = session.read_graph_with_properties(G.config,update_if_not_fresh=True)
使用可能なスナップショットのコールには2つのGraphMetaData
オブジェクトが含まれ、1つには4つの頂点と4つのエッジ、もう1つには5つの頂点と5つのエッジが含まれることに注意してください。 getNumVertices()
およびgetNumEdges()
メソッドを使用して、グラフ変数が新しくロードされたグラフを指していることを確認します。
親トピック: グラフのバージョニング