この序文では、Oracle Big Data Spatial and Graphリリース2.2に関するOracle Big Data Spatial and Graphユーザーズ・ガイドおよびリファレンスの重要な新機能および変更点について説明します。
インメモリー・アナリスト(PGX) APIは、このリリースで拡張されています。API機能の詳細は、Oracle Spatial and Graphインメモリー・アナリスト(PGX) Java APIリファレンスを参照してください。より注目に値する変更点は、次のとおりです。
PGQLでの型キャスト: CAST関数を使用して、データ値を1つのデータ型から別のデータ型にキャストできます。この構文は、SQL CAST関数の構文と似ています(CAST(語句 AS データ型)
)。次に例を示します。
SELECT CAST(n.age AS STRING), CAST('123' AS INT), CAST('true' AS BOOLEAN) WHERE (n:Person)
PGQLの詳細は、「グラフを使用したパターンマッチング問合せの使用」を参照してください。
グラフの置換: 有向グラフを置換したものは、同じグラフですが、すべてのエッジが反対になっています。新しいメソッドPgxGraph.transpose()
を使用して、オリジナルを置換したものである新しいグラフを(非破壊的に)返すことができます。
新しいアルゴリズム:
PRIMアルゴリズムを使用して、グラフ内の最小の全域木を見つけることができます。
SALSAアルゴリズムには、追加のパーソナライズ・オプションを使用できます。
Apache Sparkのサポートの改善点:
頂点IDを文字列型にすることができます。
頂点およびエッジ・ラベルのサポートが追加されました。
分散PGXの改善点: インメモリー・アナリストのPGXの分散ランタイム実装が値型文字列のプロパティをサポートするようになりました。
Spark Vector Analysis APIとScalaの統合を改善するために、新しいSpatialRDD
およびDistributedSpatialIndex
実装が追加されました。
新しいSpatialRDD
により、SpatialJavaRDD
クラスの場合のように、ネイティブSparkのRDD作成クラスが拡張され、空間の変換およびアクションが追加されます。
SpatialRDD
とScalaのDistributedSpatialIndex
のどちらを使用しても、Scala関数リテラル(ラムダ)を空間の変換およびアクションに渡すことができるため、ScalaからVector APIを操作しやすくなります。
Scalaのサポートの詳細は、「Oracle Big Data Spatial Vector Analysis for Spark」を参照してください。
DistributedSpatialIndex
には、最近傍アクションが追加されました。分散空間索引により、最近傍アクションの実行時の実行時間を短縮できます。
詳細は、「空間アクション(MBRおよびNearestNeighbors)」を参照してください。
フィルタ処理変換または最近傍アクションの実行時にユーザー定義のフィルタ処理ラムダを呼び出す前と後のどちらで空間操作を評価するかを制御できます。
詳細は、「空間評価の制御」を参照してください。
2つの新しいユーティリティ・メソッドを使用して、Oracleフラット・ファイル形式で頂点またはエッジ・レコードを直接書き込むことができるため、特殊文字のエンコードについて心配する必要がなくなりました。
OraclePropertyGraphUtils.outputVertexRecord(os, vid, key, value)
を使用して、Oracleフラット・ファイル形式で頂点レコードを直接シリアル化できます。(「頂点ファイル」を参照してください。)
OraclePropertyGraphUtils.outputEdgeRecord(os, eid, svid, dvid, label, key, value)
を使用して、eidによる識別される特定のエッジのkey/valueプロパティを示す特定の出力ストリーム内のテキストの新しい行を書き込むことができます。(「エッジ・ファイル」を参照してください。)