【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をコピーしました