1 Oracle Spatial Studioの概要

Oracle Spatial Studioは、Oracle Spatial形式の空間データを扱うためのビジュアル・ツールです。

1.1 Oracle Spatial Studioについて

Oracle Spatial Studio (Spatial Studioとも呼ばれる)は、Oracle Spatialに格納および管理されている地理空間データに対して接続、視覚化、調査および分析を行うためのフリー・ツールです。

Spatial Studioは、スタンドアロン・ツール(クイック・スタート)として使用するか、WebLogic ServerにデプロイできるマルチユーザーのJava EEアプリケーションです。

Spatial Studioを使用する前に、Oracle Technical Resources (以前はOracle Technology Networkと呼ばれていました)からキットをダウンロードしてソフトウェアをインストールし、このツールの使用を許可されるデータベース・ユーザーの作成、それらのユーザーの管理などの特定の管理アクションを実行する必要があります。

ノート:

Spatial Studioは、Spatialのマップ・ビジュアライゼーション・コンポーネント(以前は"MapViewer"と呼ばれていました。これは、エンドユーザー・ツールではなく、別個で明確に区別されるコンポーネントです)ではありません

マップ・ビジュアライゼーション・コンポーネントの詳細は、Spatialマップ・ビジュアライゼーション・ガイドを参照してください。

1.2 Spatial Studioの用語

この項では、Oracle Spatial Studioの主な概念とドメイン・オブジェクトについて説明します。

  • 接続: 接続はユーザーが作成します。Spatial Studioが外部データ・ソース(通常は特定のデータベース・スキーマ)からユーザー・データをロードできるように詳細を提供します。
  • データセット: データセットは、ユーザーのデータの基本的な編成単位です。
  • プロジェクト: プロジェクトでは、データのビジュアライゼーションおよび分析が行われます。これは保存して再度開くことができるワークスペースです。
  • 公開プロジェクト: 公開プロジェクトは、ユーザーがプロジェクトに作成したビジュアライゼーションおよび分析のスナップショットです。ユーザーが組織内で作成した内容を共有するための簡単な方法を提供します。
  • 分析: 通常、分析は1つ以上のデータセットに対して実行される1つ以上の(空間)操作です。分析の操作タイプとそのパラメータはすべて、プロジェクトの一部として格納されます。他のデータセットと同様に、分析の結果を視覚化できます。
  • メタデータ・スキーマ(リポジトリ):: Spatial Studioのメタデータ・スキーマは、すべてのSpatial Studioメタデータを集中管理するリポジトリを含むOracle Databaseです。
  • ユーザー: Spatial Studioのエンド・ユーザー(通常はビジネス・アナリストと管理ユーザー)。これらのユーザーはデータベース・スキーマ所有者ではなく、通常、情報がLDAPに似たディレクトリに格納され、認証がWebLogic Serverによって実行されるアプリケーション・ユーザーです。
  • パブリック・データセット: パブリック・データセットは、最初にSpatial StudioにログオンせずにアクセスできるGeoJSONエンドポイントを持つデータセットです。パブリック・データセットは、すべてのSpatial Studioユーザーに常に表示され、プロジェクトで使用できます。
  • パブリック公開済プロジェクト(PPP): パブリック公開済プロジェクトとは、関連データセットがすべてパブリック・データセットであり、公開済プロジェクト自体も公開されている公開済プロジェクトのことです。パブリック公開プロジェクトのビジュアライゼーションを他のWebアプリケーションに埋め込むことも、最初にSpatial StudioサーバーにログオンせずにWebブラウザでスタンドアロンで表示することもできます。

1.3 Spatial Studioのメタデータおよび接続の管理

この項では、Spatial Studioのメタデータ・スキーマと接続オブジェクトに関する概念情報を示します。

Spatial Studioは、それ自体のすべてのメタデータ(様々なユーザーによって作成されたすべてのデータセットおよび接続の定義など)をメタデータ・スキーマまたはリポジトリと呼ばれる単一のOracle Databaseスキーマに格納します。

