CN118075292A - 第一对象的创建方法和装置、存储介质及电子设备 - Google Patents
第一对象的创建方法和装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN118075292A CN118075292A CN202410178519.2A CN202410178519A CN118075292A CN 118075292 A CN118075292 A CN 118075292A CN 202410178519 A CN202410178519 A CN 202410178519A CN 118075292 A CN118075292 A CN 118075292A
- Authority
- CN
- China
- Prior art keywords
- information
- node
- instruction
- creation
- creating
- 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 48
- 238000004590 computer program Methods 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 10
- 230000001360 synchronised effect Effects 0.000 claims description 9
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 239000002699 waste material Substances 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种第一对象的创建方法和装置、存储介质及电子设备,其中,该方法包括:在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
Description
技术领域
本申请实施例涉及计算机存储领域,具体而言,涉及一种第一对象的创建方法和装置、存储介质及电子设备。
背景技术
随着数据存储量的增加,分布式文件存储系统得到了广泛发展。一个分布式文件存储对外提供服务通常要经历以下步骤:创建本地用户组和本地用户;设置存储高可用虚拟IP以及负载均衡策略;创建目录:指定目录所属用户组和所属用户,并设置所属用户、所属用户组以及其他的用户的操作权限(读/写/执行);创建共享:为目录创建共享,指定客户端IP地址;在客户端进行网络文件系统(Network File System,简称:NFS)挂载,挂载时指定存储高可用IP地址以及存储端的目录名;通过以上步骤,便可以在客户端对存储端目录进行读写等操作。由于挂载共享目录时使用的是存储高可用的虚拟IP,该IP可以在存储集群内的各个节点间切换,所以为了保证该共享能在虚拟IP切换到其他节点后仍然可用,所以要求存储各节点间都存在同名同uid的本地用户。
然而相关领域中,在存储端创建本地用户通常的做法是,为了使集群内其他节点(也称之为从节点)上也创建出该本地用户且uid新保持一致,此时会直接将记录unix信息的配置文件/etc/passwd直接压缩同步到其他节点,并用该文件覆盖其他节点上的/etc/passwd文件。该方法存在以下弊端:1)每创建一个用户,都需要同步配置文件到所有节点,容易造成网络资源的浪费;2)有新节点扩容到集群时,也需要向新节点同步配置文件;3)创建本地用户时,依赖于主节点先确定用户ID信息,使得各节点之间无法做到并行处理;4)由于采用主节点向其他节点同步配置文件并覆盖各从节点上本身的配置文件,所以当主节点上的配置文件损坏时,也会导致集群内其他节点该文件损坏。
针对相关技术中,分布式文件存储每创建一个用户都需要配置文件到所有节点,容易造成网络资源浪费的问题,尚未得到有效解决。
发明内容
本申请实施例提供了一种第一对象的创建方法和装置、存储介质及电子设备,以至少解决分布式文件存储每创建一个用户都需要配置文件到所有节点,容易造成网络资源浪费的问题。
根据本申请的一个实施例,提供了一种第一对象的创建方法,包括:在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
在一个示例性实施例中,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,包括:获取所述从节点对应的N个第二对象,以及获取所述N个第二对象分别对应的第二信息,其中,所述第二对象用于指示在创建所述第一对象之前就存在于所述从节点的对象,所述第二信息至少包括:所述第二对象对应的第二对象标识,其中,N为正整数;确定每个第二对象标识的标识值;通过预设算法对N个所述标识值进行排序,根据排序结果确定出N个所述标识值中最大的目标标识值,其中,所述预设算法的排序规则包括以下任一:对N个所述标识值按照从大到小的顺序、对N个所述标识值按照从小到大进行顺序;按照预设的编码规则对所述目标标识值进行编码,得到所述目标标识值对应的编码结果;将所述编码结果确定为所述第一对象对应的第一对象标识;根据所述第一对象标识在所述从节点创建第一对象。
在一个示例性实施例中,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,包括:获取所述从节点在完成创建所述第一对象的情况下发出的第一反馈信息,其中,所述第一反馈信息至少包括:所述从节点的节点信息,所述第一用户名,所述第一对象标识,所述第一用户名和所述第一对象标识之间的映射关系;将所述第一反馈信息确定为所述第一创建信息。
在一个示例性实施例中,将所述第一创建信息同步至主节点对应的对象列表之后,所述方法还包括:在分布式存储系统接收到第二指令的情况下,确定发出所述第二指令的第二对象,其中,所述第二指令用于对所述分布式存储系统保存的配置文件进行修改;获取所述第二对象的对象信息,其中,所述对象信息至少包括以下之一:所述第二对象的第二对象标识、所述第二对象的第二用户名;将所述第二对象信息与所述对象列表中所保存的多个对象的创建信息进行匹配,得到匹配结果。
在一个示例性实施例中,根据所述匹配结果确定是否允许执行所述第二指令,包括:在所述匹配结果指示所述多个对象的创建信息中存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定允许执行所述第二指令;在所述匹配结果指示所述对象列表中不存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定禁止执行所述第二指令。
在一个示例性实施例中,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,包括:在所述主节点对应多个从节点的情况下,确定所述主节点对应的全部从节点;将所述第一指令发送到所述全部从节点,以指示所述全部从节点均创建所述第一对象。
在一个示例性实施例中,在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象之后,所述方法还包括:获取所述主节点基于所述第一指令发出的第二反馈信息;在所述第二反馈信息指示所述第一对象创建失败的情况下,向目标终端发起提示信息,其中,所述提示信息用于指示所述第一对象在所述主节点创建失败;在所述第二反馈信息指示所述第一对象创建成功的情况下,确定所述第一对象在所述主节点创建完成。
根据本申请的另一个实施例,提供了一种第一对象的创建装置,包括:创建模块,用于在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;同步模块,用于将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;确定模块,用于在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请,在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。解决了相关技术中,分布式文件存储每创建一个用户都需要配置文件到所有节点,容易造成网络资源浪费的问题。
附图说明
图1是本申请实施例的一种第一对象的创建方法的计算机终端的硬件结构框图;
图2是根据本申请实施例的第一对象的创建方法的流程图(一);
图3是根据本申请实施例的第一对象的创建方法的流程图(二);
图4是根据本申请实施例的第一对象的创建装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语″第一″、″第二″等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本申请实施例的一种第一对象的创建方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的负载资源的分配方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
图2是根据本申请实施例的第一对象的创建方法的流程图(一),如图2所示,该流程包括如下步骤:
步骤S202,在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;
步骤S204,将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;
步骤S206,在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
通过上述步骤,在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。解决了相关技术中,分布式文件存储每创建一个用户都需要配置文件到所有节点,容易造成网络资源浪费的问题。
也就是说,在接收到创建第一对象的第一指令的情况下,先在从节点上创建一个对象,并将相关信息同步到主节点,实现了在分布式存储系统中对对象进行管理和访问的过程。这种同步机制确保了各个节点之间的数据一致性。
在一个示例性实施例中,在分布式存储系统对应的从节点创建第一对象,包括:获取所述从节点对应的N个第二对象,以及获取所述N个第二对象分别对应的第二信息,其中,所述第二对象用于指示在创建所述第一对象之前就存在于所述从节点的对象,所述第二信息至少包括:所述第二对象对应的第二对象标识,其中,N为正整数;确定每个第二对象标识的标识值;通过预设算法对N个所述标识值进行排序,根据排序结果确定出N个所述标识值中最大的目标标识值,其中,所述预设算法的排序规则包括以下任一:对N个所述标识值按照从大到小的顺序、对N个所述标识值按照从小到大进行顺序;按照预设的编码规则对所述目标标识值进行编码,得到所述目标标识值对应的编码结果;将所述编码结果确定为所述第一对象对应的第一对象标识;根据所述第一对象标识在所述从节点创建第一对象。
也就是说,为了在分布式存储系统中创建新对象时,为其分配一个唯一的对象标识。这个过程涉及到从节点上已经存在的对象的标识值的处理。首先获取从节点上的现有对象信息,即系统会获取从节点上已经存在的N个第二对象,以及这些对象对应的第二信息。这些第二对象是指在创建新对象(第一对象)之前就已经存在与从节点上的对象。第二信息至少包含了每个第二对象的对象标识。然后系统会确定每个第二对象的标识值,这些标识值是用来唯一区分从节点上每个对象的。然后通过预设算法对这N个标识值进行排序,排序规则可以是按照标识值的大小进行升序或降序排列。排序后,系统会选择出最大的标识值作为目标标识值。系统按照预设的编码规则对目标标识值进行编码,得到编码结果,这个编码结果将用作创建新的第一对象的对象标识。最后,系统根据新生成的第一对象在从节点上创建第一对象。可以理解的是,为了确保新创建的对象能够被赋予一个唯一的对象标识,这个标识是基于从节点上现有对象标识的最大值来确定的,以此来确保对象标识的连续性和唯一性。通过这种方式,系统可以有效地管理对象标识,避免冲突,并确保每个对象都可以准确地识别和访问。
可选地,所述对象标识可以是用户身份证明,即User Identification,简称uid。
可选地,预设的编码规则可以是在从节点上已经存在的对象的标识值中,最大标识值的基础上加1,例如:N=5,即从节点已经存在:用户1uid:001、用户2uid:002、用户3uid:003、用户4uid:004、用户5uid:005。现需要加入用户6,将已经存在于所述从节点的用户1-用户5的uid按照从大到小或从小到大的顺序进行排序,确定出最大的标识值是用户5对应的uid值:005,进而在用户5的uid的基础上加1,进而得到编码结果为006,将006确定为用户6的uid。可选地,也可以是在最大标识值的基础上加上预设的固定值、预设的数组、或其他编码方式,本申请对此不做限制。
可选地,预设编码规则还可以是采用编码算法,如Base64编码、URL编码、HTML编码等。具体步骤如下:1.选择合适的编码算法:根据实际需求和目标标识值的特点,选择合适的编码算法。例如,如果需要在URL中传递目标标识值,可以选择URL编码;如果需要将二进制数据转换为可打印的ASCII字符,可以选择Base64编码。
2.对目标标识值进行编码:使用选定的编码算法,对目标标识值进行编码操作。具体操作方法根据选择的编码算法而定,通常可以使用现有的编码库或工具来完成编码操作。
3.将编码后的值用于目的地:将编码后的目标标识值用于需要的地方,例如将编码后的URL用于网络请求、将Base64编码后的数据用于传输等。
需要注意的是,不同的编码算法具有不同的特点和适用场景,需要根据具体情况选择合适的编码算法,并确保在编码和解码过程中保持一致。
在一个示例性实施例中,在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,包括:获取所述从节点在完成创建所述第一对象的情况下发出的第一反馈信息,其中,所述第一反馈信息至少包括:所述从节点的节点信息,所述第一用户名,所述第一对象标识,所述第一用户名和所述第一对象标识之间的映射关系;将所述第一反馈信息确定为所述第一创建信息。
也就是说,创建有第一对象并得到其第一创建信息的步骤如下:首先系统接收创建第一对象的第一指令,根据第一指令所携带的第一用户名在分布式存储系统的从节点上创建第一对象。创建完成后,从节点会发出第一反馈信息,该信息至少包含了从节点的节点信息、第一用户名、第一对象标识以及第一用户名和第一对象标识之间的映射关系。然后将第一反馈信息确定为第一创建信息。这个过程中,从节点的节点信息可能是其网络地址或其他唯一标识,第一用户名指的是发起创建请求的用户的用户命名,例如:user_001、u_name等。第一对象标识是系统分配给新创建对象的唯一标识识别码,例如uid、。映射关系则反映了用户名与对象标识之间的唯一对应关系,或者可以是一个字段,例如:real_uid。从节点信息可以包括节点id或节点标识等,例如:node_name,从而可以根据节点信息确定出完成创建第一对象的从节点是哪个。通过上述方法,确保了新对象的唯一性和可追溯性,同时也为后续的数据访问和权限管理提供了基础。
可选地,所述创建信息可以如表1所示:
表1
也就是说,各节点本地用户创建成功后,将节点信息、本地用户名以及自身用户uid返回到主节点;主节点收到各个节点的返回信息后,由主节点将各节点信息、节点上的用户uid信息、本地用户名以及映射的uid信息记录到本地用户管理表中,其中本地用户映射的uid为主节点上该用户对应的uid。
在一个示例性实施例中,将所述第一创建信息同步至主节点对应的对象列表之后,所述方法还包括,所述方法还包括:在分布式存储系统接收到第二指令的情况下,确定发出所述第二指令的第二对象,其中,所述第二指令用于对所述分布式存储系统保存的配置文件进行修改;获取所述第二对象的对象信息,其中,所述对象信息至少包括以下之一:所述第二对象的第二对象标识、所述第二对象的第二用户名;将所述第二对象信息与所述对象列表中所保存的多个对象的创建信息进行匹配,得到匹配结果。
需要说明的是,为了确保只有合适的权限的用户或对象才能对分布式存储系统的配置文件进行修改,需要校验用户或对象的权限,通过匹配对象信息与对象列表中的创建信息,系统可以检查第二对象是否具有相应的权限。如果匹配成功,说明第二对象具有足够的权限。可以执行修改操作,如果匹配失败则说明第二对象没有权限,修改操作将被拒绝。通过上述步骤,可以实现保护系统的配置不被未授权的用户或对象修改,从而维护系统的安全性和稳定性。
在一个示例性实施例中,根据所述匹配结果确定是否允许执行所述第二指令,包括:在所述匹配结果指示所述多个对象的创建信息中存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定允许执行所述第二指令;在所述匹配结果指示所述对象列表中不存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定禁止执行所述第二指令。
也就是说,通过分析匹配结果、权限验证、禁止未授权操作来实现提高系统安全性的效果。即,系统分析匹配结果,查看是否存在与第二用户名和/或第二对象标识匹配的目标对象信息。如果匹配结果表明对象列表中存在与第二用户名和/或第二对象标识匹配的目标对象信息,则说明第二对象具有相应的权限,因此系统确定允许执行第二指令。如果匹配结果表明对象列表中不存在与第二用户名和/或第二对象标识匹配的目标对象信息,说明第二对象没有相应的权限。因此系统禁止执行第二指令。
为了确保只有经过授权的用户或对象才能对分布式存储系统的配置文件进行修改,通过精确地匹配用户名和/或对象标识,系统能够有效地防止未授权的修改操作,从而保护系统的安全性和数据的完整性。
在一个示例性实施例中,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,包括:在所述主节点对应多个从节点的情况下,确定所述主节点对应的全部从节点;将所述第一指令发送到所述全部从节点,以指示所述全部从节点均创建所述第一对象。
也就是说,通过在全部从节点上创建相同的对象,系统可以提供数据高可用性和容错能力。如果某个从节点发生故障,数据仍然可以从其他从节点获取,从而保证服务的连续性和数据的完整性。此外,这种设计还可以提高数据的访问效率,即用户可以从最近的从节点访问数据,减少网络延迟。
在一个示例性实施例中,在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象之后,所述方法还包括:获取所述主节点基于所述第一指令发出的第二反馈信息;在所述第二反馈信息指示所述第一对象创建失败的情况下,向目标终端发起提示信息,其中,所述提示信息用于指示所述第一对象在所述主节点创建失败;在所述第二反馈信息指示所述第一对象创建成功的情况下,确定所述第一对象在所述主节点创建完成。
图3是根据本申请实施例的第一对象的创建方法的流程图(二),如图3所示:
步骤S31:开始:建立一个本地用户管理表(相当于对象列表),表信息包括:节点信息,用户名,节点用户uid,映射uid(映射uid作为该用户对外的统一标识),由集群中的管理节点组成数据库集群,用于保存上述表信息;
步骤S32:用户名信息:当新建一个用户时,各个节点负责给自己创建本地用户,用户uid由节点自身当前最大的用户uid+1;
步骤S33:各节点在本地创建用户返回节点名以及用户ID信息:即各节点本地用户创建成功后,将节点信息、本地用户名以及自身用户uid返回到主节点;
步骤S34:主节点收集各节点返回信息,并获取自身本地用户uid:主节点收到各个节点的返回信息后,由主节点将各节点信息、节点上的用户uid信息、本地用户名以及映射的uid信息记录到本地用户管理表中,其中本地用户映射的uid为主节点上该用户对应的uid;
步骤S35:将上述所有信息记录到本地用户信息映射表:目录挂载后,在客户端先创建一个同名本地用户,uid为上述步骤中的映射uid信息;存储端对客户端的操作进行鉴权访问时,先根据映射的uid信息获取客户端挂载的当前节点的用户信息以及该用户在该节点的实际uid信息,然后进行权限校验。
通过上述步骤,避免节点间同步配置文件,减少网络资源浪费。当有新节点加入时,不再需要向新节点同步配置文件,可以直接获取本地用户管理表中的用户信息,并在新节点上进行创建;创建本地用户时,不再依赖主节点确定用户ID信息,各节点进行自身本地用户创建,提高了创建效率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种第一对象的创建装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语″模块″可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本申请实施例的第一对象的创建装置的结构框图,如图4所示,该装置包括:
创建模块42,用于在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;
同步模块44,用于将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;
确定模块46,用于在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
通过上述装置,在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。解决了相关技术中,分布式文件存储每创建一个用户都需要配置文件到所有节点,容易造成网络资源浪费的问题。
在一个示例性实施例中,创建模块42,还用于获取所述从节点对应的N个第二对象,以及获取所述N个第二对象分别对应的第二信息,其中,所述第二对象用于指示在创建所述第一对象之前就存在于所述从节点的对象,所述第二信息至少包括:所述第二对象对应的第二对象标识,其中,N为正整数;确定每个第二对象标识的标识值;通过预设算法对N个所述标识值进行排序,根据排序结果确定出N个所述标识值中最大的目标标识值,其中,所述预设算法的排序规则包括以下任一:对N个所述标识值按照从大到小的顺序、对N个所述标识值按照从小到大进行顺序;按照预设的编码规则对所述目标标识值进行编码,得到所述目标标识值对应的编码结果;将所述编码结果确定为所述第一对象对应的第一对象标识;根据所述第一对象标识在所述从节点创建第一对象。
在一个示例性实施例中,创建模块42,还用于获取所述从节点在完成创建所述第一对象的情况下发出的第一反馈信息,其中,所述第一反馈信息至少包括:所述从节点的节点信息,所述第一用户名,所述第一对象标识,所述第一用户名和所述第一对象标识之间的映射关系;将所述第一反馈信息确定为所述第一创建信息。
在一个示例性实施例中,同步模块44,还用于在分布式存储系统接收到第二指令的情况下,确定发出所述第二指令的第二对象,其中,所述第二指令用于对所述分布式存储系统保存的配置文件进行修改;获取所述第二对象的对象信息,其中,所述对象信息至少包括以下之一:所述第二对象的第二对象标识、所述第二对象的第二用户名;将所述第二对象信息与所述对象列表进行中所保存的多个对象的创建信息进行匹配,得到匹配结果。
在一个示例性实施例中,同步模块44,还用于在所述匹配结果指示所述多个对象的创建信息中存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定允许执行所述第二指令;在所述匹配结果指示所述对象列表中不存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定禁止执行所述第二指令。
在一个示例性实施例中,创建模块42,还用于在所述主节点对应多个从节点的情况下,确定所述主节点对应的全部从节点;将所述第一指令发送到所述全部从节点,以指示所述全部从节点均创建所述第一对象。
在一个示例性实施例中,确定模块46,还用于获取所述主节点基于所述第一指令发出的第二反馈信息;在所述第二反馈信息指示所述第一对象创建失败的情况下,向目标终端发起提示信息,其中,所述提示信息用于指示所述第一对象在所述主节点创建失败;在所述第二反馈信息指示所述第一对象创建成功的情况下,确定所述第一对象在所述主节点创建完成。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种第一对象的创建方法,其特征在于,包括:
在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述第一创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;
将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;
在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
2.根据权利要求1所述的方法,其特征在于,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,包括:
获取所述从节点对应的N个第二对象,以及获取所述N个第二对象分别对应的第二信息,其中,所述第二对象用于指示在创建所述第一对象之前就存在于所述从节点的对象,所述第二信息至少包括:所述第二对象对应的第二对象标识,其中,N为正整数;
确定每个第二对象标识的标识值;
通过预设算法对N个所述标识值进行排序,根据排序结果确定出N个所述标识值中最大的目标标识值,其中,所述预设算法的排序规则包括以下任一:对N个所述标识值按照从大到小的顺序进行排序、对N个所述标识值按照从小到大的顺序进行排序;
按照预设的编码规则对所述目标标识值进行编码,得到所述目标标识值对应的编码结果;
将所述编码结果确定为所述第一对象对应的第一对象标识;
根据所述第一对象标识在所述从节点创建第一对象。
3.根据权利要求1所述的方法,其特征在于,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,包括:
获取所述从节点在完成创建所述第一对象的情况下发出的第一反馈信息,其中,所述第一反馈信息至少包括:所述从节点的节点信息,所述第一用户名,所述第一对象标识,
所述第一用户名和所述第一对象标识之间的映射关系;
将所述第一反馈信息确定为所述第一创建信息。
4.根据权利要求1所述的方法,其特征在于,将所述第一创建信息同步至主节点对应的对象列表之后,所述方法还包括:
在分布式存储系统接收到第二指令的情况下,确定发出所述第二指令的第二对象,其中,所述第二指令用于对所述分布式存储系统保存的配置文件进行修改;
获取所述第二对象的第二对象信息,其中,所述第二对象信息至少包括以下之一:所述第二对象的第二对象标识、所述第二对象的第二用户名;
将所述第二对象信息与所述对象列表中所保存的多个对象的创建信息进行匹配,得到匹配结果;
根据所述匹配结果确定是否允许执行所述第二指令。
5.根据权利要求4所述的方法,其特征在于,根据所述匹配结果确定是否允许执行所述第二指令,包括:
在所述匹配结果指示所述多个对象的创建信息中存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定允许执行所述第二指令;
在所述匹配结果指示所述对象列表中不存在与所述第二用户名和/或所述第二对象标识匹配的目标对象信息的情况下,确定禁止执行所述第二指令。
6.根据权利要求1所述的方法,其特征在于,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,包括:
在所述主节点对应多个从节点的情况下,确定所述主节点对应的全部从节点;
将所述第一指令发送到所述全部从节点,以指示所述全部从节点均创建所述第一对象。
7.根据权利要求1所述的方法,其特征在于,在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象之后,所述方法还包括:
获取所述主节点基于所述第一指令发出的第二反馈信息;
在所述第二反馈信息指示所述第一对象创建失败的情况下,向目标终端发起提示信息,其中,所述提示信息用于指示所述第一对象在所述主节点创建失败;
在所述第二反馈信息指示所述第一对象创建成功的情况下,确定所述第一对象在所述主节点创建完成。
8.一种第一对象的创建装置,其特征在于,包括:
创建模块,用于在分布式存储系统接收到创建第一对象的第一指令的情况下,根据所述第一指令所携带的第一用户名在分布式存储系统对应的从节点创建第一对象,得到所述第一对象的第一创建信息,其中,所述创建信息至少携带所述从节点的节点标识、所述第一对象对应的第一对象标识、所述第一用户名;
同步模块,用于将所述第一创建信息同步至主节点对应的对象列表中,其中,所述对象列表用于存储允许对所述分布式存储系统访问的对象的创建信息;
确定模块,用于在所述第一创建信息同步成功的情况下,确定允许在所述主节点创建所述第一对象。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
10.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410178519.2A CN118075292A (zh) | 2024-02-08 | 2024-02-08 | 第一对象的创建方法和装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410178519.2A CN118075292A (zh) | 2024-02-08 | 2024-02-08 | 第一对象的创建方法和装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118075292A true CN118075292A (zh) | 2024-05-24 |
Family
ID=91105553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410178519.2A Pending CN118075292A (zh) | 2024-02-08 | 2024-02-08 | 第一对象的创建方法和装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118075292A (zh) |
-
2024
- 2024-02-08 CN CN202410178519.2A patent/CN118075292A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107819891B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111091429A (zh) | 电子票据标识分配方法及装置、电子票据生成系统 | |
CN113296792B (zh) | 存储方法、装置、设备、存储介质和系统 | |
CN110661829B (zh) | 文件下载方法及装置、客户端和计算机可读存储介质 | |
CN108959385B (zh) | 数据库部署方法、装置、计算机设备和存储介质 | |
CN106844111B (zh) | 云存储网络文件系统的访问方法 | |
CN108769186B (zh) | 业务权限控制方法及装置 | |
CN104539681A (zh) | 分布式gis加速系统和gis服务的处理方法 | |
CN111177776A (zh) | 多租户数据隔离方法与系统 | |
CN113821478A (zh) | 一种基于区块链的大文件存储方法及系统 | |
US20190372825A1 (en) | Communication apparatus, communication method, and recording medium | |
CN112422450A (zh) | 计算机设备、服务请求的流量控制方法及装置 | |
CN114172811A (zh) | 一种容器镜像部署平台及其部署方法 | |
CN114143090A (zh) | 基于网络安全架构的防火墙部署方法、装置、设备及介质 | |
CN113177179A (zh) | 数据请求连接管理方法、装置、设备及存储介质 | |
US11301436B2 (en) | File storage method and storage apparatus | |
CN118075292A (zh) | 第一对象的创建方法和装置、存储介质及电子设备 | |
CN106936643B (zh) | 一种设备联动方法以及终端设备 | |
CN113746918A (zh) | 超文本传输协议代理方法及系统 | |
CN113986835A (zh) | FastDFS分布式文件的管理方法、装置、设备及存储介质 | |
CN114936254A (zh) | 云链融合机制下的食品安全大数据共享管理方法及系统 | |
CN109492376B (zh) | 设备访问权限的控制方法、装置及堡垒机 | |
CN113285933A (zh) | 用户访问控制方法、装置、电子设备与存储介质 | |
JP2014524210A (ja) | 可変長ノンスの生成 | |
CN109257201B (zh) | 一种License的发送方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |