【MarkLogic】データを登録してみる（管理画面）

※書き溜めたものを随時貼っていく。
※試用版を使っています。

##フォレストの作成
まずはフォレストの作成が必要とのこと。
[Guide：Forest](https://docs.marklogic.com/guide/admin/forests#id_45952)

###フォレストって何？
フォレストの集合体がデータベースとなるらしい。

### イメージ図があったけど、もう少し進めてみないとわからないな。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/4c2a0eec-5bda-b389-501a-7e87063fd86f.png)
[管理者ガイドより抜粋](https://docs.marklogic.com/guide/admin-jp.pdf)

いったん下記で作成。細かい設定も可能なようだがまずは作る先行。

- 名前：Test
- 上限：100MB
- 権限：Read-Only

勿論この時点でDatabaseとの関連性はない。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/cf6e0545-e7b7-cd54-4018-7224dc3e5e68.png)

##データベースの作成
[Manual：Creating a New Database](https://docs.marklogic.com/guide/admin/databases#id_60599)

###マニュアルに従い、データベースを作る
- security database は推奨通り「Security」を選択
- schema databaseは一旦マニュアルと同じように「Schema」としておく。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/1f275302-75f2-51ee-234c-e248513f4325.png)

###フォレストとの関連付け

「Test」フォレストと関連付ける。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/f00ca720-3f55-2afa-3fa9-74aa398ad7fb.png)

フォレストの「Database」へも反映された。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/fb21b693-1bfe-d721-fde0-174b1d09d114.png)

##データベースにデータを登録す

東京都が公開しているオープンデータを取り込んでみる。(CSV) ※略。
[平成27年度 自動車交通騒音調査結果
](http://opendata-catalogue.metro.tokyo.jp/dataset/t000009d1800000014)

```
一連番号,測定地点の住所,環境基準類型,路線名,緯度,経度,座標系,車線数,道路種別,測定開始年月日,測定終了年月日,車道端からの距離(m),地上高さ(m),等価騒音レベル(ｄＢ)／昼間,等価騒音レベル(ｄＢ)／夜間
1,千代田区麹町4丁目5-20,C,国道20号（新宿通り）,35.683782,139.736748,JGD2011,8,3,2015-12-17,2015-12-18,6.2,1.2,67,65
2,千代田区神田錦町1丁目8-11,C,都道403号［大手町湯島線］（日比谷通り）,35.693161,139.764912,JGD2011,4,4,2015-12-17,2015-12-18,5.6,1.2,65,62
3,千代田区外神田3丁目5,C,都道452号［神田白山線］,35.701727,139.769424,JGD2011,4,4,2015-12-17,2015-12-18,2.5,1.2,66,66
```

- 管理画面のDatabasesメニューから取り込む。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/43cdc350-5393-33f9-5d48-aee6ffa058de.png)

- 登録しますか？→ OK
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/5bf87841-1b92-f558-d45e-4ba173bb9bbb.png)

- UTF-8でないことを通知され、失敗。WarningではなくError。
ちなみに今回登録したのはSJIS（CRLF）。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/274e6ec9-f6ca-9c72-98f6-e89871d43245.png)

- どうやらMarkLogicは内部的にUTF-8へ変換しているらしい。
[MarkLogic Server stores all content in the UTF-8 encoding](https://docs.marklogic.com/guide/ingestion/encoding)
<br>専用のコマンドラインオプションで変換がついてくるなどあるかもしれないが、追って確認する。
まさか「毎回UTF-8にエンコードしないと受け付けません」なんてことは…ないだろう多分。


- 再チャレンジ（文字コードをUTF-8へ変換した）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/e741bce6-cd0b-ff42-e92a-888738a8bdd9.png)
フォレストを読み取り専用にしていたので失敗・・・
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/da3e66dd-40a2-f4e5-2cff-22d8c606d1bd.png)
権限を更新して再実行（all=乱暴か??）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/9b359df8-3055-4760-2f24-01771971f556.png)

- OK
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/fc1ca09f-908c-7f1d-d0a0-6a44b733614b.png)

## 登録したデータを参照する

MarkLogicサーバのクエリコンソールから確認できそうだ。

```
http://localhost:8002
```

- Databaseを選択 > Explore > Explorer
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/a7d639b7-6b45-06e2-c09b-1d0b644022e9.png)
元と同じ形式（CSV）で参照できる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/383325/8da401e5-b864-6f65-ad5b-8bc8d77e0c43.png)

# その他
## MarkLogicサーバーが扱うデータ形式
[Creating and Configuring Forests and Databases](https://docs.marklogic.com/guide/admin/getting_started#id_13483)
>MarkLogic Server stores XML, JSON, XQuery, and JavaScript data in forests. App Servers connect to a database that, in turn, accesses one or more forests.

- XML
- JSON
- XQuery
- JavaScript