CN115185946A - 多租户系统、多租户管理方法、计算机设备和存储介质 - Google Patents
多租户系统、多租户管理方法、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115185946A CN115185946A CN202210814521.5A CN202210814521A CN115185946A CN 115185946 A CN115185946 A CN 115185946A CN 202210814521 A CN202210814521 A CN 202210814521A CN 115185946 A CN115185946 A CN 115185946A
- Authority
- CN
- China
- Prior art keywords
- tenant
- data
- subsystem
- instruction
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种多租户系统、多租户管理方法、计算机设备和存储介质。该系统包括:租户子系统、业务子系统和数据通讯子系统,租户子系统根据接收到的租户创建指令,采用预设的全局数据模板创建租户对应的表结构,并存储至数据库;业务子系统通过数据通讯子系统访问数据库,以对数据库中各表结构内的数据进行对应的操作;租户子系统在接收到租户独立部署的指令时,获取与指令对应的租户的数据,并复制业务子系统和数据通讯子系统的代码,以供用户根据业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。采用本方法能够实现多租户系统的可拆分功能,且能够实现单独部署的数据添加至多租户系统。
Description
技术领域
本申请涉及信息管理技术领域,特别是涉及一种多租户系统、多租户管理方法、计算机设备和存储介质。
背景技术
多租户系统SaaS(Software as a Service)作为云计算的一种重要模式,通过互联网可以为多个租户提供其所需的服务,在这种模式下租户无须再购买软件,而是向服务提供商按需租赁,根据使用时间或使用量付费,能够有效地减少IT运营的成本。
目前,多租户系统SaaS仅关注如何构建企业需求的架构,进一步减少开发成本、或者具体的SaaS应用,例如合同管理,授权管理等,无法满足企业多元化需求。
发明内容
基于此,有必要针对上述技术问题,提供一种能够将系统中租户进行单独部署的多租户系统、多租户管理方法、计算机设备和存储介质。
第一方面,本申请提供了一种多租户系统。所述系统包括:租户子系统、业务子系统和数据通讯子系统,
所述租户子系统根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,并存储至数据库;
所述业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
在其中一个实施例中,所述业务子系统在接收到数据操作指令时,获取所述数据操作指令中租户标识;
所述业务子系统根据租户标识通过所述数据通讯子系统访问对应的租户数据,以对所述数据库中数据进行对应的操作。
在其中一个实施例中,所述租户子系统在接收到单租户还原的指令时,获取与所述指令对应的单租户的数据,并将所述单租户的数据还原至所述数据库。
在其中一个实施例中,所述租户子系统在接收到单租户还原的指令时,获取所述单租户的租户标识和所述单租户的数据;
所述租户子系统根据所述单租户标识在所述数据库中确认是否存在所述单租户的历史数据;
若在所述数据库中存在所述单租户的历史数据,所述租户子系统更新所述单租户的数据更新所述历史数据。
在其中一个实施例中,若在所述数据库中不存在所述单租户的历史数据,所述租户子系统采用预设的全局数据模板创建所述单租户对应的表结构;
所述租户子系统将所述单租户的数据导入至所述单租户对应的表结构。
在其中一个实施例中,所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,获取的租户数据进行单租户系统部署,并修改单租户系统中系统配置参数。
在其中一个实施例中,所述数据库中多租户对应的表结构中各表的名称根据表名和序号进行命名。
在其中一个实施例中,所述系统还包括:多个权限控制模块,每个权限控制模块与每个租户一一对应。
第二方面,本申请还提供了一种多租户管理方法。所述方法包括:
通过租户子系统接收租户创建指令,并根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,存储至数据库;
通过业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
在所述租户子系统接收到租户独立部署的指令时,通过所述租户子系统获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
通过租户子系统接收租户创建指令,并根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,存储至数据库;
通过业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
在所述租户子系统接收到租户独立部署的指令时,通过所述租户子系统获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
通过租户子系统接收租户创建指令,并根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,存储至数据库;
通过业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
在所述租户子系统接收到租户独立部署的指令时,通过所述租户子系统获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
通过租户子系统接收租户创建指令,并根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,存储至数据库;
通过业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
在所述租户子系统接收到租户独立部署的指令时,通过所述租户子系统获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
上述多租户系统、多租户管理方法、计算机设备和存储介质,该系统包括:所述租户子系统根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,并存储至数据库;所述业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。如此,本申请中每个租户都采用全局数据模型创建,使得各租户之间数据独立,业务子系统和通信子系统也相互独立,因此本申请能够在需要单租户部署时,能够对应租户的数据单独拆分,并将业务子系统、通信子系统的代码进行复制,即可在新的设备上将业务子系统、通信子系统和对应租户的数据进行部署,实现单租户的独立运行,即实现多租户系统的可拆分,从而满足企业的需求。
附图说明
图1为一个实施例中多租户系统的应用环境图;
图2为一个实施例中多租户系统的结构框图;
图3为一个实施例中单租户系统部署的结构示意图;
图4为一个实施例中多租户管理方法的流程示意图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的多租户系统,可以应用于如图1所示的应用环境中。其中,终端102用于供用户操作,终端102通过网络与服务器104进行通信,以实现对应的操作,包括数据查看、数据更新等。数据存储系统中部署有数据库,数据库中可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104中部署有多租户系统,包括租户子系统、业务子系统、数据通讯子系统。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种多租户系统,以该方法应用于图1中的服务器为例进行说明,该多租户系统包括:租户子系统210、业务子系统220和数据通讯子系统230,
所述租户子系统210根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,并存储至数据库;
所述业务子系统220通过所述数据通讯子系统230访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
所述租户子系统210在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统220和数据通讯子系统230的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
具体地,本申请中多租户系统包括:相互独立的租户子系统210、业务子系统220和数据通讯子系统230,各子系统组合形成多租户系统。租户子系统210可以用于通过数据通信子系统230接收外界设备发送的租户创建指令,然后根据租户创建指令采用预设的全局数据模板创建对应的表结构,该表结构可以为一个或者包括多个表格的一套表结构,在实际业务发生后,则可以将实际数据填入对应的表结构中,如此,每个租户均对应一套(或者一个)表结构,即每个租户的数据均独立存储,相互不会产生干扰。
业务子系统220主要用于实现租户实际的业务需求,具体地,用户可以通过网站、个人电脑等向多租户系统发送业务请求(业务请求包括但不限于:数据查询、数据更新),业务子系统220接收该业务请求,并根据该业务请求进行对应的操作。具体地,业务子系统220对数据库中各表格内的数据进行对应操作的过程包括:
业务子系统220在接收到数据操作指令时,获取数据操作指令中租户标识;
业务子系统220根据租户标识通过数据通讯子系统230访问对应的租户数据,以对所述数据库中数据进行对应的操作。
为保证各租户的数据独立,以及满足可拆分的客户需求。业务请求为数据查询请求时,业务子系统220获取数据操作指令中的租户标识(该租户标识为待操作数据对应的租户标识),业务子系统220通过数据通讯子系统230访问所述数据库中与租户标识对应的数据,对租户标识对应的表结构进行对应的操作。为方便使用,还可以将操作结果展示给用户。
需要说明的是用户可以通过网站、个人电脑等通过多租户系统中的数据通信子系统向多租户系统发送业务请求,也就是说数据通信子系统230至少两个功能:向外界设备提供通信接口,作为业务子系统220与外界通信的桥梁;多租户系统内部数据库与业务子系统220之间的通信桥梁。
通过上述方式多租户系统中各个子系统相互独立,从而能够方便后续对多租户系统内的每个租户数据进行单独部署。具体地:
用户可以通过外部设备触发租户单独部署指令,然后发送给多租户系统,多租系统通过数据通信子通信接收该单独部署指令,将单独部署指令传输给租户子系统210,或者用户可以多租户系统中租户子系统210触发单独部署指令。租户子系统210接收到租户单独部署指令后,确定单独部署的租户标识,然后根据该租户标识从数据库中查找到与租户标识对应的数据后,可以复制或者剪切查找到的数据,并复制业务子系统220和数据通讯子系统230的代码,用户可以将业务子系统220和数据通讯子系统230的代码,以及租户对应的数据部署到单独的设备上,用户则可以在单独的设备上运行业务子系统、数据通讯子系统和租户对应的数据组成的新的系统。
上述多租户系统中,该系统包括:所述租户子系统根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,并存储至数据库;所述业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。如此,本申请中每个租户都采用全局数据模型创建,使得各租户之间数据独立,业务子系统和通信子系统也相互独立,因此本申请能够在需要单租户部署时,能够对应租户的数据单独拆分,并将业务子系统、通信子系统的代码进行复制,即可在新的设备上将业务子系统、通信子系统和对应租户的数据进行部署,实现单租户的独立运行,即实现多租户系统的可拆分,从而满足企业的需求。
在一个实施例中,基于上述实施例,多租户系统还可以实现对单独部署的数据重新添加到多租户系统中进行运行。租户子系统210在接收到单租户还原的指令时,获取与所述指令对应的单租户的数据,并将所述单租户的数据还原至所述数据库。
具体地,用户可以通过网站、个人电脑等向多租户系统发送单租户还原的指令,或者用户通过租户子系统210触发单租户还原的指令。租户子系统210在接收到单租户还原的指令时,获取该租户的数据,该数据需要包括对应的表结构,然后将租户的数据还原至数据库中,实现单租户数据的还原。
进一步地,还原单租户的数据的过程可以包括:
租户子系统210在接收到单租户还原的指令时,获取所述单租户的租户标识和所述单租户的数据;
租户子系统210根据所述单租户标识在所述数据库中确认是否存在所述单租户的历史数据;
若在所述数据库中存在所述单租户的历史数据,所述租户子系统更新所述单租户的数据更新所述历史数据;
若在所述数据库中不存在所述单租户的历史数据,所述租户子系统210采用预设的全局数据模板创建所述单租户对应的表结构;
所述租户子系统210将所述单租户的数据导入至所述单租户对应的表结构。
具体地,租户子系统210在接收到单租户还原的指令时,解析指令,获得对应的单租户标识,从数据库中获取与单租户标识对应的单租户的数据。在还原过程中包括两种情况:
1、在单租户独立部署时,多租户系统中未保存该单租户的历史数据,此时,数据库中不存在所述单租户的历史数据,租户子系统可以采用预设的全局数据模板创建该单租户的表结构,然后将获取的单租户数据导入到创建的表结构中,从而实现该单租户的数据还原。
2、在单租户独立部署时,多租户系统中还保存该单租户的历史数据,多租户系统可以不创建该单租户的表结构,从数据库中查找对应的表结构,然后利用获得的该租户的数据更新至与该单租户标识对应的表结构内即可。
因此,在实际应用中在接收到单租户标识后,可以根据该单租户标识在数据库中确认是否存在与该单租户标识对应的历史数据,若不存在,租户子系统采用预设的全局数据模板创建该单租户的表结构,然后将获取的单租户数据导入到创建的表结构中,从而实现该单租户的数据还原;若存在,从数据库中查找对应的表结构,然后利用获得的该租户的数据更新至与该单租户标识对应的表结构内即可。可以理解的是,若多租户系统在单租户单独部署后,采用不保留历史数据的方式,在实际应用中租户子系统210不需要根据所述单租户标识在所述数据库中确认是否存在所述单租户的历史数据,直接采用预设的全局数据模板创建所述单租户对应的表结构,然后将单租户的数据导入至所述单租户对应的表结构。当然若某个租户开始就单独进行部署,其数据结构与多租户平台中表结构相同,则可以将该单租户的数据添加至多租户系统。
进一步地,基于上述实施例,租户子系统210在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,获取的租户数据进行单租户系统部署,并修改单租户系统中系统配置参数。
具体地,如图3所示,在单租户部署过程中,为了简化单租户系统中的操作,还可以在单租户系统中修改系统配置参数,因在多租户系统中业务操作过程中需要根据租户标识访问对应的租户的数据,在单租户系统中则可以不需要使用租户标识进行,因此系统中对应的系统配置参数进行修改,如此,单租户系统中,业务子系统在对数据库进行操作时,减少解析指令获得租户标识的过程,从而简化单租户系统中的操作,单租户系统中业务子系统和数据通信子模块的作用可以参考上述实施例,此处不在赘述。
进一步地,基于上述实施例,多租户系统还包括:多个权限控制模块,每个权限控制模块与每个租户一一对应。
本实施例中,为了加强各租户数据的安全性,因此还设置有权限控制模块,每个租户对应以权限控制模块,创建各租户的表结构时,对应创建权限控制模块,权限控制模块用于在业务子系统220访问数据库中租户数据时,对访问请求进行权限验证,验证通过后,才允许访问数据库中对应的租户数据,否则拒绝访问。
进一步地,基于上述实施例,数据库中多租户对应的表结构中各表的名称根据表名和序号进行命名。
具体地,本实施例中,为提高数据的操作效率,现有技术中多租户系统的特征是将同一类型的数据根据租户不同横向分散在不同的表中,从而实现数据的横向扩展。本实施中,通过“表名_序号”如:“tb_user_1,tb_user_2”这样的格式来区分同一个类型不同租户的数据。所以同一类型的数据表名是相同的,只是表序号不同。通过聚合表序号的方式查询,就可以实现查询所有同一类型的表数据。
上述多租户系统中的各个子系统可全部或部分通过软件、硬件及其组合来实现。上述各子系统可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个子系统对应的操作。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的多租户系统的多租户管理方法。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个多租户管理方法实施例中的具体限定可以参见上文中对于多租户系统的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种多租户管理方法,包括:
通过租户子系统接收租户创建指令,并根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,存储至数据库;
通过业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
在所述租户子系统接收到租户独立部署的指令时,通过所述租户子系统获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
在一个实施例中,所述业务子系统在接收到数据操作指令时,获取所述数据操作指令中租户标识;
所述业务子系统根据租户标识通过所述数据通讯子系统访问对应的租户数据,以对所述数据库中数据进行对应的操作。
在一个实施例中,所述租户子系统在接收到单租户还原的指令时,获取与所述指令对应的单租户的数据,并将所述单租户的数据还原至所述数据库。
在一个实施例中,所述租户子系统在接收到单租户还原的指令时,获取所述单租户的租户标识和所述单租户的数据;
所述租户子系统根据所述单租户标识在所述数据库中确认是否存在所述单租户的历史数据;
若在所述数据库中存在所述单租户的历史数据,所述租户子系统更新所述单租户的数据更新所述历史数据。
在一个实施例中,若在所述数据库中不存在所述单租户的历史数据,所述租户子系统采用预设的全局数据模板创建所述单租户对应的表结构;
所述租户子系统将所述单租户的数据导入至所述单租户对应的表结构。
在一个实施例中,所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,获取的租户数据进行单租户系统部署,并修改单租户系统中系统配置参数。
在一个实施例中,所述数据库中多租户对应的表结构中各表的名称根据表名和序号进行命名。
在一个实施例中,所述系统还包括:多个权限控制模块,每个权限控制模块与每个租户一一对应。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储多租户的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多租户管理方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。可以理解的是,上述实施例中所述的租户子系统、业务子系统和数据通讯子系统可以分别为如图5所示的计算机设备,也可以将租户子系统、业务子系统和数据通讯子系统中一个或者多个部署在同一计算设备中。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述任一实施例所述的多租户管理方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例所述的多租户管理方法的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述的多租户管理方法的步骤。
需要说明的是,本申请所涉及的租户信息(包括但不限于租户标识)和数据(包括但不限于用于各个租户的数据),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种多租户系统,其特征在于,所述系统包括:租户子系统、业务子系统和数据通讯子系统,
所述租户子系统根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,并存储至数据库;
所述业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
2.根据权利要求1所述的系统,其特征在于,
所述业务子系统在接收到数据操作指令时,获取所述数据操作指令中租户标识;
所述业务子系统根据租户标识通过所述数据通讯子系统访问对应的租户数据,以对所述数据库中数据进行对应的操作。
3.根据权利要求1所述的系统,其特征在于,
所述租户子系统在接收到单租户还原的指令时,获取与所述指令对应的单租户的数据,并将所述单租户的数据还原至所述数据库。
4.根据权利要求3所述的系统,其特征在于,
所述租户子系统在接收到单租户还原的指令时,获取所述单租户的租户标识和所述单租户的数据;
所述租户子系统根据所述单租户标识在所述数据库中确认是否存在所述单租户的历史数据;
若在所述数据库中存在所述单租户的历史数据,所述租户子系统更新所述单租户的数据更新所述历史数据。
5.根据权利要求4所述的系统,其特征在于,
若在所述数据库中不存在所述单租户的历史数据,所述租户子系统采用预设的全局数据模板创建所述单租户对应的表结构;
所述租户子系统将所述单租户的数据导入至所述单租户对应的表结构。
6.根据权利要求1所述的系统,其特征在于,
所述租户子系统在接收到租户独立部署的指令时,获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,获取的租户数据进行单租户系统部署,并修改单租户系统中系统配置参数。
7.根据权利要求1至6任意一项所述的系统,其特征在于,所述数据库中多租户对应的表结构中各表的名称根据表名和序号进行命名。
8.根据权利要求1至6任意一项所述的系统,其特征在于,所述系统还包括:多个权限控制模块,每个权限控制模块与每个租户一一对应。
9.一种多租户管理方法,其特征在于,所述方法包括:
通过租户子系统接收租户创建指令,并根据接收到的租户创建指令,采用预设的全局数据模板创建所述租户对应的表结构,存储至数据库;
通过业务子系统通过所述数据通讯子系统访问所述数据库,以对所述数据库中各表结构内的数据进行对应的操作;
在所述租户子系统接收到租户独立部署的指令时,通过所述租户子系统获取与所述指令对应的租户的数据,并复制所述业务子系统和数据通讯子系统的代码,以供用户根据所述业务子系统和数据通讯子系统的代码,以及获取的租户数据进行单租户系统部署。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求9所述的方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求9所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210814521.5A CN115185946A (zh) | 2022-07-12 | 2022-07-12 | 多租户系统、多租户管理方法、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210814521.5A CN115185946A (zh) | 2022-07-12 | 2022-07-12 | 多租户系统、多租户管理方法、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115185946A true CN115185946A (zh) | 2022-10-14 |
Family
ID=83518001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210814521.5A Pending CN115185946A (zh) | 2022-07-12 | 2022-07-12 | 多租户系统、多租户管理方法、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115185946A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115865502A (zh) * | 2022-12-07 | 2023-03-28 | 中国联合网络通信集团有限公司 | 权限管控方法、装置、设备及存储介质 |
-
2022
- 2022-07-12 CN CN202210814521.5A patent/CN115185946A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115865502A (zh) * | 2022-12-07 | 2023-03-28 | 中国联合网络通信集团有限公司 | 权限管控方法、装置、设备及存储介质 |
CN115865502B (zh) * | 2022-12-07 | 2024-04-30 | 中国联合网络通信集团有限公司 | 权限管控方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11226982B2 (en) | Synchronization of offline instances | |
AU2019381980A1 (en) | Taking snapshots of blockchain data | |
CN113077259A (zh) | 基于区块链的存证方法、装置及电子设备 | |
CN115185946A (zh) | 多租户系统、多租户管理方法、计算机设备和存储介质 | |
CN113918437A (zh) | 用户行为数据分析方法、装置、计算机设备和存储介质 | |
CN113296891A (zh) | 基于平台的多场景知识图谱处理方法及装置 | |
CN112860953A (zh) | 图数据库的数据导入方法、装置、设备及存储介质 | |
CN113361236A (zh) | 一种编辑文档的方法和装置 | |
AU2021268828B2 (en) | Secure data replication in distributed data storage environments | |
CN115935414A (zh) | 基于区块链的数据校验方法、装置、电子设备和存储介质 | |
CN114996577A (zh) | 服务管理方法、装置、设备、存储介质和程序产品 | |
CN114254278A (zh) | 用户账号合并方法、装置、计算机设备以及存储介质 | |
CN114547055A (zh) | 一种数据处理方法及装置 | |
CN113704120A (zh) | 数据传输方法、装置、设备及存储介质 | |
CN108551484B (zh) | 用户信息同步方法、装置、计算机装置及存储介质 | |
CN105677692A (zh) | 实时提供信息查询的信息系统与方法 | |
US11593498B2 (en) | Distribution of user specific data elements in a replication environment | |
US11614993B1 (en) | System and method for restoring deleted objects and their assignments to other objects based on any deletion of the other objects | |
CN116684282B (zh) | 新增云端服务器初始化方法、装置和计算机设备 | |
US20230131765A1 (en) | Backup and restore of arbitrary data | |
CN116894010A (zh) | 资源状态处理方法和装置、电子设备及存储介质 | |
CN114416214A (zh) | 跨网络系统集成方法、装置、计算机设备、存储介质 | |
CN115878655A (zh) | 数据操作方法、装置、计算机设备和存储介质 | |
CN114090588A (zh) | 区块链在场验证方法、装置、计算机设备和存储介质 | |
CN117032729A (zh) | 配置信息修改方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |