---
title: 【Sisense Data Modeling】AWSのS3連携～ビルドまでCLIで一括自動処理
description: エンドユーザが作成するファイルを取り込みたい。しかし、Sisenseからアップロードはさせたくない、リモートデスクトップ接続はもってのほか…こんな時AWSのS3を共有フォルダ代わりにして、 CLIを使ってSisense Serverで取り込む方法をご紹介します。
image: https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/01_aws_cli-1024x587-Oct-07-2020-03-23-11-86-AM.png
---

![INSIGHT LAB_文字のみ_WHT-1](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png?width=400&height=110&name=INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png)

![INSIGHT LAB_文字のみ](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF.png?width=400&height=110&name=INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF.png)

[![お問い合わせ](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/5935783/a4a0266e-14ad-4388-b83f-681a6f35b8a7.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/5935783/a4a0266e-14ad-4388-b83f-681a6f35b8a7)

<https://knowledge.insight-lab.co.jp/sisense/data-modeling/s3-psm-cli#tmpmodule_1601616829590464>

- [Sisenseとは](https://service.insight-lab.co.jp/sisense)
- [Sisenseナレッジ](https://knowledge.insight-lab.co.jp/sisense)
- [セミナー](https://event.insight-lab.co.jp/sisense-seminar)
- [トレーニング](https://service.insight-lab.co.jp/data-analytics-dojo/training_course)
- [お役立ち資料](https://download.insight-lab.co.jp/sisense/download)

###### 3 分で読むことができます。

# [【Sisense Data Modeling】AWSのS3連携～ビルドまでCLIで一括自動処理](https://knowledge.insight-lab.co.jp/sisense/data-modeling/s3-psm-cli)

 執筆者 [Turtle](https://knowledge.insight-lab.co.jp/sisense/author/turtle) 更新日時 2020年10月16日

###### Topics: [Data Modeling](https://knowledge.insight-lab.co.jp/sisense/tag/data-modeling)

![【PSM】AWSのS3連携～ビルドまでCLIで一括自動処理](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/01_aws_cli-1024x587-Oct-07-2020-03-23-11-86-AM.png)

 目次

シャローム！Sato-Gです。  
このブログで使用しているSisense ServerはAWS上にある。  
エンドユーザがファイルを更新して、サーバにファイルをアップロードしてElastiCubeをビルドさせたいというニーズは結構あるよね。  
その際に、エンドユーザがビューアのライセンスしかないユーザなら、そもそもSisenseじゃサーバにアップロードさせることはできない。  
リモートデスクトップでサーバにコピーするなんてもっての外だ。

じゃあどうする？  
エンドユーザが使えるS3バケットを準備してあげて、エンドユーザにはS3にファイルをアップロードしてもらい、そこからEC2のドライブにコピーしてビルドを行うっていうのはどう？  
はい、では今回はS3連携でビルドするテクニックを紹介しよう。  
結構かんたん。

## 1.環境について

今回の環境は以下の通り

**・Sisense Server**  
Amazon EC2上のインスタンス  
**・アップロード用フォルダ**  
S3上にバケット(bucket-a)を作成し、その中にdummyというフォルダを作成  
**・アクセスキー**  
AKIAXXXXXXXXXXXXXXZ  
**・シークレットアクセスキー**  
SAK123XXXXXXXXXXXXXXXXXXXXZ

ユーザはCloud Berryのようなツールを使ってS3のdummyフォルダにファイルをアップロードする。  
Sisense ServerはバッチでS3のdummyフォルダ内のすべてのファイルをサーバの所定のフォルダにコピーし、ビルド処理を行うという流れ。

## 2.AWSの環境設定

### 2.1 CLIをセットアップする

AWSには**Amazonコマンドラインインターフェイス**という機能があり、これを使用するとファイル操作の自動化が行える。  
Sisense Serverで**[ここ](https://aws.amazon.com/jp/cli/)**からダウンロードし、インストールする。  
インストールは何ら難しいことはなく、デフォルトのままでいい。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/01_aws_cli-1024x587-Oct-07-2020-03-23-11-86-AM.png?width=1024&height=587&name=01_aws_cli-1024x587-Oct-07-2020-03-23-11-86-AM.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/01_aws_cli-Oct-07-2020-03-23-08-47-AM.png)

### 2.2 S3接続環境の設定

さっそくCLIを使って環境設定から始めよう。  
コマンドプロンプトを管理者モードで立ち上げる。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/02_cmd-1024x588-Oct-07-2020-03-23-13-81-AM.png?width=1024&height=588&name=02_cmd-1024x588-Oct-07-2020-03-23-13-81-AM.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/02_cmd-Oct-07-2020-03-23-10-29-AM.png)

S3の接続設定は以下のコマンドで行う。

```
aws configure
```

あとはプロンプトに沿って設定していく。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/03_config-1-1024x535-Oct-07-2020-03-23-12-89-AM.png?width=1024&height=535&name=03_config-1-1024x535-Oct-07-2020-03-23-12-89-AM.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/03_config-1-Oct-07-2020-03-23-05-98-AM.png)

Defalt region nameは日本（東京）の場合は、ap-northeast-1とする。  
またDefalt output formatは、text,json,tableから入力するが、今回は特に影響はないので、とりあえずjsonにしておく。

以上でS3のbucket-aはEC2サーバから見えるようになる。

### 2.3 コピーのバッチ作成

ファイルのコピーもCLIのコマンドで行うので、CLIのコマンドでバッチファイルを作成する。  
たった１行だけど。  
*aws s3 cp <バケット名> <コピー先のフォルダ> --recursive*  
recursiveというオプションは、再帰的つまり一つ一つ処理する時に使う。この場合は必要。

```
aws s3 cp s3://bucket-a/dummy/ C:\Data --recursive
```

今回はbucket-aの下のdummyバケットのファイルを全てローカルフォルダ(C:\\Data)にコピーする処理だ。  
仮にs3\_build.batというファイル名で保存しておく。  
cpがコピーコマンドで、ここをsyncにするとフォルダ間の同期を取ってくれる。

### 2.4 バッチ実行

バッチを実行すると、dummyフォルダに置いてあるdata.csvというファイルがサーバのDataフォルダ内にコピーされた。  
ユーザは今後、このdummyフォルダだけ意識すればよく、dummyフォルダにアップロードされたファイルがElastiCubeに反映されることになる。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/04_file-Oct-07-2020-03-23-11-12-AM.png?width=1011&height=528&name=04_file-Oct-07-2020-03-23-11-12-AM.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/04_file-Oct-07-2020-03-23-11-12-AM.png)

## 3.PSM.EXEでビルド

ビルドの対象となるファイルが所定のフォルダに配置された。  
しかし、Sisenseのビルド処理の中にバッチ実行を組み込むことはできない。  
ではどうするかー  
今回はビルド処理自体をバッチで行うように設定してみる。

### 3-1. PSMとは

SisenseもAWSと同様にCLIを持っている。こちらは新たにインストールするものではなく、以下の  
ディレクトリにexeファイルとして存在する**PSM.EXE**から実行する。

**▼PSM.EXE**  
C:\\Program Files\\Sisense\\Prism

詳細は以下のドキュメントを参照されたい。

**▼Sisense Shell (PSM.EXE)**  
[**Sisense Developers -Sisense Shell (PSM.EXE)**](https://developers.sisense.com/pages/viewpage.action?pageId=1409131)

### 3.2 ビルド処理のコマンド

PSMでビルドを実行するには以下のコマンドを実行する。

PSMを実行する前にディレクトリ移動を行う必要があるため、以下の2行をバッチファイルs3\_build.batに追加する。

```
aws s3 cp s3://bucket-a/dummy/ C:\Data  --recursive
cd C:\Program Files\Sisense\Prism
psm ecube build name="ec_sql_union" mode=restart serverAddress=localhost
```

このバッチファイルはS3からデータをコピーし、その後にビルド処理を行うというような一連の流れを自動で実行できる。  
実際に実行すると、こんなふうに処理される。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/05_execute-1024x536-Oct-07-2020-03-23-02-90-AM.png?width=1024&height=536&name=05_execute-1024x536-Oct-07-2020-03-23-02-90-AM.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/05_execute-Oct-07-2020-03-23-09-39-AM.png)

これをスケジュールで処理するのであれば、Windows側のタスクスケジューラに登録すればOKだ。

## 4.まとめ

Sisenseではビルド時にスクリプト処理は行えないため、CLIを使ってバッチファイルを作成してみた。  
AWSのCLI、SisenseのCLIとも、知っていれば色んなことができる。  
今回のポイントは  
**・エンドユーザからサーバにアップロードしてもらうのなら、S3バケットを利用してAWS CLIでサーバのコピーする。**  
**・Sisenseで複数の処理を組み合わせて実行したい場合はPSM.EXEを使用してバッチ処理を行えばよい。**

実際のバッチファイルも至ってシンプル！  
こんなもんでできるなら楽勝だよね。

ではまた！

Sisenseを体験してみませんか？

INSIGHT LABではSisense紹介セミナーを定期開催しています。Sisenseの製品紹介や他BI製品との比較だけでなく、デモンストレーションを通してSisenseのシンプルな操作性やプレゼンテーション機能を体感いただけます。

[![詳細はこちら](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/5935783/ff8d86bf-1184-4d92-8926-6a31a20de4b0.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/5935783/ff8d86bf-1184-4d92-8926-6a31a20de4b0)

- [Tweet](https://twitter.com/share)

![Turtle](https://knowledge.insight-lab.co.jp/hubfs/Sunflower.jpg)

#### 執筆者 [Turtle](https://knowledge.insight-lab.co.jp/sisense/author/turtle)

可視化領域を中心とした業務に従事しています。

###### [前の投稿](https://knowledge.insight-lab.co.jp/sisense/dashboard/color-palettes)

[![【REST API】REST APIでTableau風カラーパレットを追加する](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/11_tableaupalette-1024x567-Oct-07-2020-03-01-50-11-AM.png)](https://knowledge.insight-lab.co.jp/sisense/dashboard/color-palettes)

###### [【Sisense REST API】REST APIでTableau風カラーパレットを追加する](https://knowledge.insight-lab.co.jp/sisense/dashboard/color-palettes)

###### [次の投稿](https://knowledge.insight-lab.co.jp/sisense/widget/blox_iframe)

[![【BloX】BloX体験-3：Sisenseのダッシュボードに新垣結衣出演のチキンラーメンの動画を組み込んでみる](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/08_view-876x1024-Oct-07-2020-03-15-30-58-AM.png)](https://knowledge.insight-lab.co.jp/sisense/widget/blox_iframe)

###### [【Sisense BloX】BloX体験-3：ダッシュボードに新垣結衣出演のチキンラーメンの動画を組み込んでみる](https://knowledge.insight-lab.co.jp/sisense/widget/blox_iframe)

RECOMMEND こちらの記事も人気です。

<https://knowledge.insight-lab.co.jp/sisense/administration/ssl_lets_encrypt>

###### 4 分で読むことができます。

#### [【Sisense Administaration】無料のSSL証明書"Let's Encrypt"でSSL化してみる](https://knowledge.insight-lab.co.jp/sisense/administration/ssl_lets_encrypt)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/information/spotify_music_data_1>

###### 8 分で読むことができます。

#### [【API連携】Spotify音楽データの分析①【Sisense】](https://knowledge.insight-lab.co.jp/sisense/information/spotify_music_data_1)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/widget/step_line_chart>

###### 2 分で読むことができます。

#### [【Sisense Widget】折れ線グラフを階段状に表示する](https://knowledge.insight-lab.co.jp/sisense/widget/step_line_chart)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/widget/radarchart>

###### 3 分で読むことができます。

#### [【Sisense Widget】Radar Chartを使ってポケモンの種族値を表示してみた](https://knowledge.insight-lab.co.jp/sisense/widget/radarchart)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/formula/case>

###### 3 分で読むことができます。

#### [【Sisense Formula】CASE関数を使って条件分岐する](https://knowledge.insight-lab.co.jp/sisense/formula/case)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/widget/line-graph>

###### 3 分で読むことができます。

#### [【Sisense Widget】折れ線グラフにおける欠落値の対処法](https://knowledge.insight-lab.co.jp/sisense/widget/line-graph)

###### 2020年 10月 16日

##### 運営会社

運営会社

- [会社概要](https://www.insight-lab.co.jp/about/company.html)
- [お問い合わせ](https://contact.insight-lab.co.jp/main)

##### メニュー

メニュー

- Sisenseとは
- [Sisenseナレッジ](https://knowledge.insight-lab.co.jp/sisense)
- [セミナー](https://event.insight-lab.co.jp/sisense-seminar)
- [お役立ち資料](https://download.insight-lab.co.jp/sisense/download)

[![INSIGHT LAB_文字のみ_WHT-1](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png?width=200&height=55&name=INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png "INSIGHT LAB_文字のみ_WHT-1")](https://www.insight-lab.co.jp/)

- [プライバシーポリシー](https://www.insight-lab.co.jp/privacy.html)

Copyright © 2020 INSIGHT LAB, Inc.

<https://twitter.com/INSIGHTLAB_INC><https://www.youtube.com/channel/UCOKNKiO4uuza4NioSZpBMhg>