【Python】cassandra-driverのインストール

【Python】cassandra-driverのインストール プログラミング

「PythonからApache Cassandraに接続したい」

このような場合には、cassandra-driverがオススメです。
この記事では、cassandra-driverについて解説しています。

本記事の内容

  • cassandra-driverとは?
  • cassandra-driverのシステム要件
  • cassandra-driverのインストール
  • cassandra-driverの動作確認

それでは、上記に沿って解説していきます。

cassandra-driverとは?

cassandra-driverとは、Apache Cassandraのドライバーです。
cassandra-driverは、Pythonライブラリとして公開されています。

サポート対象となるApache Cassandraの条件は、以下。

  • Apache Cassandra(2.1+)
  • CQL(Cassandra Query Language) v3

現時点で最新版となるApache Cassandraは、バージョン4.0.4です。
最新版Apache Cassandraのインストールについては、次の記事で解説しています。

このバージョンでは、CQL 3.4.5が組み込まれています。
そのため、最新版のApache Cassandraでcassandra-driverが動くと言えます。

CQLのバージョンは、cqlsh起動時に確認できます。
同時に、Apache Cassandraのバージョンも確認可能です。

$ cqlsh 192.168.33.108 
Connected to Test Cluster at 192.168.33.108:9042 
[cqlsh 6.0.0 | Cassandra 4.0.4 | CQL spec 3.4.5 | Native protocol v5] 
Use HELP for help. 
cqlsh> 

cqlshについては、次の記事でまとめています。

以上、cassandra-driverについて説明しました。
次は、cassandra-driverのシステム要件を説明します。

cassandra-driverのシステム要件

現時点(2022年6月)でのcassandra-driverの最新バージョンは、3.25.0となります。
この最新バージョンは、2021年3月19日にリリースされています。

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

サポート対象となるPythonのバージョンは、以下となっています。

  • Python 2.7
  • Python 3.5
  • Python 3.6
  • Python 3.7
  • Python 3.8

これは、少々古過ぎます。
以下は、Python公式開発サイクルです。

バージョンリリース日サポート期限
3.62016年12月23日2021年12月23日
3.72018年6月27日2023年6月27日
3.82019年10月14日2024年10月
3.92020年10月5日2025年10月
3.102021年10月4日2026年10月

Python公式開発サイクルに従えば、Python 3.9と3.10へのサポートは当たり前です。
実際、すでにPython 3.9と3.10はかなり普及しています。

それなのに、cassandra-driverのサポート対象にPython 3.9と3.10がありません。
このことは、かなり不安に感じてしまいます。

しかし、安心してください。
Python 3.9と3.10でも問題なく、cassandra-driverを利用できます。

結果的に、cassandra-driverのシステム要件はあってないようなモノです。
ただ、Python 3.7以降の利用をオススメします。

以上、cassandra-driverのシステム要件を説明しました。
次は、cassandra-driverのインストールを説明します。

cassandra-driverのインストール

検証は、次のバージョンのPythonで行います。

> python -V 
Python 3.10.4

まずは、現状のインストール済みパッケージを確認しておきます。

> pip list 
Package    Version 
---------- ------- 
pip        22.1.2 
setuptools 62.3.4 
wheel      0.36.2

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、cassandra-driverのインストールです。
cassandra-driverのインストールには、次のコマンドを用います。

pip install cassandra-driver

インストールには、そこそこ時間がかかります。
途中で処理が停止したように見えても、しばらく我慢しましょう。

終了したら、どんなパッケージがインストールされたのかを確認します。

> pip list 
Package          Version 
---------------- ----------- 
cassandra-driver 3.25.0 
click            8.1.3 
colorama         0.4.4 
geomet           0.2.1.post1 
pip              22.1.2 
setuptools       62.3.4 
six              1.16.0 
wheel            0.36.2

それほど多くのパッケージに依存はしていないようです。

以上、cassandra-driverのインストールを説明しました。
次は、cassandra-driverの動作確認を行います。

cassandra-driverの動作確認

cassandra-driverの動作確認には、以下が前提条件となります。

  • Apache Cassandraにおける外部接続の許可
  • Apache Cassandraにデータが登録済

Apache Cassandraにおける外部接続の許可は、次の記事をご覧ください。

Apache Cassandraへのデータ登録については、次の記事でまとめています。

今回は、Ubuntu 20.04 LTSにApache Cassandraをインストール済みです。
そのサーバーのIPアドレスは、192.168.33.108となります。

この状況の場合には、次のコードを動作確認に用います。
キースペースやテーブルについては、上記で挙げた記事を参考にしてください。

from cassandra.cluster import Cluster

cluster = Cluster(['192.168.33.108']) 
session = cluster.connect('sample_keyspace') 
rows = session.execute('SELECT id, age, name FROM user')

for row in rows: 
    print(row.id, row.age, row.name)

上記コードを実行した場合、以下の結果となります。

1 20 山田太郎 
2 30 佐藤次郎 
3 40 高橋三郎

Apache Cassandraに登録したデータが、ちゃんと表示されています。
cassandra-driverの動作確認としては、これで十分でしょう。

以上、cassandra-driverの動作確認を説明しました。

タイトルとURLをコピーしました