12/19/2015

Raspberry Pi な IoT デバイスを OMS で管理してみる

 

本記事に関して Joseph Chan からコメントもらいました!うれしいですね!

 

 こんにちは。今年も残すことあとわずかですね。実は先日しばやんからRaspberry Pi Zeroを譲ってもらいました。一足早いクリスマスプレゼントです。赤い鳥もサンタの帽子に見えてきます。ありがとう、しばやん!

 さて、今回の Blog は Azure Advent Calendar 2015 に参加したものになっています。前日はのりじさんのデザインデータのバックアップ問題をAzure Backupで解決してみるでした。

 2015年を振り返ってみると、デバイスとしては Raspberry Pi 2 や、Raspberry Pi Zero が出て世間を騒がせたり、3G/LTE ネットワークを含む IoT プラットフォームとしては SORACOM Air がサービス開始され世間を騒がせたり、Microsoft Azure では Event Hubs と Stream Analytics に感動したりと、IoT 周辺が面白い感じになってきました。今回は、そんな IoT デバイスのログ管理によるセキュリティ対策を考えてみようと思います。

2015

 

Raspberry Pi と Syslog

 Raspberry Pi の Linux は Raspbian が有名ですね。その Raspbian の rsyslog では、デフォルトでmicro SDのストレージにログが書かれるように設定されています。何回も書き込みが行われるので、micro SDが壊れないか心配です。また、書き込みが行われないようにログの出力を無効にするのはセキュリティ的もにやりたくありません。だけど、もしログを書き込んでいたとしても、あまりログを見ることはないのではないでしょうか?さらに複数のIoTデバイスのログの閲覧は大変ですよね。

 そこで今回はOMSを使って、いつでも全てのRaspberry Piのログを確認できるようにします。インターネットサーバなどのセキュリティソリューションをIoTデバイスに対しても使ってみようと思います。

 

OMSとは

 OMS (Microsoft Operations Management Suite)は、Azure、AWS、VMware そしてOpenStackなどの、あらゆるハイブリッド クラウド環境に置いている Windows Server、Linux Server を包括的に低コストで管理するソリューションです。これらのServerから取得する情報としては、以下のように大きく分けて2つあります。システム全体としては、Azure BackupAzure Site RecoveryAutomationなどと一緒に使うと効果的に管理できます。

 ログに関しては、サーバからOMSのストレージに送信するため、複数サーバのログをまとめて管理し、横断的にセキュリティ観点の分析することが可能です。現段階で取得可能なログは、Windows Serverのイベントログ、Linux ServerのSyslog、Nagiosのアラート、Zabbixのアラートとなります。

 パフォーマンスカウンタも取得することか可能です。Windows Serverの場合はすでに用意されているパフォーマンスカウンタの情報を取得すると想像できますが、Linuxに関してはOMIとSCXを使ってパフォーマンスカウンタとの取得とマッピングを行っているようです。

f01

 なお、多くの方が画像や映像で見ているOMSのダッシュボードは、Operational Insitesというサービスとなっており、Azure PortalからOMSを追加する際は、このOperational Insitesを選択します。それでは、実際に作ってみます。

Operational Insitesの作成と設定

 それでは、OMSを利用してみます。Azure PortalからOperational Insiteを作成します。選択すると昔のポータルにジャンプします。

01

 昔のポータルでワークスペースの名前と、サービスティアのプランを選択します。

02

 昔のポータルでOperational Insitesのワークスペースが作成されたことを確認して、下の管理アイコンをクリックします。

03

 ここからOMSになりました。まずはメールアドレスを教えます。

04

 OMSのアカウントにメールアドレスを追加します。これにより、定期的に状態のレポートが送られてきたりします。

05

 ようやくOMSにログインすることができます。OMSのリード・プログラム・マネージャの @jochan_msft のTwitterも表示されてますね!

最初は、ソリューションが選ばれていないのと、どのサーバとも接続していないので、まずは、その辺りの設定から始めます。大きな青色の四角のSettingsをクリックして設定を始めます。

07

 設定を始めると、ソリューションの選択画面になります。今回はLog Serchだけでいいのですが、全部にチェックを入れました。現段階では、Windows Serverを使っている場合などは、セキュリティの問題などアラートが表示されます。

09

 次は、サーバとの接続です。今回はLinuxを管理するので、Linuxエージェント(プレビュー)のダウンロードをクリックします。

11

ダウンロード先のGitHubが表示されました。

12

