oslo_dbとsqlalchemyの応用

620 ワード

sqlalchemyはpythonにおけるオブジェクト関係モデルの実装ライブラリであり、データベースの各レコードをクエリー時にクラスインスタンスに変換します.そしてoslo_dbはOpenStackにおけるデータベースのカプセル化であり,アプリケーションもsqlalchemyである.使用方法を説明する前に、ディレクトリの編成方法について説明します.
ファイルディレクトリ
--db
  |--__init__.py
  |--api.py
  |--sqlalchemy
     |--__init__.py
     |--api.py
     |--models.py

ディレクトリからoslo_についてdb、データベースは多層パッケージされています.まずsqlalchemy自体がリレーショナル・データベースのカプセル化です.フォルダsqlalchemyのmodels.pyはテーブルに対応するクラスを宣言し、各レコードはクラスインスタンスです.api.pyはクラスに対する方法であり,例えば添削改ざん,業務の特徴と結びつけて他の方法を追加することもできる.実際にsqlalchemyではデータベースのカプセル化が完了しており,直接適用できる.でもoslo_dbライブラリがまた1層追加されたが,何を考えているのか,現時点では不明である.しかし、方法は奇抜だ.