t0mmy.log

日々のコンピュータ周りのこと

WEB+DB Vol.94のOSSによるデータ分析基盤の構築メモ

WEB+DB PRESS Vol.94のOSSによるデータ分析基盤の構築で、
Embulk、Re:dash、Digdagを触ってみました。
Docker Machineが仮想マシンで使えない、CentOSだとRe:dash入らない等、
無知ゆえに結構手こずりました。 連載の行間メモ中心です。

環境

Ubuntu Server 14.04.5 LTS
Mac持ってないからしょうがなく、Re:dashの要求仕様により選定。)

WindowsのVirtual Box上で仮想マシン2台で構築。
Virtual Boxのネットワーク設定はアダプター1でブリッジ接続。
WindowsからターミナルソフトでUbuntuを操作したかったので。

共通設定

### SSH接続できるようにする
$ sudo apt-get install openssh-server

### IP確認 && ターミナルソフトで接続
$ ifconfig eth0

仮想マシン1台目

共通設定を実施する。  

Javaランタイムインストール

$ sudo add-apt-repository ppa:openjdk-r/ppa
$ sudo apt-get update
$ sudo apt-get install openjdk-8-jre

参考:Ubuntu 14.xにOpenJDK 8環境を構築 - Qiita

Embulkインストール

$ curl --create-dirs -o ~/.embulk/bin/embulk -L "http://dl.embulk.org/embulk-latest.jar"
$ chmod +x ~/.embulk/bin/embulk
$ echo 'export PATH="$HOME/.embulk/bin:$PATH"' >> ~/.bashrc
$ source ~/.bashrc

$ embulk --version
embulk 0.8.14

参考:GitHub - embulk/embulk: Embulk: Pluggable Bulk Data Loader. http://www.embulk.org

Vim設定

### TABを半角スペース2個にする
$ cat << EOF > ~/.vimrc
set expandtab
set tabstop=2
set shiftwidth=2
EOF
$ source ~/.vimrc

サンプルデータ取得

$ wget http://www.mizuhobank.co.jp/rate/market/csv/quote.csv
### 先頭2行を削除する
$ sed -i -e '1,2d' quote.csv
### 31-33列目に空白の列を含むため除去する(サブシェル使用バージョン)
$ (rm quote.csv; cut -d ',' -f 1-30,34- >quote.csv) <quote.csv

参考:指定行削除するコマンド(sed - それマグで!
参考:Linuxコマンドでテキストデータを自在に操る - orangain flavor
参考:シェルスクリプトを書くときに気をつける9箇条 - Qiita

PostgreSQLインストール

$ sudo apt-get install postgresql-9.3
### postgresユーザにパスワードを設定する
$ sudo passwd postgres
### postgresユーザに変身する(今後psqlする度に必須)
$ su - postgres
### postgreSQLにログインする
$ psql
### webdbというDBを作成する
postgres=# create database webdb;
### postgreSQLからログアウトする
postgres=# \q
### postgresユーザを終了する
$ exit

### クライアント認証設定を変更する
$ sudo vi /etc/postgresql/9.3/main/postgresql.conf
+ listen_addresses = '*' 

192.168.11.0/24は自分のLANの値に合わせる。
$ sudo vi /etc/postgresql/9.3/main/pg_hba.conf
- host    all             all             127.0.0.1/32            md5
+ host    all             all             127.0.0.1/32            trust
+ host    all             all             192.168.11.0/24         trust
$ sudo service postgresql restart

書籍ではconfig.ymlのuser項目がnaoyaですが、postgresとする。

参考:UbuntuでPostgreSQLをインストールからリモートアクセスまでの手順 - Qiita

Digdugインストール

$ sudo curl -o /usr/local/bin/digdag --create-dirs -L "https://dl.digdag.io/digdag-latest"
$ sudo chmod +x /usr/local/bin/digdag
$ digdag --version
0.8.17

仮想マシン2台目

共通設定を実施する。  

Re:dashインストール

$ wget https://raw.githubusercontent.com/getredash/redash/master/setup/ubuntu/bootstrap.sh
$ chmod +x bootstrap.sh
$ ./bootstrap.sh

参考:Setting up Re:dash instance — Re:dash documentation

後はWindowsのWEBブラウザから仮想マシン2台目のIPにアクセスすればRe:dashの画面が表示される。

WEB+DB PRESS Vol.94

WEB+DB PRESS Vol.94