Spatial Studioで地図上に駅をマッピングしてみた - 環境準備編

# はじめに
Oracle Spatial Studio は、Oracle Databaseの空間データ（Spatial Data）を可視化・分析するための無償ツール です。SQLの知識がなくても、直感的なUIを使って地理空間データを簡単に操作できます。

#### 主な特徴
- SQLの知識がなくても、地理情報を可視化・解析できるGUIを提供
- Oracle Autonomous Database、Oracle Database、外部データ（CSV、GeoJSON、WMSなど）を利用可能
- 地図上にデータをプロットし、空間クエリやフィルタリングを簡単に実施
- OCI Database、Oracle Analytics Cloud (OAC)などと連携して、分析結果を活用
- 距離計算、最近傍検索、ジオフェンシング、クラスタリングなど、多彩な空間解析機能を搭載


# Spatial Studioの環境構築

## ADBの作成
Spatial Studioの利用にはADBが必要になるので以下の記事を参考に作成してください。

https://qiita.com/tdaimon/items/50bef4156f69cf7166b3

## リポジトリ用のスキーマ作成

OCIコンソールのADBの画面でデータベース・アクション→SQLをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/1018e93d-4fc9-4375-9c83-1e9baf13e831.png)
すると、以下の画面に遷移します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/53c21879-96a0-4bf0-81a0-56030fbb0df0.png)


以下のコマンドでリポジトリ・スキーマを作成します。
ここではstudio_repoという名前でスキーマを作成します。
```
CREATE USER studio_repo IDENTIFIED BY <password>;
```
実行ボタンをクリックします。※パスワードは任意のものに変えてください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/9b6799c3-99e5-4110-9f13-63ac29533f95.png)

問題が発生しなければ以下のように出力されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/87f93b05-5945-4b7d-a48d-acfe1b42a725.png)

## 表領域の割り当て
studio_repo のデフォルト表領域を data に設定します。
これにより、studio_repo ユーザーが新しく作成するオブジェクト（テーブルやインデックスなど）は、特に指定しない限り data 表領域に格納されます。
```
ALTER USER studio_repo DEFAULT TABLESPACE data;
```
利用できる表領域を制限します。
QUOTA 250M ON data により、studio_repo ユーザーが data 表領域に格納できるデータの最大サイズが 250MB に制限されます。
これにより、studio_repo ユーザーが data 表領域に無制限にデータを格納することを防ぐことができます。
```
ALTER USER studio_repo QUOTA 250M ON data;
```
実行すると以下のように出力されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/df0110a1-b5bf-4e89-8a9a-c6c9fe6ae783.png)

## 権限の付与
studio_repoに各種権限を付与します。
```
GRANT CONNECT,
      CREATE SESSION,
      CREATE TABLE,
      CREATE VIEW,
      CREATE SEQUENCE,
      CREATE PROCEDURE,
      CREATE SYNONYM,
      CREATE TYPE,
      CREATE TRIGGER
TO studio_repo;
```
実行すると以下のように表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/0eda7c0a-0ebd-4072-8544-6a4ccc2bb705.png)

## ウォレットのダウンロード

OCIコンソールのデータベース接続をクリックします。
![画像6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/f767c3b0-aba0-4b30-8e79-694f1a705926.png)

ウォレットのダウンロードをクリックします。
![画像7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/ebd33cab-1903-48f6-bd24-6fca20216c22.png)

任意のパスワードを入力し、ダウンロードをクリックします。
![画像9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/11391838-5530-4eeb-bd3c-c2c03136abb6.png)
ダウンロードしたウォレットは後ほど使います。

## Spatial Studioの構成
OCIコンソールのハンバーガーメニューからマーケットプレイスをクリックします。
![画像10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/613e5c23-f989-4c76-a5fe-60163e86a8fb.png)

Sptial Studioと検索し、Oracle Spatial Studioをクリックします。
![画像11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/f505912a-bc44-4324-91ea-019ff7eb83ac.png)

スタックの起動をクリックします。
![画像20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/6960e3e4-937e-4e87-b164-1bcd64515f79.png)


名前と説明を入力しNextをクリックします。
![画像13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/7fce8633-7177-450f-a71d-caf04c3b5f47.png)

AD、インスタンスのシェイプを選択します。ここではVM.Standrd.E5 Flex、1OCPU、メモリ16GBとしています。
![画像14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/ea9c7992-58d9-44fe-ab4a-ebf6b8cb4b82.png)

任意のパスワードを入力します。
![画像15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/24b398b5-b776-46ec-b2d2-9867d8093b99.png)


この例では既存のVCN、既存のパブリックサブネットを利用しています。
![画像16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/ca9f9d14-54d8-4efc-bf8e-65802b632036.png)

公開鍵をアップロードします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/d2a84767-7a1d-4fca-9460-6f1fade5d481.png)

先ほど作成したADBを選択します。
![画像17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/fd3e24d0-0d9a-4aa6-a82b-d8f88b61e4a0.png)

ADBのパスワードを入力します。
![画像18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/80a25d5f-42a8-4a8a-b60e-9f03f6ef06c6.png)

入力内容を確認し作成をクリックします。
![画像19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/ca633574-dac3-46f3-8f4d-8dcaa037a8a5.png)

受け入れ済みと表示されます。 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/53b2304f-15cc-4702-a138-ab5352cfd217.png)

1分程で成功という表記に変わります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/dc1ebc2d-6e8a-473f-90c5-fac369c54d25.png)

## Spatial Studioへのログイン
画面下部にあるログを下までスクロールします。
![画像21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/7ed0915a-6f89-4de8-917d-f0aae6fc3dd0.png)

instance_https_urlの記載があるのでこちらにブラウザでアクセスします。
![画像22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/8f9143fc-c1b8-4f35-b894-bf56af9a8607.png)

詳細設定をクリックします。
![画像23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/cb959858-8316-4796-b9b7-5d41335eb3b4.png)

xxxx.xxxx.xxxx.xxxxにアクセスする（安全ではありません）をクリックします。
![画像25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/98f0022b-226b-46d9-a397-d0e69dc7f5a8.png)


User Name、Passwordを入力し、Languageは日本語を選択します。
Loginをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/507e05bb-930e-468b-ae81-abb8c0f2f324.png)

ログイン時に、使用するデータベースの情報の入力が求められます。
Oracle Autonomous Databaseを選択して次をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/b9b567c6-5d48-4530-93a8-d3618b53507a.png)

先ほどダウンロードしたウォレットをドラック＆ドロップして、OKをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/e4b8e982-2e41-4465-b1fc-67cc9c5354fc.png)

User：studio_repo
Password：先ほど設定したもの
を入力してOKをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/019a93c3-0503-4b5e-a46d-d0d4a4331806.png)

以下のような画面が表示されたらログイン成功です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3766517/236d0acd-6257-4d36-b0ba-672515834543.png)

# まとめ
ここまででSpatial Studioの環境準備は完了です。
次回は駅データをロードして、地図上にマッピングしてみようと思います。
参考にした記事のUIが古いものとなっているためアップデートの意味も込めて記事を作成しています。

Spatial Studioで地図上に駅をマッピングしてみた - 実践編

https://qiita.com/tdaimon/items/b82e502f497872cbe9b2


# 参考

https://oracle-japan.github.io/ocitutorials/adb/adb214-spatial-studio/