下のほうに行くとダウンロードのURLがあります。Linuxのコマンドでuname -mを実行したときに x86 か x86_64 と表示されるので、x86の場合は32bitを、x86_64の場合は64bitをダウンロードします。

12a

Linux上でwgetやcurlを使うと便利ですね。ダウンロードしたファイルを実行するとインストールが完了します。

13

OMSの画面で確認すると、”1 SERVER CONNECTION” となっており、接続が成功したことがわかります。

14

次にDATAのタブに移り、取得するパフォーマンスカウンタの確認をします。

15

後は取得するSyslogの設定です。最後に、画面下のSAVEをクリックして完了です。

17

ログも送られてきていますね。

18

 

Raspberry PiをOMSに接続する

 サーバに関しては上記の方法でOMSと接続しましたが、次はRaspberry PiをOMSに接続します。IoTデバイスと関係するサーバのログをまとめてOMSで管理します。

f02

 では、Raspberry PiにOMSエージェントを入れてみます。GitHubに用意されているインストーラーはx86かx86_64向けなので、そのまま利用することができません。GitHubには関係するソースコードがありますので、それを使ってインストールしていきます。OMSエージェントはFluentdを使用しているため、FluentdのプラグインとしてOMSに接続しているようです。サーバ向けのOMSインストーラは、RubyやFluentdを含んだパッケージになっていましたが、Raspberry Piでは、Raspberry Piでインストールできる普通のRubyとFluentdを使ってみます。以下のコマンドを実行するとインストールできますので参考にしてください。

# fluentdをインストール
sudo aptitude install ruby-dev git make
sudo gem install fluentd
sudo fluent-gem install fluent-plugin-td

# OMSエージェントのユーザ作成
sudo adduser omsagent

# GitHubからOMSSエージェントの取得
git clone https://github.com/Microsoft/OMS-Agent-for-Linux.git

# OMSエージェントのインストール:ディレクトリ関係作成
sudo mkdir -p /etc/opt/microsoft/omsagent/certs
sudo mkdir -p /etc/opt/microsoft/omsagent/conf/omsagent.d
sudo mkdir -p /etc/opt/microsoft/omsagent/sysconf
sudo mkdir -p /etc/opt/microsoft/scx/conf
sudo mkdir -p /opt/microsoft/omsagent/bin
sudo mkdir -p /opt/microsoft/omsagent/plugins
sudo mkdir -p /var/opt/microsoft/omsagent/tmp
sudo mkdir -p /var/opt/microsoft/omsagent/run
sudo mkdir -p /var/opt/microsoft/omsagent/log
sudo mkdir -p /var/opt/microsoft/omsconfig/log
sudo mkdir -p /var/opt/microsoft/omsconfig/run
sudo chown omsagent:omsagent -R /var/opt/microsoft/omsconfig
sudo chown omsagent:omsagent -R /var/opt/microsoft/omsagent
sudo ln -s /usr /opt/microsoft/omsagent/ruby
sudo ln -s /usr/local/bin/fluentd /opt/microsoft/omsagent/bin/omsagent

# OMSエージェントのインストール:Syslog送信に必要なプログラムのコピー
sudo cp OMS-Agent-for-Linux/installer/scripts/auth_key.rb /opt/microsoft/omsagent/bin/
sudo cp OMS-Agent-for-Linux/installer/scripts/omsadmin.sh /opt/microsoft/omsagent/bin/
sudo chmod u+x /opt/microsoft/omsagent/bin/omsadmin.sh
sudo cp OMS-Agent-for-Linux/installer/scripts/service_control /opt/microsoft/omsagent/bin/
sudo cp OMS-Agent-for-Linux/installer/scripts/omsagent.ulinux /etc/init.d/omsagent
sudo chmod u+x /etc/init.d/omsagent
sudo cp -Rf OMS-Agent-for-Linux/source/code/plugins /opt/microsoft/omsagent/

# OMSエージェントのインストール:Syslog送信に必要な設定ファイルのコピー
sudo cp OMS-Agent-for-Linux/installer/conf/omsagent.conf /etc/opt/microsoft/omsagent/conf/
sudo mv /etc/rsyslog.conf /etc/rsyslog.conf.default
sudo cp OMS-Agent-for-Linux/installer/conf/rsyslog.conf /etc/

