12章永続化とデータベース

Pythonは、データの永続化をいくつかの方法でサポートしている。まず、シリアライズ(serialization)は、データをPythonオブジェクトのコレクションとして捉える。これらのオブジェクトをバイトストリームとしてシリアライズ(保存)し、あとでバイトストリームからデシリアライズ(読み込んで再作成)できる。オブジェクトの永続化(object persistence)はシリアライズに基づいており、そこにオブジェクトの名前付けなどの機能が追加される。本章では、シリアライズとオブジェクトの永続化をサポートするPythonのモジュールを取り上げる。

データを永続化するもう1つの方法は、データベース(DB)への格納である。DBの単純なカテゴリの1つはファイルであり、キーによるアクセスを使ってデータの一部を選択的に読み取り、更新することができる。本章では、DBMと呼ばれるこの種のファイルフォーマットをサポートするPythonの標準ライブラリのモジュールを取り上げる。

PostgreSQLやOracleなどのリレーショナルデータベース管理システム(RDBMS)では、永続化データの格納、検索、取得に対して、もっと強力なアプローチが提供される。RDBはSQL(Structured Query Language)の方言を使って、DBのスキーマの作成と変更、DBでのデータの挿入と更新、DBでの検索条件を使ったクエリの実行を処理する。なお、本書では、SQLのリファレンスは提供しない。代わりにKevin Kline、Regina Obe、Leo Hsu共著『SQL in a Nutshell, Fourth Edition』(O'Reilly Media, Inc.)をお勧めする。SQLは標準化されているが、残念ながら、SQLのまったく同じ方言を実装しているRDBMSは2つとない。 ...

Get Pythonクイックリファレンス 第4版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.