glance-0.1.7 分析(五)—— glance/registry/db 和 glance/registry/db/sqlalchemy

来源:互联网 发布:江苏跨省网络诈骗案件 编辑:程序博客网 时间:2024/05/06 16:56

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 提供对外的镜像操作方法集合


原创粉丝点击