oneWEX検証メモ - (2)Windowsファイルシステムクローラーによるデータの取り込み

#はじめに
oneWEXを使ってみた時のメモです。
ここでは、Windowsファイルシステムクローラーによるデータの取り込みの辺りをやってみます。

##関連記事

インストール関連
[oneWEX導入メモ / Ubuntu編](https://qiita.com/tomotagwork/items/bdd48adf45140b584678)
[oneWEX導入メモ / RHEL7.6 オフライン編](https://qiita.com/tomotagwork/items/6ad047d0b72e199b7878)

検索関連
[oneWEX検証メモ - (0) 概要理解](https://qiita.com/tomotagwork/items/2c00007f45a3d2e482ea)
[oneWEX検証メモ - (1)ファイルシステムクローラーによるデータの取り込み / データセット、コレクションの作成](https://qiita.com/tomotagwork/items/00301322d4336b52d1e3)
[oneWEX検証メモ - (2)Windowsファイルシステムクローラーによるデータの取り込み](https://qiita.com/tomotagwork/items/1619624af8a64cf330d4)
[oneWEX検証メモ - (3)ContentMinerによる文書の検索](https://qiita.com/tomotagwork/items/24b5bbcc85c6bada41da)
[oneWEX検証メモ - (4)ApplicationBuilderによるWebアプリの作成と文書の検索](https://qiita.com/tomotagwork/items/a53b2c7f52cb1dcb68d9)

分析関連
[oneWEX検証メモ - (5)ContentMinerによる分析 / ガイド付きモード](https://qiita.com/tomotagwork/items/a9c381a477594453e2b1)
[oneWEX検証メモ - (6)ContentMinerによる分析 / 各種"ID情報"をベースとした分析](https://qiita.com/tomotagwork/items/9269fd31109638e6dd89)

API関連
[oneWEX検証メモ - (7)REST API](https://qiita.com/tomotagwork/items/7c1340f41333896f8fe3)


#全体像
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/4970636b-d193-704e-3a06-2495a0fd2446.png)


# データの取り込み
## 事前準備
### 対象のファイル配置
PDFとかExcelとか適当なファイルを作成して、WindowsServerに配置します。
(前回やった内容と同じ構造のディレクトリ/ファイルを配置します)

### Agentの導入
参考: [Windows ファイル・システムのエージェント・クローラー](https://www.ibm.com/support/knowledgecenter/ja/SS8NLW_12.0.0/com.ibm.discovery.es.ad.doc/iiysacwindist.html)

WindowsServer側に、Windows上のファイルをクロールするための専用のAgentを導入します。これは、Watson Explorer Deep Analytics Editionに含まれており、Watson Explorer Content Analytics Agent for Windows File Systems という名前でインストーラーが提供されています。
GUIのインストーラーが提供されているので、指示に従ってインストールすればOKです。
インストール先のディレクトリや、接続に使用するユーザー/パスワード、Listenするポート番号などを指定します。
デフォルトだとポート番号は8397,8398,8399番ポート(tcp)が使われます。
インストール後はWindowsの再起動が必要になります。
導入が完了すると、AgentはWindowsのサービスとして稼働します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/cfb9c42f-77c1-ee00-269b-1f58b0a93b47.png)

※Firewallがある場合、上のポート番号の通信を通す必要があるので注意！

### 対象ディレクトリの公開
参考: [エージェント・サーバーでの共有ディレクトリーの構成](https://www.ibm.com/support/knowledgecenter/ja/SS8NLW_12.0.0/com.ibm.discovery.es.in.doc/iiysiwdagentcfg.html)

どのディレクトリを公開するかというのをAgentに登録します。
これは、コマンドプロンプトからesagentコマンドで実行します。

```xxx:追加例
c:\>esagent --addshare c:\oneWexTest03
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

Adding share folder successfully.
```

```xxx:確認例
c:\>esagent --lsshare
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

===================== Share Folders =======================
 share0: c:\oneWexTest03
```

##データセットの作成

Admin ConsoleにてoneWexTest03という名前でデータセットを作成します。
クローラー・タイプとしては、「Windowsファイルシステムのエージェント」を選択します。
データソースのプロパティー欄では、WindowsServerのホスト名、Agentのポート、Agentアクセス用のユーザーID/パスワードを指定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/f0a99443-2225-0029-4a5c-8847c23e17d3.png)

上の画面のクロールスペースのアクションの所の"検索と追加"をクリック
Agentで公開したディレクトリが表示されるので、選択して追加をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/2c9b5c16-4e8c-97aa-ba00-05d0a6fb30b1.png)

クローラーの作成を完了し、クロールを実施します。

データセットoneWexTest03が作成されました(Windowsファイルシステムクローラー経由)。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/319614a9-7925-d520-ed21-bea2f858683e.png)


# データの解析/加工(コレクションの作成)
コレクションの作成手順は前回と同じなので画面キャプチャは割愛します。
oneWexTest03という名前で、上で作成した同名のデータセットを指定します。また、エンリッチの言語の識別で"日本語"のみを選択しておきます。あとはデフォルトで。

コレクションoneWexTest03が追加されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/e36f721d-b743-c99f-31fe-fe3306bcaa7d.png)


# データの検索/分析操作
ContentMinerから、上で作成したコレクションを選択してみると、前回作ったコレクションと同じように操作ができるのが分かります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/acd905e7-bf2f-6b0f-3ca2-09c44585a8e9.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132331/367ded33-221c-e0b0-e65d-25ff92d02080.png)


# クローラーごとの簡単な比較
さて、前回はローカルのファイルシステムをクロールしてデータを取り込んでみましたが、それとは若干取得されている様子が違っているようです。
クローラー経由でデータを取り込むと、自動的にメタデータファセットというものが付与されており、ファイルサイズや更新日付などの情報を取り込んでくれています。が、クローラーによって若干その辺りが違っているようです。

前回のファイルシステム・クローラー(ローカルのファイルシステム)と、Windowsファイルシステムクローラー(Agent経由)で気が付いた違いをまとめてみます。

||Test01(ローカル)|Test02(ローカル+NFS)|Test03(Agent)|補足|
|---|---|---|----|---|
|インフラ追加構成|dokerからファイルシステムマウント|dockerからファイルシステムマウント<br>NFS構成|Agent構成||
|クローラー|ファイルシステムクローラー|ファイルシステムクローラー|Windowsファイルシステムクローラー|
|メタデータファセットの種類|CrawlerName<br>CrawlerId<br>FileName<br>Title<br>CrawlSpaceId<br>Directory<br>FileSize<br>Extension|CrawlerName<br>CrawlerId<br>FileName<br>Title<br>CrawlSpaceId<br>Directory<br>FileSize<br>Extension|CrawlerName<br>CrawlerId<br>File_Name<br>Title<br>CrawlSpaceId<br>Directory_Name<br>File_Size|Test03のみExtension情報(ファイル拡張子)が取れない。<br>ファセット名のデフォルトが微妙に違う(カスタマイズは可能)。
|Directory情報|フルパス(例: /mnt/oneWexTest01/TroubleReport/チーム01)|フルパス(例: /mnt/oneWexTest01/TroubleReport/チーム01)|直前のディレクトリのみ(例: チーム01)| |