次に、Oracle Database 12cリリース1 (12.1.0.2)の『Oracle Spatial and Graph開発者ガイド』での変更点を示します。
Spatial and Graphルーティング・エンジン(ルーティング・エンジンと呼ばれることもあります)に関する情報は、大幅に更新および再編成されました。これは次の場所にあります。
「ルーティング・エンジン」では、ルーティング・エンジンのすべてのユーザーに関連する概念と手法について説明します。
「ルーティング・エンジン管理」は、ルーティング・エンジンを管理する必要のある上級ユーザー向けです。ほとんどのルーティング・ユーザーは対象ではありません。(「ルーティング・エンジン」の資料をよく理解していることを想定しています。)
SDO_GEOM.SDO_CLOSEST_POINTSでは、2つの点の間の距離が0 (ゼロ)の場合、以前のリリースでは出力ジオメトリ(geoma
およびgeomb
)がnullでした。現在は、その手順の「使用上の注意」で説明されているように、出力ジオメトリは入力ジオメトリが2次元と3次元のどちらであるかに依存します。
Oracle Spatial and Graphの最初のインストール後、デフォルトではGeoRaster機能が無効になっています。GeoRasterを有効にするには、次の手順に従います。
SYS AS SYSDBAとしてデータベースに接続します。
次の文を入力します。
EXECUTE MDSYS.enableGeoRaster;
詳細は、「インストールまたはアップグレード後にGeoRasterが正しく動作するための確認事項」を参照してください
次に、Oracle Database 12cリリース1 (12.1.0.1)の『Oracle Spatial and Graph開発者ガイド』での変更点を示します。
このリリースの新機能は次のとおりです。
Oracle Databaseリリース12.1.0.2では、次の新しいサブプログラムがSDO_GEOMパッケージに追加されました(「SDO_GEOMパッケージ(ジオメトリ)」を参照)。
このリリースでは、Non-Uniform Rational B-Spline (NURBS)曲線ジオメトリをサポートしています。NURBS曲線を使用すると、任意の形状で自由形式の形状の表現が可能になります。NURBS表現では、制御点とノットにより曲線の形状が決定され、わずかなデータで複雑な形状の表現が可能になるため、曲線の形状を制御することができます。
詳細は、「Oracle Spatial and GraphでのNURBS曲線のサポート」を参照してください。
以前のリリースでは、3次元測地ジオメトリでの特定の操作の高さ情報は無視されていました。このリリースでは、高さは近似処理され、これらの操作の計算に含まれます。
詳細は、「3次元の空間オブジェクト」(表1-2を含む)を参照してください。
ALL_SDO_xxxおよびUSER_SDO_xxxメタデータ・ビューが3Dテーマ、3Dシーン、3Dビューフレームの用に追加されました。これらのビューの詳細は、「その他の空間メタデータ・ビュー」を参照してください。
これらのビューは、「追加および変更されたSDO_UTILサブプログラム」にリストされているいくつかの新しいファンクションと関連しています。
次の新しいサブプログラムがSDO_PC_PKGパッケージに追加されました(「SDO_PC_PKGパッケージ(点群)」を参照)。
次の大きな変更が行われました。
SDO_PC_PKG.CLIP_PCでは、include_custom_dims
パラメータは、通常の次元に加えてカスタム次元を含む点群ブロックを戻すために使用できます。
SDO_PC_PKG.INITでは、pc_other_attrs
パラメータは、点群のピラミッド化のメタデータを指定するために使用できます。
次の新しいサブプログラムがSDO_TIN_PKGパッケージに追加されました(「SDO_TIN_PKGパッケージ(TIN)」を参照)。
次の大きな変更が行われました。
SDO_TIN_PKG.INITでは、tin_other_attrs
パラメータは、TINのピラミッド化のメタデータを指定するために使用できます。
次の新しいサブプログラムがSDO_UTILパッケージに追加されました(「SDO_UTILパッケージ(ユーティリティ)」を参照)。
次の大きな変更が行われました。
SDO_UTIL.AFFINETRANSFORMSは、1つ目(geometry
)以外のすべてのパラメータでデフォルト値を持ちます。これにより、ほんの一部のパラメータのみにデフォルト以外の値を指定する必要がある場合にコーディングが簡略化できます。
SDO_UTIL.CIRCLE_POLYGONに、start_azimuth
パラメータおよびend_azimuth
パラメータを含む構文が追加されました。
SDO_UTIL.SIMPLIFYに新しいオプションのパラメータremove_loops
が追加され、簡略化された線ストリング・ジオメトリに途中で自己交差するループが含まれないようにできます。(SDO_UTIL.SIMPLIFYVWにもremove_loops
パラメータを使用できます。)
SDO_GEOM_MBRは、SDO_GEOM.SDO_MBRファンクションと機能的に同じSQL演算子ですが、より優れたパフォーマンスが提供されます。
SDO_GEOM_MBR演算子の使用方法と例の詳細は、SDO_GEOM.SDO_MBRファンクションの参照の項を参照してください。
追加されたSDO_POINTINPOLYGON演算子(厳密にはテーブル・ファンクション)は、1番目の列が点のx座標の値で、2番目の列が点のy座標の値である一連の行を使用して、指定したポリゴン・ジオメトリ内のこれらの行を戻します。
空間演算子のパフォーマンスを向上させるために、SPATIAL_VECTOR_ACCELERATIONデータベース・システム・パラメータの値をTRUE
に設定し、ベクトル・パフォーマンス・アクセラレータ(VPA)機能を有効化することをお薦めします。(この機能と関連するシステム・パラメータは、ライセンスを付与されたOracle Spatial and Graphユーザーによる使用のみが許可されており、そのパラメータのデフォルト値はFALSE
です。)このパラメータは、システム全体または単一のセッションに対して設定できます。
詳細は、「SPATIAL_VECTOR_ACCELERATIONシステム・パラメータ」を参照してください。
その他、このマニュアルでは、次のような変更があります。
製品名がOracle SpatialからOracle Spatial and Graph (Spatial and Graphともいう)に変更されました。
以前に「複雑な空間問合せの例」にあった「SDO_AGGR_UNIONの例」という項は削除されました。この項では、「多くの行を集計する際により良いパフォーマンスを得るには、集計をグループに分割し、各グループのジオメトリ数が常に50以下になるようにします」とお薦めしていました。しかし、リリース12.1で導入されたSDO_AGGR_UNIONの機能強化により、Spatial and GraphでSPATIAL_VECTOR_ACCELERATION=TRUE
(「SPATIAL_VECTOR_ACCELERATIONシステム・パラメータ」を参照)を使用する場合、ネストされた集計を使用するその文および例はお薦めできなくなりました。ネストされた集計は、単一の集計よりも実際に遅くなる可能性があります。
ただし、Oracle Locatorを使用する場合、ネストした集計またはSDO_AGGR_SET_UNIONをお薦めします。詳細は、リリース11.2のOracle Spatialの開発者ガイドにあるC.4項 (「SDO_AGGR_UNIONの例」)を参照してください。