2019-06-05 bmxug.tokyo #10 LT https://bmxug.connpass.com/event/131569/
- Hajime Nakagami
- https://github.com/nakagami
- 株式会社ビープラウド(https://www.beproud.jp/) 勤務 .. image:: http://www.beproud.jp/static/img/logo_beproud.png - http://connpass.com/ .. image:: https://connpass.com/static/img/common/sitelogo_295x100.png - 仕事は受託開発 - 仕事では Python + Django + MySQL を使用 - プライベートでPython のデーターベースドライバーを書いている - PyCon JP 2016 で、データーベースドライバーの書き方について発表した https://gist.github.com/nakagami/bfbe98d62377f3f4554121ab161ae8c9 - 2016年に Apache Derby で動いていたドライバーが、平成から令和のはざまで Db2 のドライバーが動くようになった https://github.com/nakagami/pydrda
- IBM の RDBMS 製品の DB2 が最近、ブランディングのため Db2 と名前変更
- DB-Engine Ranking で 6位 (2019-06) https://db-engines.com/en/ranking
- Linux, Windows (x86_64) だけでなく、 AIX(Power), 汎用機でも動作する
- 金融系で(オンプレミスで)使われることが多い(らしい)
- 私は、ここまでの仕事では無縁
IBM Cloud のライトプラン(無料枠)で Db2 が使える
- ただしダラス(米国南部リージョン)
- データ 100M bytes まで
- 最大接続数 5 セッション
- 30日たったら再アクティベーション。しないとサスペンド
- さらに1ヶ月経つとデータ消される(再作成は可能)
- Web画面からテーブル定義の確認、 SQL文の発行ができる簡易的なツールがついている
Web サービスでは使えないけど、テスト環境には使える。ありがたい。
PEP 249 -- Python Database API Specification v2.0 https://www.python.org/dev/peps/pep-0249/
- https://pypi.org/project/ibm-db/
- https://github.com/ibmdb/python-ibmdb
- IBM 謹製
- pip install ibm-db でインストール
- PEP-249 に従っていない API のため Pythonista には使いづらい
- サンプルコード https://gist.github.com/nakagami/016601a1fe7d5ca6e436bf8c466c66a5
- C のライブラリとリンクしているので、実行できるプラットフォームに制限がある
- https://pypi.org/project/pydrda/
- https://github.com/nakagami/pydrda
- 拙作( ←今日一番言いたいこと )
- pip install pydrda でインストール
- アルファリリース程度のクオリティ
- PEP-249 準拠
- pure python なので、 Rasbperry Pi でも動く(はず)
- 動かしてみて、不具合あったら Issue あげて欲しい
- Db2 系の DWH などでも動かしてみて欲しい
(デモ)