数字化转型持续深化,企业应用从“烟囱式系统”走向中台化与服务化。大量业务系统仍以单表或简单多表 CRUD 为主,重复造轮子成本高、交付慢,且多租户隔离、权限、缓存与可观测性难以统一落地。通用数据服务、低代码平台与 Backend-as-a-Service(BaaS)正成为中小团队与 ISV 降低后端开发门槛的重要路径。
云原生与容器化普及后,企业对“可插拔、可配置、可治理”的数据访问层需求上升:既要屏蔽底层库差异,又要保留 SQL 表达力;既要多租户安全隔离,又要支撑高并发查询与运维审计。Gartner 等机构长期将 iPaaS、低代码与 API 管理列为应用现代化关键能力,国内信创与行业云建设也推动“统一数据接口 + 租户治理”类中间件落地。
与此同时,AI 应用与自动化流程对结构化数据读写提出更高要求:需要稳定、可审计、带鉴权的数据 API,作为 Agent、工作流引擎与业务前端的统一数据出口。具备 OpenAPI 契约、JWT 安全、缓存加速与变更触发能力的通用数据服务,可显著缩短从原型到生产的周期,并降低多系统对接成本。
长期看,该方向将从“简单 CRUD 网关”演进为“数据能力平台”:覆盖元数据治理、关系查询、受控 SQL、事件驱动与可观测性。Model Data Server 正处在这一赛道的实用层——面向真实多租户业务库,提供开箱即用的 REST 数据能力,具备持续演进与开源生态协作的空间。
本项目面向多租户场景,通过统一 REST API 完成业务库表的查询、增删改、表结构维护与类 SQL 查询,减少重复 CRUD 开发。
**多租户与连接治理**:支持租户管理、数据库连接配置及租户—配置绑定;业务请求按租户与配置路由到目标库,配合缓存降低配置读取开销。
**通用数据操作**:提供列表查询、条件查询、增强查询(高级操作符、条件分组)、分组聚合、计数,以及单条/批量增删改;支持字段投影,按需返回列,控制带宽与敏感字段暴露。
**MDS SQL**:提供类 SQL 只读入口,统一三段式表名(租户.配置.表);可解析子集路由到内部查询 API,支持 `UNION` / `UNION ALL`;含 `WITH`(CTE)、`JOIN`、窗口函数时安全下推到原生库只读执行,在受控前提下保留复杂查询能力。
**表结构与元数据**:支持建表、字段增删改、索引/唯一键/外键及表结构元数据查询,便于动态建模与运维。
**关联与触发**:支持数据关联关系查询;数据变更触发可对接下游流程或消息能力,支撑事件驱动集成。
**安全与运维**:JWT 鉴权、Spring Security、Redis 缓存、Flyway 迁移、Actuator 健康检查、租户日志隔离;对外提供 OpenAPI 3(`/api-docs.json`)与 Swagger UI,便于对接与自动化测试。支持 MySQL / SQLite,Docker / Makefile 一键启停,适配开发与生产部署。
**本人职责**:作为核心研发,负责总体架构与迭代交付,包括:多租户与数据库连接抽象、通用 CRUD / 增强查询与表结构 API、MDS SQL 解析路由与原生只读下推、JWT 安全与缓存策略、租户日志隔离与错误传递规范、Flyway 与 Docker 运维体系;并完成设计文档、API 对接指南、迭代测试脚本与开源就绪(Apache-2.0、OpenAPI、README 索引)等工作。
**技术栈**:Java 11、Spring Boot 2.7、Spring Security + JWT、Spring Data JPA、MySQL / SQLite、Redis、Flyway、SpringDoc OpenAPI、Maven、Docker / Docker Compose、Nginx(可选反向代理)、Makefile 运维脚本。
**架构**:分层设计——接口层(Controller)→ 租户与连接配置层 → 系统信息缓存层 → 通用数据操作层(DAO/JDBC)→ 日志与审计层。系统库存租户与连接元数据,业务库按配置动态连接;查询侧兼顾“结构化 API”与“受控 SQL”双路径,保证易用性与表达力。
**难点与亮点**:
1. **动态多库访问**:运行时按租户/配置切换数据源与连接池,需兼顾隔离、性能与连接泄漏防护。
2. **MDS SQL 双路径执行**:SQL 解析后在 API 路由与原生下推间智能分流;三段式表名重写与同库约束校验,避免越权与注入风险。
3. **增强查询与投影**:复杂条件、分组聚合与列投影在通用层统一建模,减少业务侧定制代码。
4. **租户可观测性**:按租户隔离日志,配合统一错误码与执行审计(含 SQL executionId),便于多租户排障。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论