CN114647634A - 创建数据库的方法、操作数据库的方法和装置 - Google Patents
创建数据库的方法、操作数据库的方法和装置 Download PDFInfo
- Publication number
- CN114647634A CN114647634A CN202210274610.5A CN202210274610A CN114647634A CN 114647634 A CN114647634 A CN 114647634A CN 202210274610 A CN202210274610 A CN 202210274610A CN 114647634 A CN114647634 A CN 114647634A
- Authority
- CN
- China
- Prior art keywords
- storage space
- database
- space layer
- request
- target 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000004044 response Effects 0.000 claims abstract description 22
- 238000004806 packaging method and process Methods 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000005538 encapsulation Methods 0.000 claims description 2
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 14
- 238000013507 mapping Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 4
- 238000013467 fragmentation Methods 0.000 description 3
- 238000006062 fragmentation reaction Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
-
- 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/23—Updating
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种创建数据库的方法、操作数据库的方法、装置、设备、存储介质以及程序产品,涉及计算机技术领域,尤其涉及知识图谱、大数据等人工智能技术领域。其中,创建数据库的方法包括:响应于接收到数据库创建请求,创建目标数据库和第一子数据库;将第一子数据库封装为目标数据库的第一存储空间层;以及确定第一存储空间层作为目标数据库的可用存储空间层。操作数据库的方法包括:接收针对目标数据库的原始操作请求;确定目标数据库的可用存储空间层;以及根据原始操作请求,操作可用存储空间层。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及知识图谱、大数据等人工智能技术领域。
背景技术
数据库的全量更新是指对数据库中的数据全部进行更新。在数据库应用中,部分用户需要定期全量更新线上数据。数据库对数据进行全量更新时的效率和安全性的是数据库的重要性能指标。
发明内容
本公开提供了一种创建数据库的方法、操作数据库的方法、装置、设备、存储介质以及程序产品。
根据本公开的一方面,提供了一种创建数据库的方法,包括:响应于接收到数据库创建请求,创建目标数据库和第一子数据库;将所述第一子数据库封装为所述目标数据库的第一存储空间层;以及确定所述第一存储空间层作为所述目标数据库的可用存储空间层。
根据本公开的另一方面,提供了一种操作数据库的方法,包括:接收针对目标数据库的原始操作请求;确定所述目标数据库的可用存储空间层;以及根据所述原始操作请求,操作所述可用存储空间层,其中,所述目标数据库是根据本公开实施例所述的方法创建的。
根据本公开的另一方面,提供了一种创建数据库的装置,包括:创建模块,用于响应于接收到数据库创建请求,创建目标数据库和第一子数据库;封装模块,用于将所述第一子数据库封装为所述目标数据库的第一存储空间层;以及第一确定模块,用于确定所述第一存储空间层作为所述目标数据库的可用存储空间层。
根据本公开的另一方面,提供了一种操作数据库的装置,包括:接收模块,用于接收针对目标数据库的原始操作请求;第二确定模块,用于确定所述目标数据库的可用存储空间层;以及操作模块,用于根据所述原始操作请求,操作所述可用存储空间层,其中,所述目标数据库是根据本公开实施例所述的方法创建的。
本公开的另一个方面提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开实施例所示的方法。
根据本公开实施例的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行本公开实施例所示的方法。
根据本公开实施例的另一方面,提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现本公开实施例所示方法的步骤。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的示例性数据库的示意图;
图2示意性示出了根据本公开的实施例的创建数据库的方法的流程图;
图3示意性示出了根据本公开另一实施例的创建数据库的方法的流程图;
图4示意性示出了根据本公开的实施例的操作数据库的方法的流程图;
图5示意性示出了根据本公开另一实施例的操作数据库的方法的示意图;
图6示意性示出了根据本公开实施例的创建数据库的装置的框图;
图7示意性示出了根据本公开实施例的操作数据库的装置的框图;以及
图8示意性示出了可以用来实施本公开的实施例的示例电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
以下将结合图1对本公开实施例的数据库进行描述。
图1是根据本公开实施例的示例性数据库的示意图。需要注意的是,图1所示仅为可以应用本公开实施例的数据库的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他数据库。
如图1所示,该数据库100可以包括数据库层(database)110和存储空间层(space)120、130。
根据本公开的实施例,每个存储空间层可以包含一个子数据库。例如,存储空间层120包含子数据库121,存储空间层130包含子数据库131。
根据本公开的实施例,每个存储空间层中的子数据库可以对应于一个或多个空间分片,用于存储数据。例如,存储空间层120中的子数据库121可以对应于空间分片122和123,存储空间层130中的子数据库131可以对应于空间分片132、133、134和135。
根据本公开的实施例,每个存储空间层可以配置有元信息(meta),该元信息可以用于表示该存储空间层中的分片数量和数据分布关系。可以根据元信息来自设置空间分片的数量,以及数据在空间分片中的分布关系。
根据本公开的实施例,数据库100可以将其所包含的所有存储空间层中的其中一个存储空间层设置为可用存储空间层。当用户发送数据库操作请求时,可以将该数据库操作请求转换为对该可用存储空间层的操作请求。
例如,数据库100可以将存储空间层120设置为可用存储空间层。当用户发送数据库操作请求时,可以将该数据库操作请求转换为对该可用存储空间层的操作请求,以对存储空间层120进行对应的操作。
根据本公开的实施例,可用存储空间层可以根据需要进行切换。例如,在初始阶段将可以将存储空间层120设置为可用存储空间层,将用户上传的初始数据存储在存储空间层120中。后续如果用户需要对数据库中的数据进行全量数据更新,则可以将可用存储空间层由存储空间层120切换为存储空间层130,以便将后续的更新数据存储至存储空间130中。
根据本公开的实施例,用户从外部来看数据库100,只能看到一个数据库。用户在对数据库100进行操作时,感知不到多个存储空间层的存在。数据库100内部存储空间层发生切换时,用户对数据库100的使用不受影响。
根据本公开的实施例,数据库100中的存储空间层的数量可以根据需要设置。当存储需求不够时,还可以新增存储空间层。
在对数据库进行全量更新且待更新的数据量上涨或下降的情况下,如果沿用数据库原有的空间分片数量和数据分布关系,则会导致资源浪费。
根据本公开的实施例,通过将子数据库封装为目标数据库的存储空间层,不同存储空间层各自包含完全独立的子数据库,每个存储空间层可以配置不同的空间分片数量和数据分布关系。当用户的数据量上涨时,可以创建新的存储空间层,并根据上涨后的数据量配置该存储空间层的空间分片数量和数据分布关系,从而减少了资源浪费。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
图2示意性示出了根据本公开的实施例的创建数据库的方法的流程图。
如图2所示,该创建数据库的方法200包括在操作S210,响应于接收到数据库创建请求,创建目标数据库和第一子数据库。
然后,在操作S220,将第一子数据库封装为目标数据库的第一存储空间层。
在操作S230,确定第一存储空间层作为目标数据库的可用存储空间层。
根据本公开的实施例,在创建目标数据库时可以不创建实际的数据存储空间,而是将第一子数据库封装为目标数据库的存储空间层,作为实际数据存储空间。
根据本公开的实施例,可用存储空间层可以为目标数据库实际操作的存储空间。
根据本公开的实施例,通过将子数据库封装为目标数据库的存储空间层,可以提高目标数据库存储空间的灵活性。
根据本公开的另一实施例,存储空间层的元数据可以支持自定义配置,其中,元信息例如可以包括分片数量和数据分布关系等。通过配置存储空间层的元数据可以设置对应存储空间层的分片数量和数据分布关系等。
例如,用户可以发送针对目标数据库中任一存储空间层的配置请求。响应于接收到针对存储空间层的配置请求,可以根据该配置请求,配置该存储空间层的元信息。
根据本公开的实施例,例如可以预先设置配置接口,用于接收对存储空间层的配置请求。用户可以根据自己的需求来主动调用该配置接口来调整存储空间层的元信息。其中,该配置接口例如可以包括HTTP(Hyper Text Transfer Protocol,超文本传输协议)接口。
根据本公开的实施例,将第一子数据库封装为目标数据库的第一存储空间层例如可以包括:根据第一子数据库的操作函数,生成第一存储空间层的操作接口。其中,操作函数例如可以包括增加操作函数、删除操作函数、修改操作函数和查询操作函数等。通过根据第一子数据库的操作函数,生成第一存储空间层的操作接口。从而可以将第一子数据库封装在目标数据库中,以便由目标数据库同一接收操作请求,并转换为对应子数据库的操作。
根据本公开的实施例,第一存储空间层可以为目标数据库初始创建的存储空间层。除了第一存储空间之外,还可以为目标数据库创建其他存储空间。可以理解的是,目标数据库可以具有任意数量的存储空间层,本公开对目标数据库中存储空间层的数量不作具体限制。
基于此,图3示意性示出了根据本公开另一实施例的创建数据库的方法的流程图。
如图3所示,在已创建第一存储空间之后,该创建数据库的方法还可以包括在操作S340,创建第二子数据库。
在操作S350,将第二子数据库封装为目标数据库的第二存储空间层。
在操作S360,响应于接收到针对第二存储空间层的第二配置请求,根据第二配置请求,配置第二存储空间层的元信息。
然后,在操作S370,响应于接收到针对第二存储空间层的切换请求,确定第二存储空间层作为可用存储空间层。
根据本公开的实施例,将第二子数据库封装为目标数据库的第二存储空间层的方法与将第一子数据库封装为目标数据库的第一存储空间层的方法相同,具体可以参考上文,在此不再赘述。
根据本公开的实施例,可用存储空间层可以为目标数据库实际操作的存储空间。该可用存储空间层可以根据需要进行切换。例如,用户可以向目标数据库发送针对第二存储空间层的切换请求,目标数据库可以根据该切换请求,确定第二存储空间层作为可用存储空间层。
根据本公开的实施例,例如可以预先设置切换接口,提供给用户。当用户由存储空间层切换需求时,可以向该切换接口发送切换请求。目标数据库可以通过该切换接口接收用户的切换请求,并进行相应地切换操作。
根据本公开的实施例,在将可用存储空间层从原存储空间层切换为新存储空间层之后,还可以再从新存储空间层回滚到原存储空间层,以便实现数据回滚。用户可以通过向目标数据库发送回滚请求触发回滚操作。
例如,在目标数据库的可用存储空间层从第一存储空间被配置为第二存储空间层的情况下,响应于接收到回滚请求,可以将目标数据库的可用存储空间层配置为第一存储空间层。
根据本公开的实施例,通过将各子数据库封装为目标数据库的存储空间层,不同存储空间层各自包含完全独立的子数据库,每个存储空间层可以有不同的数据分布关系,提高了数据库的扩展性和配置灵活性。
根据本公开的实施例,当用户的数据量发生变化时,还可以创建新的存储空间层,并根据数据量变化配置该新的存储空间层的数据分布关系,以适应数据量变化,从而减少了资源浪费。
图4示意性示出了根据本公开的实施例的操作数据库的方法的流程图。
如图4所示,该操作数据库的方法400包括在操作S410,接收针对目标数据库的原始操作请求。
在操作S420,确定目标数据库的可用存储空间层。
在操作S430,根据原始操作请求,操作可用存储空间层。
根据本公开的实施例,用户可以向目标数据库发送操作请求,以对目标数据库中的数据进行操作。用户向目标数据库的发送操作请求即原始操作请求。其中,操作请求例如可以包括新增数据请求、修改数据请求、删除数据请求、查询数据请求和修改数据请求等等。其中,新增数据请求可以用于请求对数据库中的数据执行增加操作。删除数据请求可以用于请求对数据库中的数据执行删除操作。修改数据请求可以用于请求对数据库中的数据执行修改操作。查询数据请求可以用于请求对数据库中的数据执行查询操作。
由于目标数据库中的实际存储数据为各存储空间层。因此目标数据库在接收到原始操作请求后,可以确定当前处于可用状态的存储空间层,即可用存储空间层。然后根据该原始操作请求,对该可用存储空间层进行相应的操作。
例如,目标数据库可以根据原始操作请求,生成针对可用存储空间层的目标操作请求。然后将目标操作请求发送至可用存储空间层的操作接口,以便操作可用存储空间层。
根据本公开的实施例,从外部来看,用户只能看到目标数据库一个数据库,看不到目标数据库中的各个存储空间层。在用户的角度看来,用户对数据库的操作只是针对目标数据库,而不是目标数据库内部的存储空间层。当目标数据库内部存储空间层发生切换时,用户对数据库的使用不受影响。
下面参考图5,结合具体实施例对上文所示的操作数据库的方法做进一步说明。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。
图5示意性示出了根据本公开另一实施例的操作数据库的方法的示意图。
在图5中示出了,数据库可以包括数据库层database以及在database下封装的存储空间层space。其中,database用于提供给用户访问的入口,每个space代表物理上的数据库。每个database下面可以对应两个space,每个space彼此之间是独立的。
示例性地,本实施例中,在创建数据库时,创建一个database和一个存储空间层space-0。同时预设一个映射关系,该映射关系记录了该database下正在使用的存储空间层,即可用存储空间层,该映射关系是一一对应。用户可以通过预设的查询接口查询到当前正在使用的可用存储空间层。初始时,映射关系记录了database->space-0的映射关系。
当用户想要删除数据库时,可以向数据库发送删除指令。响应于接收到用户针对数据库的删除指令,可以删除该数据库中的database和所有的space。
在使用过程中,可以为数据库创建新的存储空间层space-1。当触发数据上线操作时,可以将可用存储空间层切换为space-1,然后将新上线的数据存在space-1下。更具体地,可以通过调用映射切换(Switch)接口,以便将映射关系改为database->space-1,以将可用存储空间层切换为space-1。在后续写入数据时,会将数据写入该新的space-1中。需要说明的是,在进行切换后,旧的space-0仍然存在。
用户可以对数据库中的数据进行增、删、查和改等操作。对用户来说,在进行增、删、查和改等操作时,他们访问的是database层。database层内部具体访问哪个space是通过维护的映射关系来决定的。
根据本公开的实施例,由于用户新数据上线之后,旧的space-0仍然存在。因此,当用户需要进行数据回滚时,可以通过调用映射切换接口,将映射关系调整为database->space0,从而使数据回滚。
根据本公开的实施例,space-0和space-1分别对应一个子数据库,彼此完全独立。每个space拥有独立的元信息meta和独立的底层存储空间,其中,meta信息例如可以包括分片数量、数据分布关系等。用户可以根据数据量动态调整space数据的meta信息。本实施例中,可以提供配置接口,用于调整space数据的meta信息。例如,该配置接口可以以HTTP接口的方式提供给用户。用户可以根据自己的需求主动调用该HTTP接口来调整space的meta信息。
根据本公开的实施例,可以通过将子数据库封装为database中的space,使得每个space对应完全独立的子数据库,每个space可以有不同的分片数量和数据分布关系,从而提高了数据库的配置灵活性。另外,可以根据数据量配置space的分片数量和数据分布关系,从而提高了资源利用率。
以下将结合图6对本公开实施例的创建数据库的装置进行描述。
图6示意性示出了根据本公开实施例的创建数据库的装置的框图。
如图6所示,该创建数据库的装置600包括第一创建模块610、第一封装模块620和第一确定模块630。
第一创建模块610,用于响应于接收到数据库创建请求,创建目标数据库和第一子数据库。
第一封装模块620,用于将第一子数据库封装为目标数据库的第一存储空间层。
第一确定模块630,用于确定第一存储空间层作为目标数据库的可用存储空间层。
根据本公开的实施例,上述创建数据库的装置还可以包括第一配置模块,可以用于响应于接收到针对所述第一存储空间层的第一配置请求,根据所述第一配置请求,配置所述第一存储空间层的元信息。
根据本公开的实施例,所述元信息例如可以包括分片数量和/或数据分布关系。
根据本公开的实施例,所述封装模块可以包括生成子模块,可以用于根据所述第一子数据库的操作函数,生成所述第一存储空间层的操作接口。
根据本公开的实施例,上述创建数据库的装置还可以包括第二创建模块、第二封装模块、第二配置模块和切换模块。其中,第二创建模块,可以用于创建第二子数据库。第二封装模块,可以用于将所述第二子数据库封装为所述目标数据库的第二存储空间层。第二配置模块,可以用于响应于接收到针对所述第二存储空间层的第二配置请求,根据所述第二配置请求,配置所述第二存储空间层的元信息。切换模块,可以用于响应于接收到针对所述第二存储空间层的切换请求,确定所述第二存储空间层作为所述可用存储空间层。
根据本公开的实施例,上述创建数据库的装置还可以包括回滚模块,用于在所述目标数据库的可用存储空间层被配置为所述第二存储空间层的情况下,响应于接收到回滚请求,将所述目标数据库的可用存储空间层配置为所述第一存储空间层。
以下将结合图7对本公开实施例的操作数据库的装置进行描述。
图7示意性示出了根据本公开实施例的操作数据库的装置的框图。
如图7所示,该操作数据库的装置700包括接收模块710、第二确定模块720和操作模块730。
接收模块710,用于接收针对目标数据库的原始操作请求。
第二确定模块720,用于确定目标数据库的可用存储空间层。
操作模块730,用于根据原始操作请求,操作可用存储空间层。
其中,目标数据库是根据本公开实施例的创建数据库的方法创建的。
根据本公开的实施例,所述操作模块可以包括转换子模块和发送子模块。其中,转换子模块,可以用于根据所述原始操作请求,生成针对所述可用存储空间层的目标操作请求。发送子模块,可以用于将所述目标操作请求发送至所述可用存储空间层的操作接口,以便操作所述可用存储空间层。
根据本公开的实施例,所述原始操作请求例如可以包括新增数据请求、删除数据请求、查询数据请求和修改数据请求中的至少一个。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图8示意性示出了可以用来实施本公开的实施例的示例电子设备800的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如操作数据库的方法和创建数据库的方法。例如,在一些实施例中,操作数据库的方法和创建数据库的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的操作数据库的方法和创建数据库的方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行操作数据库的方法和创建数据库的方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(Virtual Private Server,或简称VPS)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种创建数据库的方法,包括:
响应于接收到数据库创建请求,创建目标数据库和第一子数据库;
将所述第一子数据库封装为所述目标数据库的第一存储空间层;以及
确定所述第一存储空间层作为所述目标数据库的可用存储空间层。
2.根据权利要求1所述的方法,还包括:
响应于接收到针对所述第一存储空间层的第一配置请求,根据所述第一配置请求,配置所述第一存储空间层的元信息。
3.根据权利要求2所述的方法,其中,所述元信息包括分片数量和/或数据分布关系。
4.根据权利要求1所述的方法,其中,所述将所述第一子数据库封装为所述目标数据库的第一存储空间层,包括:
根据所述第一子数据库的操作函数,生成所述第一存储空间层的操作接口。
5.根据权利要求1所述的方法,还包括:
创建第二子数据库;
将所述第二子数据库封装为所述目标数据库的第二存储空间层;
响应于接收到针对所述第二存储空间层的第二配置请求,根据所述第二配置请求,配置所述第二存储空间层的元信息;以及
响应于接收到针对所述第二存储空间层的切换请求,确定所述第二存储空间层作为所述可用存储空间层。
6.根据权利要求5所述的方法,还包括:
在所述目标数据库的可用存储空间层被配置为所述第二存储空间层的情况下,响应于接收到回滚请求,将所述目标数据库的可用存储空间层配置为所述第一存储空间层。
7.一种操作数据库的方法,包括:
接收针对目标数据库的原始操作请求;
确定所述目标数据库的可用存储空间层;以及
根据所述原始操作请求,操作所述可用存储空间层,其中,所述目标数据库是根据权利要求1-6中任一项所述的方法创建的。
8.根据权利要求7所述的方法,其中,所述根据所述原始操作请求,操作所述可用存储空间层包括:
根据所述原始操作请求,生成针对所述可用存储空间层的目标操作请求;以及
将所述目标操作请求发送至所述可用存储空间层的操作接口,以便操作所述可用存储空间层。
9.根据权利要求7或8所述的方法,其中,所述原始操作请求包括新增数据请求、修改数据请求、删除数据请求、查询数据请求和修改数据请求中的至少一个。
10.一种创建数据库的装置,包括:
第一创建模块,用于响应于接收到数据库创建请求,创建目标数据库和第一子数据库;
第一封装模块,用于将所述第一子数据库封装为所述目标数据库的第一存储空间层;以及
第一确定模块,用于确定所述第一存储空间层作为所述目标数据库的可用存储空间层。
11.根据权利要求10所述的装置,还包括:
第一配置模块,用于响应于接收到针对所述第一存储空间层的第一配置请求,根据所述第一配置请求,配置所述第一存储空间层的元信息。
12.根据权利要求11所述的装置,其中,所述元信息包括分片数量和/或数据分布关系。
13.根据权利要求10所述的装置,其中,所述封装模块包括:
生成子模块,用于根据所述第一子数据库的操作函数,生成所述第一存储空间层的操作接口。
14.根据权利要求10所述的装置,还包括:
第二创建模块,用于创建第二子数据库;
第二封装模块,用于将所述第二子数据库封装为所述目标数据库的第二存储空间层;
第二配置模块,用于响应于接收到针对所述第二存储空间层的第二配置请求,根据所述第二配置请求,配置所述第二存储空间层的元信息;以及
切换模块,用于响应于接收到针对所述第二存储空间层的切换请求,确定所述第二存储空间层作为所述可用存储空间层。
15.根据权利要求14所述的装置,还包括:
回滚模块,用于在所述目标数据库的可用存储空间层被配置为所述第二存储空间层的情况下,响应于接收到回滚请求,将所述目标数据库的可用存储空间层配置为所述第一存储空间层。
16.一种操作数据库的装置,包括:
接收模块,用于接收针对目标数据库的原始操作请求;
第二确定模块,用于确定所述目标数据库的可用存储空间层;以及
操作模块,用于根据所述原始操作请求,操作所述可用存储空间层,其中,所述目标数据库是根据权利要求1-6中任一项所述的方法创建的。
17.根据权利要求16所述的装置,其中,所述操作模块包括:
转换子模块,用于根据所述原始操作请求,生成针对所述可用存储空间层的目标操作请求;以及
发送子模块,用于将所述目标操作请求发送至所述可用存储空间层的操作接口,以便操作所述可用存储空间层。
18.根据权利要求16或17所述的装置,其中,所述原始操作请求包括新增数据请求、删除数据请求、查询数据请求和修改数据请求中的至少一个。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-9中任一项所述的方法。
21.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1-9中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210274610.5A CN114647634A (zh) | 2022-03-18 | 2022-03-18 | 创建数据库的方法、操作数据库的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210274610.5A CN114647634A (zh) | 2022-03-18 | 2022-03-18 | 创建数据库的方法、操作数据库的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114647634A true CN114647634A (zh) | 2022-06-21 |
Family
ID=81996239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210274610.5A Pending CN114647634A (zh) | 2022-03-18 | 2022-03-18 | 创建数据库的方法、操作数据库的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114647634A (zh) |
-
2022
- 2022-03-18 CN CN202210274610.5A patent/CN114647634A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110019080B (zh) | 数据访问方法和装置 | |
CN111694857B (zh) | 存储资源数据的方法、装置、电子设备及计算机可读介质 | |
WO2023088313A1 (zh) | 输入设备虚拟化的方法、装置、电子设备和存储介质 | |
CN110837409A (zh) | 一种定时执行任务的方法和*** | |
KR20220151585A (ko) | 업무 데이터 처리 방법, 장치, 전자 기기, 저장 매체 및 컴퓨터 프로그램 | |
CN113568938B (zh) | 数据流处理方法、装置、电子设备及存储介质 | |
WO2023221416A1 (zh) | 信息生成方法、装置、设备以及存储介质 | |
CN111259060B (zh) | 数据查询的方法及装置 | |
KR102583532B1 (ko) | 스케줄링 방법, 장치, 기기, 기록 매체 및 컴퓨터 프로그램 | |
CN112671892B (zh) | 数据传输方法、装置、电子设备及介质 | |
CN113282589A (zh) | 一种数据获取方法和装置 | |
CN113419865A (zh) | 云资源处理方法、相关装置及计算机程序产品 | |
CN113297516A (zh) | 客户交互界面生成方法、装置和电子设备 | |
CN113051510A (zh) | 交互处理方法、装置、前端设备、后端设备及存储介质 | |
CN111949648B (zh) | 内存缓存数据***和数据索引方法 | |
CN115514718B (zh) | 基于数据传输***的数据交互方法、控制层、设备 | |
CN116126916A (zh) | 一种基于智能网卡的数据查询方法、装置及设备 | |
CN109213815B (zh) | 控制执行次数的方法、装置、服务器终端以及可读介质 | |
CN116185578A (zh) | 计算任务的调度方法和计算任务的执行方法 | |
CN114647634A (zh) | 创建数据库的方法、操作数据库的方法和装置 | |
CN112965836A (zh) | 服务控制方法、装置、电子设备及可读存储介质 | |
CN114416414B (zh) | 一种故障信息定位方法、装置、设备及存储介质 | |
CN112989250B (zh) | 一种Web服务响应方法、装置及电子设备 | |
CN111459981A (zh) | 查询任务的处理方法、装置、服务器及*** | |
EP4131017A2 (en) | Distributed data storage |
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 |