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

本文介绍Glance如何使用SQLAlchemy实现镜像元数据的存储管理。具体包括db目录下不同文件的作用,如models.py中定义的镜像及属性数据模型,以及api.py提供的镜像操作方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值