# OMSエージェントのインストール:インストール状態のファイル作成(SCXは今回インストールしていないので手動で作成)
sudo echo "1.0.0-47 20151102 Developer_Build" > /tmp/installinfo.txt
sudo echo `date +%Y-%m-%dT%H:%M:%S` >> /tmp/installinfo.txt
sudo mv /tmp/installinfo.txt /etc/opt/microsoft/omsagent/sysconf/
sudo echo "OSName=Ubuntu" > /tmp/scx-release
sudo echo "OSVersion=14.04" >> /tmp/scx-release
sudo echo "OSFullName=Ubuntu 14.04 (x86_64)" >> /tmp/scx-release
sudo echo "OSAlias=UniversalD" >> /tmp/scx-release
sudo echo "OSManufacturer=Canonical Group Limited" >> /tmp/scx-release
sudo mv /tmp/scx-release /etc/opt/microsoft/scx/conf/

ここまでインストールを進めたら、OMSと接続してキーを作ります。下記のコマンドにワークスペースIDとキーを入力して実行します。

# OMSエージェントのインストール:OMSとの接続キー作成
sudo /opt/microsoft/omsagent/bin/omsadmin.sh –w <workspace id> –s <key>

あとは、Syslogだけ取得するようにFluentdの設定を行います。

# OMSエージェントのインストール:Syslog送信向けに設定
sudo vi /etc/opt/microsoft/omsagent/conf/omsagent.conf

下記のように、不要なところを消して、入力と出力とフィルタを残した設定になります。

# This file is an example of what the config file pushed by the server should look like

