14.6.2 コレクションおよびスカラーの管理
クライアントでは、PgxGraphの次のメソッドを使用して、分析中に使用する、グラフにバインドされた頂点およびエッジ・コレクションを作成できます。
PgxFuture<VertexSequence<E>> createVertexSequenceAsync()
PgxFuture<VertexSequence<E>> createVertexSequenceAsync(String name)
PgxFuture<VertexSet<E>> createVertexSetAsync()
PgxFuture<VertexSet<E>> createVertexSetAsync(String name)
PgxFuture<EdgeSequence> createEdgeSequenceAsync()
PgxFuture<EdgeSequence> createEdgeSequenceAsync(String name)
PgxFuture<EdgeSet> createEdgeSetAsync()
PgxFuture<EdgeSet> createEdgeSetAsync(String name) PGXでは、setやsequenceなどのスカラー・コレクションもサポートされています。これらのコレクションはそれぞれ、INTEGER、LONG、FLOAT、DOUBLE、BOOLEANなどの様々なプリミティブ・データ型の要素を保持できます。スカラー・コレクションはセッションにバインドされ、PgxSessionの次のメソッドを使用して作成できます。
PgxFuture<ScalarSet<T>> createSetAsync(PropertyType contentType, String name)
PgxFuture<ScalarSequence<T>> createSequenceAsync(PropertyType contentType, String name)
PgxFuture<ScalarSet<T>> createSetAsync(PropertyType contentType)
PgxFuture<ScalarSequence<T>> createSequenceAsync(PropertyType contentType)前述のコードのオプションの引数(name)では、新しく作成されるコレクションの名前を指定します。省略した場合は、クライアントのかわりにPGXによって名前が選択されます。プロパティと同様に、頂点を保持するコレクションは、頂点のIDタイプでパラメータ化されます。グラフの頂点IDタイプを指定する方法は、グラフ構成の章を参照してください。
戻り値は、新しく作成された空のコレクションを指すコレクション・オブジェクトです。
セッションからコレクションを削除するには、コレクション・オブジェクトでdestroyAsync() (またはdestroy())をコールします。
グラフに現在割り当てられているコレクションを確認するには、次のメソッドを使用できます。
PgxFuture<Map<String, PgxCollection<? extends PgxEntity<?>, ?>>> getCollectionsAsync()Javaを使用したグラフのコレクションの確認
Map<String, PgxCollection<? extends PgxEntity<?>, ?>> getCollections()Pythonを使用したグラフのコレクションの確認
get_collections(self)返されるマップには、コレクションの名前がキーとして含まれ、コレクションが値として含まれます。コレクションは、一致するコレクション・サブクラスにキャストできます。
PGXでは、特殊なMapコレクション・タイプがサポートされており、ユーザーは異なるデータ型(oracle.pgx.common.types.PropertyType)間でマップできます。マップは、PgxGraph APIまたはPgxSession APIを使用して作成できます。これらの違いは、後者では非グラフ関連の型のみがサポートされ、作成されたマップはセッションに直接依存することです。
PgxFuture<PgxMap<K, V>> createMapAsync(PropertyType keyType, PropertyType valType)
PgxFuture<PgxMap<K, V>> createMapAsync(PropertyType keyType, PropertyType valType, String mapName)Javaを使用したマップ・コレクションの作成
PgxMap<K, V> createMap(PropertyType keyType, PropertyType valType)
PgxMap<K, V> createMap(PropertyType keyType, PropertyType valType, String mapName)同様に、次のメソッドを使用して、クライアント・セッションでスカラー変数を作成できます。
PgxFuture<Scalar<T>> createScalarAsync(PropertyType type, String newScalarName)
PgxFuture<Scalar<T>> createScalarAsync(PropertyType type)Javaを使用したスカラー変数の作成
Scalar<T> createScalar(PropertyType type, String newScalarName)
Scalar<T> createScalar(PropertyType type)Pythonを使用したスカラー変数の作成
create_scalar(self,data_type,name=None)これらのコレクションおよびスカラー変数はその後、グラフ・アルゴリズムに引数として渡すことができます。詳細は、カスタムPGXグラフ・アルゴリズムの使用を参照してください。
親トピック: 一時データの管理