このメタデータ・スキーマには重要なすべてのメタデータと状態が格納されているため、Spatial Studioが初期起動時に接続できる必要があります。このメタデータ・スキーマには、Spatial Studio専用のOracle Databaseか、他の目的にも使用される可能性のある任意のスキーマを使用できます(これらのスキーマが、Spatial Studioで使用するためにプロビジョニングされていて、必要最小限の権限がある場合)。

主なタイプの接続はSpatial Studioのエンド・ユーザーによって作成され、エンド・ユーザーは複数の異なるデータベース・スキーマに格納された一連のデータ表にアクセスしたり、1つのプロジェクトでそれらを一緒に調査したりできます。そのようなユーザーが作成した各接続の場合、その接続詳細のみがSpatial Studioのメタデータ・スキーマに格納され、実際の(raw)データがメタデータ・スキーマにコピーまたは抽出されることはありません。

Spatial Studioでの接続の作成時にスキーマのユーザー名およびパスワードが指定された場合、この情報は安全に暗号化されてからメタデータ・スキーマ表に格納されます。ユーザーがそのような接続を基にしたデータセットに依存するプロジェクトを開くと、その時点でパスワードが復号化され、新しいJDBC接続プールが確立されます。その後、この接続プールは、必要な場合にその接続からターゲット表に対して問合せを実行するために、Spatial Studioによって使用されます。

デフォルトでは、接続はプライベートです。つまり、接続を作成したユーザーのみが(プロジェクト内または他の場所で)アクセスできます。たとえば、ユーザーAが接続を作成した場合、ユーザーBはその接続またはその接続からのデータを表示または使用できません。唯一の例外は、ユーザーBが管理ユーザーである場合です。この場合、ユーザーBはすべての接続およびデータセットに完全にアクセスできます。

1.4 Spatial Studioのベスト・プラクティス

この項では、Spatial Studioを操作する際のベスト・プラクティスの推奨事項について説明します。

SRID 4326での経度/緯度データの標準化

Oracle Databaseの空間データには、データに関連付けられた座標系を一意に識別するSRID (空間参照識別子)が含まれています。複数のデータセットが関係する空間分析操作を実行する場合は、データセットのSRIDを同じにすることをお薦めします。

多くのSRIDを経度/緯度データに使用できますが、最も広く使用されているのは4326です。他に示す必要がある情報がないかぎり、経度/緯度ジオメトリにSRID 4326を使用することをお薦めします。また、経度/緯度ジオメトリを含む複数のOracle表があり、表間でSRIDに一貫性がない場合は、SRID 4326で標準化することをお薦めします。

(Oracle SpatialでのSRIDおよび座標系のサポートの詳細は、Spatialマニュアルの座標系(空間参照システム)の章を参照してください。)

次の例では、SRID 4326を使用していないジオメトリを、SRID 4326を使用するように変換します。SRID 4326を使用していない既存の表ごとに、これらのアクションを実行する必要があります。この例では、GEOMという名前のジオメトリ列を持つTABLE_1という名前のジオメトリ表を想定しています。また、table_1_idxという名前の既存の空間索引が削除され、後で再作成されます。

-- Drop the existing spatial index.
DROP INDEX table_1_idx FORCE;

-- Update the spatial metadata.
INSERT INTO user_sdo_geom_metadata
  VALUES (
  'TABLE_1',  -- table name
  'GEOM',     -- geometry column name
  SDO_DIM_ARRAY(
    SDO_DIM_ELEMENT('Longitude', -180, 180, 0.05),  -- 0.05 meter tolerance
    SDO_DIM_ELEMENT('Latitude', -90, 90, 0.05)  -- 0.05 meter tolerance
     ),
  4326   -- SRID for 'Longitude / Latitude (WGS 84)' coordinate system
);

-- Update (transform) geometry data to use SRID 4326.
update table_1 set geom = sdo_cs.transform(geom, 4326);

-- Re-create the spatial index.
CREATE INDEX table_1_idx
ON table_1(geom)
INDEXTYPE IS MDSYS.SPATIAL_INDEX_V2;

ノート:

CREATE INDEX文では、Oracle Databaseがリリース18以上の場合、SPATIAL_INDEX_V2をお薦めします。リリース18より前の場合は、SPATIAL_INDEXのみを指定します。