Redash の次と言われている superset
以前であれば、
VirtualBox に linux インストールして
という体力ありましたが、それも失せて来たので Windows7 x64 の Anaconda x64 の環境に入れてみました
参考
Anacondaインストール
サイトから Windows のバイナリを取得してインストール
手元のマシンが Windows7 の 64bit だったので、64bit の Python 3.6 を取得
インストール自体は何も考えず進めます
つまづく
インストール完了後、itfun.jp さんのページに沿って進めます
superset のインストールドキュメントに則り進めます
Anaconda Prompt で何も考えず、下記を実行
> python get.py > pip install cryptography > md c:\Temp
get.py はインストールドキュメントにリンクがあるのでダウンロードして実行します。
続いて pip と setuptools のアップデート
> pip install pip setuptools --upgrade
sasl のバイナリをここからダウンロードしインストール
今回の環境だと Python 3.6 の x64 用
> pip install sasl‑0.2.1‑cp36‑cp36m‑win_amd64.whl
ここまでは順調で、ついに superset のインストール
pip install superset
ここで、cryptography の build が開始し、OpenSSL の openssl/opensslv.h がない旨を告知されます
何も考えずにここから Windows 用 OpenSSL のバイナリ取得すると失敗します
libeay32.lib が存在しないと言われます
なぜなら Windows 用バイナリに含まれてないから・・・
OpenSSLをコンパイル
ここを参考に OpenSSL のコンパイル環境を整えます
まずは、Visual Studio 2015 Community のインストール
続いて、Active Perl のインストール
OpenSSL は公式サイトから openssl-1.0.2k.tar.gz を取得し、展開
Visual Studio C++ Build Tools の x64 の Native Build のコマンドプロンプトで下記コマンドを実行
もし、環境が 32bit なら x86 でやる必要があると思われる
> cd openssl-1.0.2k >perl Configure no-asm --prefix=c:\openssl\x64 VC-WIN64A >ms\do_win64a.bat >nmake -f ms\ntdll.mak install
c:\openssl\x86\bin c:\openssl\x64\bin 配下に
libeay32.dll ssleay32.dll の2つのファイルができます
早速、superset をインストール
> set LIB=c:\openssl\x64\lib > set INCLUDE=c:\openssl\x64\include > pip install superset
エラーなく完了
起動してみる
superset はデフォルトだと
c:\ProgramData\Anaconda3\Scripts\superset
にあるはず
Anaconda Prompt で
> cd c:\ProgramData\Anaconda3\Scripts > fabmanager create-admin --app superset > python superset db upgrade > python superset load_examples > python superset init > python superset runserver -d
ここまで来たけど、ImportError: cannot import name ‘ForkingMixIn’ と表示されエラーになる
> pip install -U werkzeug
とアップデートで起動できました
-d オプションを付けないと、fcntl モジュールがないと言われます
最終的に VirtualBox の linux に構築した方が楽だったかも
github のリンクがなくなってますが、最新のだとどれになるのでしょうか?
https://superset.incubator.apache.org/installation.html だったと思います!