当前位置:职场发展 > 共享数据库独立Schema构建SAAS平台

共享数据库独立Schema构建SAAS平台

  • 发布:2023-10-06 01:20

使用Tenant_Free共享数据库,通过建立每个Tenant的数据库用户实现独立Schema。每个用户使用的数据表都是根据用户导入的构建SAAS平台的数据来初始化的。本文详细阐述了这个过程,供读者学习参考。 从数据模型设计的角度来看,我们使用Oracle10g数据库以共享数据库独立Schema模式构建SAAS平台。下面是实现过程: 在Oracle中的实现: 1. 共享数据库实例,免费使用Tenant_Free实例,收费使用Tenant_VIP实例,平台数据使用Tenant_Platform实例。 2.通过为每个Tenant建立一个数据库用户来实现独立的Schema。每个用户使用的数据表都是根据用户导入的数据进行初始化的。如何自动生成配置数据。通过测试实例生成数万个数据库用户是正常的。如果一台普通服务器可以支持10000个Tenant,那么可能只需要10台服务器就可以增长到10万个用户,这在我可以接受的范围内。 。 3、本来我考虑的是让每个Tenant分配一个表空间,然后定义数据文件的大小来限制每个Tenant的数据空间。但经过测试,我发现Oracle中添加的表空间数量有限。我测试的时候,添加的数量达到200左右的时候就会报错,提示已经超过了最大表空间数量。看来这个方法行不通。 如上图所示,所有租户用户都在用户管理库中进行管理,然后数据访问控制器通过租户用户信息自动选择租户对应的数据结构。可能我觉得这个模型是MVC的改进版,即SAAS平台下采用MVCD模型(Model-View-Controller-DataAccess)。数据管理层将模型层和控制层与数据管理内容分离并负责。数据库结构管理、数据访问等功能... 选择理由: 1、Oracle中使用独立数据库,对服务器内存要求过高。如果分配给一个实例的资源是200M,那么一台4G服务器只能支持20个租户。我认为没有人能够承担这个费用。所以我不使用第一种、最简单的方法。2、选择独立的schema非常重要。它将极大地提高程序和性能。而且业务要求所有与企业相关的数据表字段都允许Tenant用户自定义,所以我认为是必要条件,所以只能选择第二种模式。两种模式。如果使用保留字段或者通过字段扩展表存储,就会存在很多问题,比如检索速度、字段限制、数据冗余等缺点。而且对于用户来说不是很直观。 3、从维护和管理的角度来说,每个数据库用户的数据都可以单独备份,有利于无效用户的数据删除和恢复。也保证了用户数据的安全。 SAAS项目的要求: 1、要求能够通过配置自动实现对Tenant Schema中数据的CRUD操作。 2、数据报表及相关查询必须允许定制,并提供相关功能。 3、API接口服务需要提供配置功能。 这就是本文的内容。欢迎您的批评和指导! 【编辑精选】 Oracle数据库RAC组件的缓存融合技术 揭开强大数据库表DUAL的神秘面纱 ASP 通过 OLE 的 Oracle 对象查询 Oracle 连接远程Oracle数据库并在存储过程中执行操作 浅谈优化大师Kiss丢弃的Oracle监听器的两种修复方法

相关文章

最新资讯

热门推荐