@include omsagent.d/*.conf

# Heartbeat
<source>
  type exec
  tag heartbeat.output
  command /opt/microsoft/omsagent/bin/omsadmin.sh -b > /dev/null
  format tsv
  keys severity,message
  run_interval 20m
</source>

<source>
  type syslog
  port 25224
  bind 127.0.0.1
  tag oms.syslog
</source>

<filter oms.syslog.**>
  type filter_syslog
</filter>

<match oms.**>
  type out_oms
  log_level debug
</match>

標準のRubyとFluentdを使うため、起動時にプラグインのディレクトリとコンフィグファイルを指定するように起動スクリプトを少し変更します。

sudo vi /etc/init.d/omsagent

下記のSTART_QUALSを探して、プラグインとコンフィグファイルの指定をします。

START_QUALS="-d $PIDFILE --no-supervisor -o $LOGFILE"
上記の行を下記のように-pと-cを追加します。
START_QUALS="-d $PIDFILE --no-supervisor -o $LOGFILE -p /opt/microsoft/omsagent/plugins -c /etc/opt/microsoft/omsagent/conf/omsagent.conf"

あとは、rsyslogとして取得するログの設定を変更します。

sudo vi /etc/rsyslog.conf

標準の設定でもよいのですが、下記のようにすると全てのSyslogを送信します。

*.*              @127.0.0.1:25224

最後に、OMSエージェントを動かします。omsagentを先に起動してから、rsyslogを再起動します。

sudo service omsagent start
sudo service rsyslog restart

 

さいごに

 Raspberry PiでもOMSを使うことができるなんて最高ですね。IoTデバイスのログをOMSで検索したりできるので、どのようなアクセスが来ているかもすぐ確認することができます。また、サーバ側もあわせて横断的にログの検索ができるようになります。また、ログはRaspberry Piのストレージに保存されないので、もし侵入者がRaspberry Piにログインされたとしても自分の痕跡のログを削除することもできなくなります。

 Linux版のOMSエージェントはプレビューですので、上記の内容は変わってしまうこともあるとも思いますが、是非Raspberry Piのインストーラーもリリースしてほしいです!Microsoft がFluentdを使っているのにも驚きました。変わりましたね!

次のAdvent Calenderは、とくがみさんですね、よろしくお願いします!

10/17/2015

ソラコム Developers Conference ♯0で SORACOM と Azure との IoT を話してきた

 

10月16日に渋谷のdotsで開催された、「ソラコム Developers Conference ♯0」で登壇しました。会場は200人以上の参加者で埋め尽くされ、UstによるLiveストリーミングは260名でした。聞くところによると申し込みされた方はもっと沢山いたのですが、会場のスペースにより、仕方なく抽選になったようです。

http://eventdots.jp/event/570054

 

私の資料はこちら。

当日のビデオはこちら。私は、1:29ぐらいから。

SORACOMとAzureを知ってもらうことを目標に資料を作成してみました。参加者の方からAzureに対する驚きと、Stream Analyticsの感動に関して、いくつかコメントいただけましたので、目標は達成したと考えています。(SORACOMは既にみなさん知っていた)

ソラコムさん。呼んでいただき、ありがとうございました。すごく楽しかったです!今後ともよろしくお願いしますー。

ではまたー

10/03/2015

SORACOMとAzureでIoTをやってみた(Event Hub編)

 

 みなさんこんにちは。今回は 2015年9月30日にリリースされた ソラコムSORACOM AirSORACOM Beam を、 Microsoft Azure で使ってみたいと思います。Microsoft Azure で利用するサービスは、皆さんおなじみの Event Hub、Stream Analytics と Power BI を使った Cortana Analytics になります。

 センサーは Raspberry PI に接続した秋月電子の「BME280使用 温湿度・気圧センサモジュールキット」と「TSL2561使用 照度センサーモジュール」を想定していますが、こちらの接続方法まで記事に含めると主旨がわかりにくくなるので、今回は割愛させてください。

soracomsimraspi

 2015年9月30日(日本時間)という日は、AzureConで IoT Suite のアナウンスと、SORACOMのアナウンスがあり、IoTの運命的な出会いを感じますね! ;)

  1. SORACOMってなに?
  2. 今回のシナリオ
  3. SORACOM Beam から IMSI取得
    1. Azure Web Appsの作成
    2. SORACOMユーザコンソールのSORACOM Beam設定
    3. IMSI情報の取得を確認
  4. Event HubにJSONで送信
    1. Event Hubの作成
    2. Raspberry PIの送信プログラム作成
    3. Event Hubで受信を確認
  5. 受信データを分析する
    1. Stream Analyticsの作成
    2. Power BIでデータの確認
  6. 最後に

 

1. SORACOMってなに?

 SORACOMは、IoTデバイス向けに最適化された「つなげる」を提供するIoTプラットフォームです。現段階の主なサービスは、SORACOM Air(IoTデバイス向けの LTE/3G ネットワーク提供)と、SORACOM Beam(IoTデバイスのクラウドオフロード等を提供)です。

 

2. 今回のシナリオ

 今回は、Raspberry PIに接続されたセンサー情報を Power BI で分析するシナリオを紹介します。Raspberry PI のセンサー情報は SORACOM を経由してMicrosoft Azure に送られた後、データ整形されて Power BI に送られます。

  1. SORACOM Beamを経由してIMSI情報を取得
  2. 取得したIMSI情報とセンサー情報を、Event HubにJSONフォーマットで送信
  3. 送られてきたデータを単位時間のデータとしてデータ整形した後、Power BIで利用

 また、今回の構成では SORACOM Beam を使用していますが SSLのオフロードのためではなく、デバイス識別のために SIMカードのIMSI情報を取得するために使用しています。取得したIMSI情報は、センサーデータとともにMicrosoft Azure へ送信します。データをIMSIで管理すると、デバイス管理も便利になりますね。

 

00

 なお、Event Hubへの通信には SORACOM BeamのSSLのオフロードは使用していません(IMSIの取得には使っています)。Raspberry PIのようなパワーのあるLinuxなどのデバイスには Microsoft Azure が用意するSDKが存在し、これらのSDKはデバイスとAzureの間でSASトークンとSSLを使用したEnd-to-Endのセキュリティの仕組みが組み込まれているためです。また、Event Hubも一秒当たり数百万のイベントを直接デバイスから受けることができるので、間に入る部品をなるべく少なくしたほうが良いと考えたからです。Arduinoなどを使う場合や、Raspberry PIでも通信費を抑えるためにSDKを使わない方法(HTTPヘッダを通信に含めないなど)を考える場合は、SORACOM Beamのオフロードを使ったほうが良いと思います。

 

3. SORACOM Beam から IMSI取得(図の1の箇所)

 SORACOM Beamを使ってIMSI情報を取得します。②のEvent Hub に送信する JSON に IMSI情報を含めるためです。SORACOM Beamを経由したHTTP通信ではHTTPヘッダにIMSI 情報が追加されるため今回はAzure Web app を使いIMSI情報を取得します。まずは、SORACOM Beam経由のHTTPSリクエストを受けるためのAzure Web appを作成した後に、SORACOMのユーザコンソールでSORACOM Beamを設定します。

 

3.1. Azure Web Appsの作成

 Azureのポータルから Azure Web Apps の Web app でアプリケーションを作成します。今回は HTTPの要求ヘッダ情報を取得するためにPHPを使っています。ToolsのExtensionsからVisual Studio Onlineを使うと便利です。

0101

01

index.phpのコードは下記のような感じです。

3.2. SORACOMユーザコンソールのSORACOM Beam設定

 次は、SORACOM のユーザコンソールで、SORACOM Beam の設定を行います。ユーザコンソールを開いた後に、SIM の Group に HTTP Entry Point の設定を追加します。

02

 HTTP Entry Point の設定では、先ほど作成したAzure Web appのホスト名を指定し、IMSIヘッダをONにします。これにより、SORACOM Airから http://beam.soracom.io:8888/ にアクセスがあると、そのリクエストに”X-Soracom-Imsi"のヘッダが追加されます。これにより、Azure Web appでIMSI情報の取得を行います。

03

以上で、SORACOM Beamの設定は完了です。

04

 

3.3. IMSI情報の取得を確認

 SORACOM Beam と Azure Web app の接続を確認します。SORACOM Air に接続された Raspberry PI から、wget を使って SORACOM Beam にアクセスします。例えば、下記のような感じで環境変数としても使うことができます。

 

4. Event HubにJSONで送信(図の2の箇所)

 次は Raspberry PI からのセンサー情報を Event Hub で取得する箇所です。Event Hubを作成した後にRaspberry PIの送信プログラムを作成します。

 

4.1. Event Hubの作成

 AzureのポータルからEvent Hubを作成します。Event HubはService Busの一部となっているため、初めにService Busの作成から始めます。

0701

ポータルからEvent Hubをクリックすると、少し画面のデザインが異なる旧ポータルに変わり、サービスバスの名前空間の作成が開始されます。TypeにMessagingを選択し、好きなMessaging Tierを選択します。

07

次に、作成されたService Busの名前空間からEvent Hubを作成します。今回は簡易作成を選択しています。

08

 Event Hubが作成されたら共有アクセスポリシーの設定を行います。Raspberry PIからデータを受け取るポリシーとして SendRuleを作成します。また、Stream AnalyticsからのアクセスポリシーとしてReceiveRuleを作成ます。パーミッションは以下の通りです。

  1. SendRule:送信
  2. ReceiveRule:管理、送信、リッスン

設定したら、画面下の保存を忘れないようにしてください。これでEvent Hubの作成は完了です。

09

 

4.2. Raspberry PIの送信プログラム作成

 Raspberry PIからAzure Event Hubにデータを送信するために、プログラムを作成します。今回のRaspberry PIは、LinuxとPythonを使用します。以下のように追加でパッケージなどをインストールします。

 Pythonの実行環境が整いましたので、以下のようなプログラムを作成します。プログラムの中では、16行目辺りでSORACOM BeamからIMSI情報を取得して、そのIMSI情報を27行目のJSON内のDeviceIDとして使用しています。こうすることで、Raspberry PIを出荷する際は同じイメージを用意しておいても、Azure Event Hubに送られてきたセンサーの情報をSIMのIMSI情報で管理することができるようになります。SORACOMユーザコンソールでもIMSIを元にSIMの管理を行うため、管理が楽になりますね!(センサーから情報を取得する箇所は割愛しています)

なお、8行目の共有アクセスキーは、Event Hubの構成ページから取得してください。

10

 作成したプログラムは、cronなどで動かすと定期的にセンサーから取得した情報をEvent Hubに送信できるので便利です。

 

4.3. Event Hubで受信を確認

Event Hubで受信しているデータは、Event Hubのダッシュボードで確認することができます。

11

 

5. 受信データを分析する(図の3の箇所)

 受信したデータは Stream Analyticsを使用して Event Hub からのデータ取得と、30秒間隔の平均値計算、そして、計算された結果を Power BI に送信しています。

 

5.1. Stream Analyticsの作成

それでは、Azure ポータルからStream Analyticsを作成します。

12

 作成された後は、次の順で設定を行います。始めにInputの作成、次にOutputの作成、最後にQueryの作成です。下図のJob Topologyを順にクリックしていきます。

13

 Input の作成では、前に作成した Event Hub の ReceiveRule ポリシーを指定して設定を行います。なお、エイリアス名は後で説明する Stream Analytics の Query 内で使用する文字列になるので”-“文字は使用しないようにしてください。入力が終わったら Create をクリックします。

14

 次に、Output の作成です。今回は Power BI への出力ですが、現段階ではプレビューということもあり、少しデザインの異なる旧ポータル画面からの作成となります。

15

 Power BIとの接続が行われます。すでにPower BIのアカウントを持っている方は、組織アカウントを入力が求められます。

16

 Stream AnalyticsのQueryで使用するエイリアス名と、Power BIで使用されるデータセット名、テーブル名、グループ名を設定します。こちらも、エイリアス名には”-“を使用しないほうが良いでしょう。

17

 最後にQueryを設定します。今回はDeviceIDをグループにして、30秒間の平均値を生成しています。FROMでEvent Hubの入力エイリアスを指定して、INTOでPower BIの出力エイリアスを指定します。

18

Queryは以下になります。

全ての設定が終わったらStartをクリックして、Stream Analyticsを開始します。

19

 

5.2. Power BIでデータの確認

 Stream Analyticsから送られたデータはPower BIのデータセットとして入ってきます。このデータからレポートを作成し、ダッシュボードで表示することができます。

20

 

6. 最後に

 Microsoft Azure を使うと End-to-End の IoT システムを素早く構築することができるのがいいですね。あと、デバイスとクラウドの間は SORACOM の IoT プラットフォームが素早く安価に接続してくれるので最高にうれしいです。

 今回はデータをそのまま Power BI に送ってしまいましたが古いデータは捨てられてしまうので、SQL Database に保存したり、Storage Blob に入れたりするなど、データの分析で使用しやすいように保存してください。

 時代の変わり目を体験することができてうれしかったです。IoT を利用した未来を考えると凄くワクワクしますね!

9/16/2015

Azure Data Catalogを使ってみた

こんにちは。Azure Data Catalogというサービスはご存知ですか?Azure Data Catalogは、組織で持つデータをカタログ化することにより、みんなでデータを有効利用することを進めるサービスです。今回はAzure Data Catalogを触ってみましたので紹介します。

 

1. カタログの設定

カタログを初めて使う場合は、カタログの設定から始まります。まず、下記のURLにアクセスしてください。組織アカウントでログインします。(マイクロソフトアカウントではカタログ利用できませんでした)

http://www.azuredatacatalog.com/

まず、カタログ名、サブスクリプション、ロケーションを設定します。

01

エディションを選択して、組織アカウントでユーザと管理者を追加します。その後、カタログの作成をクリック。

02

 

2. データのパブリッシュ

カタログが作成されたら、右上にあるパブリッシュをクリックして、データをパブリッシュします。アプリケーションを使用してデータを追加するか、マニュアルで追加するか選びます。

04

今回はアプリケーションを使用したデータ追加を試します。クリックするとアプリケーションのインストールが開始されます。

05

アプリケーションが起動した後、同じ組織アカウントでサインインします。

07

2-1. SQLデータをパブリッシュ

サインするとデータソースを選択する画面になります。初めはSQLのデータを追加してみます。

09

Connection Test Failedのメッセージが出たら、SQLサーバのファイアウォール設定を確認します。クライアントからの接続を許可します。

10

SQLサーバに接続できると、テーブルを選択する画面になります。右下のプレビューを含めるにチェックを入れるとAzure Data CatalogのDiscover画面でデータをプレビューできるようになります。選択したら登録ボタンをクリック

20

 

2-2. Storage Blobオブジェクトをパブリッシュ

次は、Storage Blobのデータをパブリッシュします。Storage Blobのアカウントとアクセスキーを入力します。

15

オブジェクトを選択します。Storage Blobはプレビューが無いみたいですね。

16

 

3. Discoverでデータを探す

パブリッシュされたデータは、Discoverで探すことや確認することができます。検索は左側の検索ボックスや、フィルターのチェックボックスrを使用します。また、このDiscoverでは、どのようなデータが入っているかわかりやすくるために、説明やタグを設定することができます。これらのプロパティ情報は左側の検索ボックスやフィルターで利用されます。

19

複数のデータソースが登録されていても検索で探すことができます。

21

 

3-1. どのようなデータか確認してみる

データソースを追加する際に利用したプレビューチェックにより、どのようなデータが入っているか、テーブルのレコードを確認することができます。

23

カラム内容も確認することができます。カラムの説明も入力することができます。

22

 

3-2. データのアクセス方法の提示

データカタログは、組織が持つデータを組織内のユーザに提供するためのカタログを提供しますが、データソースへのアクセス方法も提示することが可能です。アクセスを管理している担当者のメールアドレスであったり、データ利用のためのプロセスの手順書などを、データプロパティ内Request Accessに記載します。

24

 

4. さいごに

いつでもデータを引き出せるように、みんなでデータソースのカタログを作ると便利になりますね。地味なサービスですが、組織内で持つデータの有効活用には必要なサービスですね。