CN105786916B - 一种基于大容量表的分层目录的存储方法及*** - Google Patents
一种基于大容量表的分层目录的存储方法及*** Download PDFInfo
- Publication number
- CN105786916B CN105786916B CN201410827977.0A CN201410827977A CN105786916B CN 105786916 B CN105786916 B CN 105786916B CN 201410827977 A CN201410827977 A CN 201410827977A CN 105786916 B CN105786916 B CN 105786916B
- Authority
- CN
- China
- Prior art keywords
- catalogue
- directory
- large capacity
- data block
- record
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于大容量表的分层目录的存储方法及***。该方法包括:将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层,并存储所述对象或目录;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层,并存储所述父目录路径的目录。因此,实现了同一层的对象和目录集中存储,进而在检索时提高了效率。
Description
技术领域
本发明涉及云计算领域,尤其涉及一种基于大容量表的分层目录的存储方法及***。
背景技术
传统关系型数据库对于万亿级条数的数据的性能和可扩容性方面都比较差。大容量表可以容纳PB级的数据,随着业务的发展,其数量可数十倍级的增长。虽然大容量表解决了容量的限制,但其目录或文件在存储方时,被查询的特定层级的目录或文件是随机分布的,这会导致大量的连续扫描,和随后的路径解析,从而消耗大量IO和CPU资源。例如,以抓取的字母排序比较靠前、中间、靠后的/bn1/a_dp1/a_dp2/b、/bn1/a_dp1/mfile_dp2、/bn1/a_dp1/z_dp2/z的路径为例:
/bn1/a_dp1/a_dp2/b
....
/bn1/a_dp1/a_dp2/c/23/s
/bn1/a_dp1/ab_dp2/c/23/s
(中间共有600亿个对象记录)
....
/bn1/a_dp1/mfile_dp2
....
/bn1/a_dp1/a_dp2/c/23/s
/bn1/a_dp1/ab_dp2/c/23/s
(中间共有400亿个对象记录)
....
/bn1/a_dp1/z_dp2/z
假如在一台服务器上可以存放100亿条对象记录,有10台服务器,为检索/bn1/a_dp1的下一级目录或文件,需要对以/bn1/a_dp1/a_dp2/b到/bn1/a_dp1/z_dp2/z止的10台服务器进行全扫描,且在扫描的同时还需要对每条记录的对象名进行分级解析,以截取到第3级目录,这样的话做一次目录检索,需要对10台服务器的存储做一次全扫描,对1000亿条对象记录做字符串截取、匹配、去重多种运算。因此,大容量表的目录存储方式,使得同一层的目录和对象不能集中存储,导致在检索时效率极低。
发明内容
本发明要解决的技术问题是大容量表的目录和对象存储方式,使得同一层的目录和对象不能集中存储,导致在检索时效率极低。
根据本发明一方面,提出一种基于大容量表的分层目录的存储方法,包括:
将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层,并存储所述对象或目录;
获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层,并存储所述父目录路径的目录。
进一步,对象或目录作为大容量表的键(key),将所述目录下一层所对应的对象数目作为所述目录所对应的值(value);
在添加对象时,该对象的上层目录对应的value递增;
在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减。
进一步,在添加对象时,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1;
在删除对象时,如果该对象的上层目录的value递减后为0,则将所述目录删除。
进一步,保存数据块的起始记录和终止记录、以及所述数据块所存储的服务器,其中,所述数据块包括大容量表内的对象或目录的记录;
在检索目录或对象时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
进一步,所述标识符为前导符,标识同一层的对象或目录排序前置。
根据本发明的另一方面,还提出一种基于大容量表的分层目录的存储***,包括:
处理模块,用于将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层;
存储模块,用于存储对象或目录。
进一步,维护模块,用于将对象或目录作为大容量表的key,将所述目录下一层所对应的对象数目作为所述目录所对应的value;在添加对象时,该对象的上层目录对应的value递增;在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减。
进一步,维护模块用于在添加对象时,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1;在删除对象时,如果该对象的上层目录的value递减后为0,则将所述目录删除。
进一步,记录模块,用于保存数据块的起始记录和终止记录、以及所述数据块所存储的服务器,其中,所述数据块包括大容量表内的对象或目录的记录;
其中,在检索目录或对象时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
进一步,所述标识符为前导符,标识同一层的对象或目录排序前置。
与现有技术相比,本发明通过将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层,并存储所述对象或目录;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层,并存储所述父目录路径的目录。因此,实现了同一层的对象和目录集中存储,进而在检索时提高了效率。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同说明书一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明基于大容量表的分层目录的存储方法的一个实施例的流程示意图。
图2为本发明基于大容量表的分层目录的存储***的一个实施例的结构示意图。
图3为本发明分层目录存储与现有技术存储方式对比图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图1为本发明基于大容量表的分层目录的存储方法的一个实施例的流程示意图。该方法包括以下步骤:
在步骤110,将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层,并存储所述对象或目录。
在步骤120,获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则执行步骤130,若是,则执行步骤140。
在步骤130,在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层,并存储所述父目录路径的目录。
在步骤140,不再执行加标识符和存储操作。
其中,所述标识符可以为前导符,例如,字符最小值(Character.MIN-VALUE),Character.MIN-VALUE在计算机中是一个不可打印和显示输出的字符,容易分辨起见以Δ表示,由于***默认按字符顺序排列,通过在对象或目录首字母前加前导符,就能实现同一层的对象或目录排序前置,并连续存放在一起。本领域的技术人员应当理解,Δ只是用于举例,在计算机中可以用其他任何形状标识,不应理解为对本发明的限制。
以对象/bucketname1/a_depth1/z_depth2/z为例,bucketname1为第一层,a_depth1为第二层,z_depth2为第三层,z为最低层,即,对象或目录的路径从左到右依次为第一层/第二层/第三层/第四层/……/第n层/最低层,则对象/bucketname1/a_depth1/z_depth2/z经过计算的输出为:
/bucketname1/a_depth1/z_depth2/Δz
/bucketname1/a_depth1/Δz_depth2
/bucketname1/Δa_depth1
由于,第一层为存储段(bucketname)层,不是对象,所以不在第一层加标识符。
本发明将同一层对象或目录存储在一起,例如:
/bn1/Δa_dp1/
……
/bn1/a_dp1/Δa_dp2/
/bn1/a_dp1/Δab_dp2/
/bn1/a_dp1/Δmfile_dp2
/bn1/a_dp1/Δz_dp2/
……
/bn1/a_dp1/a_dp2/Δb
/bn1/a_dp1/a_dp2/Δc/
/bn1/a_dp1/ab_dp2/Δc/
……
/bn1/a_dp1/z_dp2/Δz
其中,以“/”结尾的表示目录,无“/”结尾的表示对象。
利用元数据表,对大容量表的情况进行记录,例如,记录大容量表中对象或目录在服务器以及在服务器的数据块上的存储情况,比如一个数据块大小是128M,元数据表会记录数据块所在的服务器以及数据块的起始记录和终止记录,通过元数据表的检索可以很快定位到需要查询的对象或目录。其中,元数据表可以单独放在一台服务器上,也可以放在多台服务器上。
例如在检索/bn1/a_dp1/的下一级对象或目录时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
如果服务器中有1000亿条记录,三层目录有100万条记录,现有技术中要IO操作1000亿次,而本发明所需要做的IO操作是100万次。
另外,现有技术中对1000亿条对象记录做字符串截取、匹配、去重等多种运算,而本发明的对象记录仅需去掉前导符操作。
在本发明的实施例中,将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层,并存储所述对象或目录;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层,并存储所述父目录路径的目录。因此,实现了同一层的对象和目录集中存储,进而在检索时提高了效率。
本发明的另一个实施例,对象或目录作为大容量表的键(key),该大容量表为对象目录分层存储表,将所述目录下一层所对应的对象数目作为所述目录所对应的值(value)。
在添加对象时,该对象的上层目录对应的value递增,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1。
在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减,如果该对象的上层目录的value递减后为0,则将所述目录删除。
在本发明的实施例中,在目录层次索引,删除一个目录下的对象时,如果这个目录下为空,则会将该目录一并删除;在增加或删除对象时,通过对各层分解后的目录下的对象数进行累加或递减,并在目录下的对象数为0时删除该目录,在提高检索性能和存储容量的同时实现了对目录文件增删维护管理的功能。
图2为本发明基于大容量表的分层目录的存储***的一个实施例的结构示意图。该***包括:处理模块210和存储模块220。其中:
处理模块210,用于将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层。
存储模块220,用于存储对象或目录。
其中,所述标识符可以为前导符,例如,字符最小值(Character.MIN-VALUE),Character.MIN-VALUE在计算机中是一个不可打印和显示输出的字符,容易分辨起见以Δ表示,由于***默认按字符顺序排列,通过在对象或目录首字母前加前导符,就能实现同一层的对象或目录排序前置,并连续存放在一起。本领域的技术人员应当理解,Δ只是用于举例,在计算机中可以用其他任何形状标识,不应理解为对本发明的限制。
以对象/bucketname1/a_depth1/z_depth2/z为例,bucketname1为第一层,a_depth1为第二层,z_depth2为第三层,z为最低层,即,对象或目录的路径从左到右依次为第一层/第二层/第三层/第四层/……/第n层/最低层,则对象/bucketname1/a_depth1/z_depth2/z经过计算的输出为:
/bucketname1/a_depth1/z_depth2/Δz
/bucketname1/a_depth1/Δz_depth2
/bucketname1/Δa_depth1
由于,第一层为存储段(bucketname)层,不是对象,所以不在第一层加标识符。
本发明将同一层对象或目录存储在一起,例如:
/bn1/Δa_dp1/
……
/bn1/a_dp1/Δa_dp2/
/bn1/a_dp1/Δab_dp2/
/bn1/a_dp1/Δmfile_dp2
/bn1/a_dp1/Δz_dp2/
……
/bn1/a_dp1/a_dp2/Δb
/bn1/a_dp1/a_dp2/Δc/
/bn1/a_dp1/ab_dp2/Δc/
……
/bn1/a_dp1/z_dp2/Δz
其中,以“/”结尾的表示目录,无“/”结尾的表示对象。
该***还包括记录模块230,用于保存数据块的起始记录和终止记录、以及所述数据块所存储的服务器,其中,所述数据块包括大容量表内的对象或目录的记录。所述记录模块230可以为元数据表。例如,一个数据块大小是128M,元数据表会记录数据块所在的服务器以及数据块的起始记录和终止记录,通过元数据表的检索可以很快定位到需要查询的对象或目录。其中,元数据表可以单独放在一台服务器上,也可以放在多台服务器上。
例如在检索/bn1/a_dp1/的下一级对象或目录时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
如果服务器中有1000亿条记录,三层目录有100万条记录,现有技术中要IO操作1000亿次,而本发明所需要做的IO操作是100万次。
另外,现有技术中对1000亿条对象记录做字符串截取、匹配、去重等多种运算,而本发明的对象记录仅需去掉前导符操作。
在本发明的实施例中,通过将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层。因此,实现了同一层的对象和目录集中存储,进而在检索时提高了效率。
本发明的另一实施例,该***还包括维护模块240,用于将对象或目录作为大容量表的key,该大容量表为对象目录分层存储表,将所述目录下一层所对应的对象数目作为所述目录所对应的值(value),在添加对象时,该对象的上层目录对应的value递增,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1,在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减,如果该对象的上层目录的value递减后为0,则将所述目录删除。
在本发明的实施例中,在目录层次索引,删除一个目录下的对象时,如果这个目录下为空,则会将该目录一并删除;在增加或删除对象时,通过对各层分解后的目录下的对象数进行累加或递减,并在目录下的对象数为0时删除该目录,在提高检索性能和存储容量的同时实现了对目录文件增删维护管理的功能。
下面以一个具体实施例对本发明做进一步说明。
如图3所示,首先在10台配置为2路intel E5-2640v2、128GB内存、4T硬盘空间的服务器上部署分布式数据库,然后在其上创建对象目录分层存储表。
当云存储用户上传对象时,先对路径最低层对象或目录的首字母前加前导符进行转义,然后获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加前导符进行转义,并存储所述父目录路径的目录,将同一层的对象和目录集中存储。
在添加对象时,该对象的上层目录对应的value递增,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1,在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减,如果该对象的上层目录的value递减后为0,则将所述目录删除。
其中,利用元数据表,对对象目录分层存储表的情况进行记录,例如,记录对象目录分层存储表中对象或目录在服务器以及在服务器的数据块上的存储情况。在检索目录或对象时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
现有技术中,检索目录或对象时,需要对服务器的存储做一次全扫描,并且要对所检索的目录或对象做字符串截取、匹配、去重等多种运算。
在本发明的实施例中,与传统数据库相比,本发明只需遍历所要查询的某一目录或对象层的数据,并且,目录或对象记录仅需去掉前导符操作。因此,本发明计算和存储能力横向扩展了10倍,且可以方便的做横向扩容,相较于大容量表默认存储方法,其检索效率提高了5个数量级。
至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
可能以许多方式来实现本发明的方法以及装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法以及装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。
Claims (8)
1.一种基于大容量表的分层目录的存储方法,包括:
将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层,并存储所述对象或目录;
获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层,并存储所述父目录路径的目录;
保存数据块的起始记录和终止记录、以及所述数据块所存储的服务器,其中,所述数据块包括大容量表内的对象或目录的记录;
在检索目录或对象时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
2.根据权利要求1所述的基于大容量表的分层目录的存储方法,还包括:
对象或目录作为大容量表的键key,将所述目录下一层所对应的对象数目作为所述目录所对应的值value;
在添加对象时,该对象的上层目录对应的value递增;
在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减。
3.根据权利要求2所述的基于大容量表的分层目录的存储方法,包括:
在添加对象时,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1;
在删除对象时,如果该对象的上层目录的value递减后为0,则将所述目录删除。
4.根据权利要求1至3任一所述的基于大容量表的分层目录的存储方法,包括:
所述标识符为前导符,标识同一层的对象或目录排序前置。
5.一种基于大容量表的分层目录的存储***,包括:
处理模块,用于将给定路径最低层对象或目录的首字母前加标识符,标识所述对象或目录为最低层;获取所述对象或目录的父目录路径,并判断所述父目录路径是否为第一层,若不是,则在所述父目录路径的目录的首字母前加标识符,标识所述父目录路径为最低层;
存储模块,用于存储对象或目录;
记录模块,用于保存数据块的起始记录和终止记录、以及所述数据块所存储的服务器,其中,所述数据块包括大容量表内的对象或目录的记录;
其中,在检索目录或对象时,先通过元数据表中数据块的起始记录和终止记录找到与要检索的目录或对象对应的数据块,再找到所述数据块所存储的服务器,检索所述服务器。
6.根据权利要求5所述的基于大容量表的分层目录的存储***,还包括:
维护模块,用于将对象或目录作为大容量表的键key,将所述目录下一层所对应的对象数目作为所述目录所对应的值value;在添加对象时,该对象的上层目录对应的value递增;在删除对象时,先删除该对象的键值对记录,并将所述对象的上层目录的value递减。
7.根据权利要求6所述的基于大容量表的分层目录的存储***,包括:
维护模块用于在添加对象时,如果该对象的上层目录不存在,则先创建目录,并将所述目录对应的value设置为1;在删除对象时,如果该对象的上层目录的value递减后为0,则将所述目录删除。
8.根据权利要求5至7任一所述的基于大容量表的分层目录的存储***,包括:
所述标识符为前导符,标识同一层的对象或目录排序前置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410827977.0A CN105786916B (zh) | 2014-12-26 | 2014-12-26 | 一种基于大容量表的分层目录的存储方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410827977.0A CN105786916B (zh) | 2014-12-26 | 2014-12-26 | 一种基于大容量表的分层目录的存储方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105786916A CN105786916A (zh) | 2016-07-20 |
CN105786916B true CN105786916B (zh) | 2019-11-12 |
Family
ID=56388918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410827977.0A Active CN105786916B (zh) | 2014-12-26 | 2014-12-26 | 一种基于大容量表的分层目录的存储方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105786916B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144991B (zh) * | 2017-06-15 | 2021-09-14 | 北京京东尚科信息技术有限公司 | 动态分表的方法、装置、电子设备和计算机可存储介质 |
CN110797082A (zh) * | 2019-10-24 | 2020-02-14 | 福建和瑞基因科技有限公司 | 基因测序数据的存储读取方法及*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226552A (zh) * | 2008-02-01 | 2008-07-23 | 北京乾坤化物数字技术有限公司 | 一种利用多维结构树构成的目录管理海量信息的方法 |
CN103870588A (zh) * | 2014-03-27 | 2014-06-18 | 杭州朗和科技有限公司 | 一种在数据库中使用的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4945475A (en) * | 1986-10-30 | 1990-07-31 | Apple Computer, Inc. | Hierarchical file system to provide cataloging and retrieval of data |
-
2014
- 2014-12-26 CN CN201410827977.0A patent/CN105786916B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226552A (zh) * | 2008-02-01 | 2008-07-23 | 北京乾坤化物数字技术有限公司 | 一种利用多维结构树构成的目录管理海量信息的方法 |
CN103870588A (zh) * | 2014-03-27 | 2014-06-18 | 杭州朗和科技有限公司 | 一种在数据库中使用的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105786916A (zh) | 2016-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110268394A (zh) | Kvs树 | |
CN103631842B (zh) | 用于检测多列复合键列集合的方法和*** | |
CN110291518A (zh) | 合并树无用单元指标 | |
CN110268399A (zh) | 用于维护操作的合并树修改 | |
US10114846B1 (en) | Balanced distribution of sort order values for a multi-column sort order of a relational database | |
CN106126543B (zh) | 一种关系型数据库到MongoDB的模型转换和数据迁移方法 | |
CN104462185B (zh) | 一种基于混合结构的数字图书馆云存储*** | |
US20190065546A1 (en) | Multi stage aggregation using digest order after a first stage of aggregation | |
US10860562B1 (en) | Dynamic predicate indexing for data stores | |
CN104217290A (zh) | 一种档案管理*** | |
CN107515879B (zh) | 用于文档检索的方法和电子设备 | |
CN108509275A (zh) | 一种目录迁移方法和元数据负载均衡方法 | |
AU2018290753B2 (en) | Systems and methods of creation and deletion of tenants within a database | |
CN102169491B (zh) | 一种多数据集中重复记录动态检测方法 | |
CN110888837B (zh) | 对象存储小文件归并方法及装置 | |
US10664460B2 (en) | Index B-tree maintenance for linear sequential insertion | |
CN104462527A (zh) | 一种数据去重的方法及装置 | |
CN105160273A (zh) | 一种基于访问控制和智能检索的知识管理方法 | |
WO2021082928A1 (zh) | 数据缩减的方法、装置、计算设备和存储介质 | |
CN104008107A (zh) | 运维知识库的实现方法 | |
CN105630923A (zh) | 一种实现档案管理信息化的方法 | |
CN105786916B (zh) | 一种基于大容量表的分层目录的存储方法及*** | |
CN108090186A (zh) | 一种大数据平台上的电力数据去重方法 | |
CN108108478B (zh) | 数据格式转换方法、***及电子设备 | |
CN104537023A (zh) | 一种反向索引记录的存储方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220128 Address after: 100007 room 205-32, floor 2, building 2, No. 1 and No. 3, qinglonghutong a, Dongcheng District, Beijing Patentee after: Tianyiyun Technology Co.,Ltd. Address before: No.31, Financial Street, Xicheng District, Beijing, 100033 Patentee before: CHINA TELECOM Corp.,Ltd. |
|
TR01 | Transfer of patent right |