はじめに
以前のブログで、pythonコネクタについて紹介しました。 それ以降、 C_Client がRPMパッケージ化され、CentOSはデフォルトでPCREを同梱するようになったため、インストールも使用するのも簡単になりました。
ビデオ
ビデオに従って試したい場合は、こちらをご覧ください。
追加のボーナスとして、ビデオは非常にシンプルなソースコードも紹介します。
インストール
c_clientをインストールする
以下の抜粋は Node.js クライアントに関するブログから引用しました。
GridDB c_client(Pythonクライアントを使用するための前提条件)はここにあります: https://github.com/griddb/c_client 。 c_clientのインストールは前回のブログから簡素化されました。 ソースから自分でコンパイルする代わりに、便利なRPMが利用できるようになりました(リリースページはこちらにあります)。 最新のRPMをwget
してインストールします。
$ wget \
https://github.com/griddb/c_client/releases/download/v4.2.0/griddb_c_client-4.2.0-1.linux.x86_64.rpm
次に、rpmをインストールします。
$ sudo rpm -ivh griddb_c_client-4.2.0-1.linux.x86_64.rpm
これで c_clientが/usr/
ディレクトリにインストールされ、準備が整いました。
Python クライアントをインストールする
Pythonクライアントのインストールは少し複雑ですが、それでも簡単です。 まず、GitHubからファイルをダウンロードしましょう。
$ wget \
https://github.com/griddb/python_client/archive/0.8.1.tar.gz
そして、解凍します。
$ tar xvzf 0.8.1.tar.gz
次に、依存するソフトウェアをインストールします。
$ wget https://prdownloads.sourceforge.net/swig/swig-3.0.12.tar.gz
tar xvfz swig-3.0.12.tar.gz
cd swig-3.0.12
./configure
make
sudo make install
必要に応じて、pcreをインストールします。
$ sudo yum install pcre2-devel.x86_64
次に、Pythonクライアントを make
します。
$ cd ../python_client
make
Pythonクライアントを作成しようとした時に次のエラーが発生した場合、
/usr/bin/ld: cannot find -lgridstore
簡単に修正できるので心配はありません。 原因は、Makefile
がc_clientを指すように設定していないことです。 つまり、c_client/bin
の場所をLDFLAGSオプションに追加することで問題は解決します。</ p>
SWIG = swig -DSWIGWORDSIZE64 CXX = g++ ARCH = $(shell arch) LDFLAGS = -L/home/israel/c_client/bin -lpthread -lrt -lgridstore #added /home/israel/c_client_bin right here CPPFLAGS = -fPIC -std=c++0x -g -O2 INCLUDES = -Iinclude -Isrc INCLUDES_PYTHON = $(INCLUDES) \ -I/usr/include/python3.6m PROGRAM = _griddb_python.so EXTRA = griddb_python.py griddb_python.pyc SOURCES = src/TimeSeriesProperties.cpp \ src/ContainerInfo.cpp \ src/AggregationResult.cpp \ src/Container.cpp \ src/Store.cpp \ src/StoreFactory.cpp \ src/PartitionController.cpp \ src/Query.cpp \ src/QueryAnalysisEntry.cpp \ src/RowKeyPredicate.cpp \ src/RowSet.cpp \ src/TimestampUtils.cpp \ all: $(PROGRAM) ... snip ...
適切な修正を行うと、make
は意図したとおりに動作するはずです。 次に環境変数を設定します。 適切な場所を指定します。
$ export LIBRARY_PATH=$LIBRARY_PATH:[insert path to c_client]
$ export PYTHONPATH=$PYTHONPATH:[insert path to python_client]
$ export LIBRARY_PATH=$LD_LIBRARY_PATH:[insert path to c_client/bin]
これで、GridDB Clusterでc
とpython
の両方を使用できるようになりました。
サンプルコード
Pythonでの使用は非常に簡単なので、このブログでは紹介しませんが、興味がある方はブログの最初の方で紹介したビデオをご覧ください。 ビデオの内容に従うには、次のソースコードをダウンロードしてください。[download id=”26145″]
ブログの内容について疑問や質問がある場合は Q&A サイトである Stack Overflow に質問を投稿しましょう。 GridDB 開発者やエンジニアから速やかな回答が得られるようにするためにも "griddb" タグをつけることをお忘れなく。 https://stackoverflow.com/questions/ask?tags=griddb
[…] まず、GridDB Python Clientをインストールします。GridDB Python Client についてはこちらのブログに詳しい説明があります。 […]