glance 要对镜像的元数据进行存储管理,这需要后台数据引擎的支持。不同的引擎对应不同的
目录。
db 目录下包含了管理元数据所需要的数据引擎,当前只有 sqlalchemy 数据引擎。db/api.py 则
提供了统一的接口,db/sqlalchemy/api.py 也基于 sqlalchemy 数据引擎实现了这种接口。
glance/registry/db/sqlalchemy 主要是通过封装 SQLAlchemy 来对镜像存储提供数据库访问支持。
__init__.py 导入即注册 SQLAlchemy 引擎对数据模型的支持
models.py 基于 SQLAlchemy 定义的 glance 中的数据模型
class ModelBase(object)
基础数据模型,包括一些诸如创建时间的字段,没有有关镜像等的字段信息
class Image(BASE, ModelBase)
描述存储的镜像,添加的字段有
id
type
size
status
is_public
location
class ImageProperty(BASE, ModelBase)
描述镜像属性
api.py
内部利用 SQLAlchemy 提供对外的镜像操作方法集合
本文介绍Glance如何使用SQLAlchemy实现镜像元数据的存储管理。具体包括db目录下不同文件的作用,如models.py中定义的镜像及属性数据模型,以及api.py提供的镜像操作方法。
2066

被折叠的 条评论
为什么被折叠?



