CN111752941B - 一种数据存储、访问方法、装置、服务器及存储介质 - Google Patents

一种数据存储、访问方法、装置、服务器及存储介质 Download PDF

Info

Publication number
CN111752941B
CN111752941B CN201910701341.4A CN201910701341A CN111752941B CN 111752941 B CN111752941 B CN 111752941B CN 201910701341 A CN201910701341 A CN 201910701341A CN 111752941 B CN111752941 B CN 111752941B
Authority
CN
China
Prior art keywords
field
storage
data
independent storage
data access
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
Application number
CN201910701341.4A
Other languages
English (en)
Other versions
CN111752941A (zh
Inventor
唐智灵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201910701341.4A priority Critical patent/CN111752941B/zh
Publication of CN111752941A publication Critical patent/CN111752941A/zh
Application granted granted Critical
Publication of CN111752941B publication Critical patent/CN111752941B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

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是本发明实施例二中的一种数据访问方法的流程图;
图3A是本发明实施例三中的一种数据访问方法的流程图;
图3B是本发明实施例三提供的现有技术中的数据访问示意图;
图3C是本发明实施例三提供的另一种数据访问示意图;
图4是本发明实施例四中的一种数据存储装置的结构图;
图5是本发明实施例五中的一种数据访问装置的结构图;
图6是本发明实施例六中的一种服务器的结构图;
图7是本发明实施例七中的一种服务器的结构图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的一种数据存储方法的流程图,本发明实施例适用于对包含有大量默认值的数据记录进行数据存储的情况,该方法由数据存储装置执行,该装置由软件和/或硬件实现,并具体配置于具备一定数据存储能力的服务器中。
如图1所示的一种数据存储方法,应用于数据存储服务器,包括:
S110、获取原始数据;其中,所述原始数据包括至少一条记录,各所述记录包括至少一个字段。
其中,原始数据可以是从企业内部系统所获取的与企业相关联的数据。示例性地,企业内部系统可以是企业的数据库系统、邮箱系统以及即时沟通系统以及官方网站等。
可选的,获取原始数据,可以是实时或定时从企业内部系统对应的存储设备或云端中获取数据,或者实时或定时接收企业内部系统所发送的数据。示例性地,获取原始数据可以是通过使用爬虫在企业内部系统中进行相关数据的爬取。
典型的,原始数据可以是进行信息检索服务时所采用的正排索引表对应的归一化后的待检索信息全集,该待检索信息全集由多条记录构成,每条记录代表一个“网页”或“商品”等,每条记录通常分为多个字段,以描述这个“网页”或“商品”的基本信息以及特征等。通常,在搜索引擎的现有存储方案中,这些记录被组织成连续放置的正排文件,同一条记录的相邻字段内容存储在相邻位置,相邻的记录相邻存储。
S120、确定所述原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段。
其中,有效字段值可以理解为有意义的字段值,也即非默认字段值。
示例性地,确定原始数据的各字段的有效字段值的覆盖比,可以是确定各字段的有效字段值的数量;根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比。
相应的,将覆盖比小于设定阈值的字段确定为独立存储字段,后续将独立存储字段采用独立存储方式进行存储;将除独立存储字段以外的其他字段,采用集中存储方式进行存储。其中,集中存储方式可以理解为与现有技术相同的存储方式,独立存储方式为将独立存储字段以及记录标识单独存储的存储方式。
可以理解的是,在确定各字段的有效字段值的数量时,可以针对每个字段,将各记录在该字段的字段值与默认值进行比较,并统计确定无效字段值的数量;根据原始数据中所包含的记录的总数量与无效字段值的数量的差值,确定该字段的有效字段值的数量;或者还可以针对每个字段,将各记录在该字段的字段值与默认值进行比较,并统计有效字段值的数量。当然,为了便于进行有效字段值的统计,在确定各字段的有效字段值的数量时,还可以对原始数据进行排序,并根据排序结果确定各字段对应的有效字段值的数量。
可选的,设定阈值可以根据采取独立存储方式和采用集中存储方式的存储效率的相对关系确定。示例性地,当字段取有效字段值的记录数量较少时,采用集中存储方式由于需要插入较多默认值,导致系统效率不高,而采用独立存储方式由于无默认值的存在,所以存储效率更高,所以覆盖比较低时,独立存储方式更佳;随着取有效字段值记录数量的增加,集中存储方案是效率不断提高,而独立存储方式的字典中包括与内容无关的查找表及其连接数据占用额外空间的问题逐渐显现,当记录增加到一定程度时,这些无关数据将导致独立存储方式的效率低于集中存储方式,所以当覆盖率较高时,采用集中存储方式更好,这个临界点的比例,可取为设定阈值。同时,设定阈值还可以考虑两种存储方式的读写效率,具体需要根据实现的效果计算。或者可选的,设定阈值还可以由技术人员根据需要或经验值进行设定。
S130、将各所述记录在所述独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各所述记录在除所述独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件。
具体的,采用独立存储方式将独立存储字段中的有效字段值独立存储,得到独立存储文件;采用集中存储方式,将原始数据中所包含各记录在除独立存储字段以外的各其他存储字段对应的字段值进行存储,得到集中存储文件。
其中,独立存储字段可以为至少一个;相应的,独立存储文件的数量也为至少一个。集中存储文件的数量仅为1个。
可以理解的是,为了便于对集中存储文件和各独立存储文件的获取,在生成集中存储文件和独立存储文件之后,还可以生成数据配置文件,以记录集中存储文件和各独立存储文件的存储路径、记录总数以及字段信息等。
其中,集中存储文件和独立存储文件中各内容的存储方式可以采用顺序存储结构、连接存储结构、索引存储结构以及散列存储结构中的至少一种。
举例说明,参见表1所示的原始数据,包含5条记录和4个字段,采用<字段名:字段值>的方式表示。其中,“姓名”、“年龄”和“国籍”的覆盖比为100%;“省”的覆盖比为80%;“州”的覆盖比为20%。若设定阈值为50%,则“州”确定为独立存储字段,采用独立存储方式进行存储,存储结果参见表2;“姓名”、“年龄”、“国籍”以及“省”为非独立存储字段,采用集中存储方式进行存储,存储结果参见表3。而现有技术直接将所有字段对应的字段值采用集中存储方式进行存储,存储结果参见表4。其中,表3和表4中的“---”用于表示默认值。
表1:
表2:
表3: 表4:
由于表4中的集中存储文件中记录5对应的学生为美国国籍,而其他4条记录的学生均为中国国籍,导致在表4中的“州”字段中添加了大量的默认值“---”,导致表4中存在大量默认值冗余,而为了便于后续更新过程为该字段添加有效字段值,因此不能贸然去除为默认值所分配的内存空间。
而采用本方案表2和表3的存储方式,由于“州”字段中含有的默认值占比较多,也即有效字段值的覆盖比较小,因此将“州”字段作为独立存储字段,在集中存储文件对应的表3中,将“州”字段删除,并将包含该字段的记录标识“erric”(示例中的记录标识为“姓名”字段,当然在其他示例中可以采用其他字段)与“Florida”对应存储形成表2中的独立存储文件。由于在表2中的独立存储文件中并未存储有该字段内容为默认值的记录,所以减少了存储冗余,提高了数据存储效率,奖励磁盘与内存使用率约15%,随着字段冗余度的增加,这一比例将会更高。另外,当有其他记录对应的“州”字段为有效字段值时,可以在表2的独立存储文件中对应添加。
本发明实施例通过获取原始数据;其中原始数据包括至少一条记录,各记录包括至少一个字段;确定原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;将各记录在独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各记录在除独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件。上述技术方案通过将有效字段值的覆盖比较小的字段作为独立存储字段进行存储得到独立存储文件,将除独立存储字段以外的其他字段对应的字段值进行存储得到集中存储文件,减少了集中存储文件中有效字段值以外的默认值的添加比例,并通过减少默认值的数量,减少了对原始数据存储时的存储空间的占用,同时避免了在原始数据传输过程中的网络带宽的浪费。
在本发明实施例的一个可选实施方式中,为了便于对集中存储文件中的数据进行访问,还可以在得到集中存储文件之后,执行以下操作:根据所述原始数据的各记录在所述集中存储文件中的存储顺序,生成与各记录的记录标识相对应的索引标识,以用于在接收到数据访问指令时根据待访问记录的记录标识所对应的索引标识,在所述集中存储文件中查找待访问记录。
在本发明实施例的另一可选实施方式中,为了标记原始数据中各字段的字段属性,以根据字段属性对独立存储字段和非独立存储字段加以区分,还可以在将至少一个字段确定为独立存储字段之后,执行以下操作:在所述原始数据对应的索引字段配置文件中,对各所述独立存储字段进行标记,以用于在接收到数据访问指令时根据所述标记确定待访问字段是否存储于独立存储文件中。
实施例二
图2是本发明实施例二中的一种数据访问方法的流程图,本发明实施例适用于对数据存储服务器中存储的数据文件进行数据访问的情况,该方法由数据访问装置,该装置由软件和/或硬件实现,并具体配置于具备一定数据处理能力的服务器中。
如图2所示的一种数据访问方法,应用于数据访问服务器,包括:
S210、获取原始数据对应的独立存储文件和集中存储文件。
其中,所述独立存储文件存储有所述原始数据包含的至少一个记录在独立存储字段的有效字段值;所述集中存储文件存储有所述原始数据包含的至少一个记录在除所述独立存储字段以外的其他字段的字段值;所述独立存储字段中有效字段值的覆盖比小于设定阈值。
其中,原始数据可以理解为数据存储服务器从企业内部系统所获取的与企业相关联的数据。示例性地,企业内部系统可以是企业的数据库系统、邮箱系统以及即时沟通系统以及官方网站等。
典型的,原始数据可以是进行信息检索服务时所采用的正排索引表对应的归一化后的待检索信息全集,该待检索信息全集由多条记录构成,每条记录代表一个“网页”或“商品”等,每条记录通常分为多个字段,以描述这个“网页”或“商品”的基本信息以及特征等。通常,在搜索引擎的现有存储方案中,这些记录被组织成连续放置的正派文件,同一条记录的相邻字段内容存储在相邻位置,相邻的记录相邻存储。
其中,有效字段值可以理解为有意义的字段值,也即非默认字段值。
其中,各字段的有效字段值的覆盖比通过数据存储服务器根据以下方式确定:确定各字段的有效字段值的数量;根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比。相应的,覆盖比小于设定阈值的字段为独立存储字段,其他字段为非独立存储字段。
示例性地,从数据存储服务器中获取原始数据对应的独立存储文件和集中存储文件,或者从与数据存储服务器所关联的其他存储设备或云端中,对原始数据对应的独立存储文件和集中存储文件进行获取。
S220、分别将所述集中存储文件和所述独立存储文件中所包含的内容加载至内存。
需要说明的是,独立存储文件和集中存储文件的相关内容与数据存储服务器所存储的内容和存储方式相一致,在此不再赘述。相应的,按照集中存储文件和独立存储文件中的数据存储顺序和存储格式,分别将集中存储文件和独立存储文件中所包含的内容加载至内存中。
S230、接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作。
其中,数据访问指令包括添加指令、查询指令、删除指令和修改指令中的至少一种;相应的,数据访问操作包括数据添加操作、数据查询操作、数据删除操作和数据修改操作中的至少一种。
当用户需要访问集中存储文件和/或独立存储文件时,向数据访问服务器中发送数据访问指令;当数据访问服务器接收到数据访问指令后,获取数据访问指令中的待查询标识,并根据待查询标识查找集中存储文件和/或独立存储文件中的内容,并对查询到的内容执行数据访问操作。其中,待查询标识可以是记录标识、字段标识以及记录的索引标识等中的至少一种。
由于集中存储文件通常采用序列类型进行内容存储,相应的加载的集中存储文件中的内容也为序列类型,因此在执行根据所述数据访问指令对集中存储文件的加载内容执行数据访问操作时,可以采用以下方式进行:根据所述数据访问指令确定所述记录标识对应的索引标识;其中,所述索引标识根据所述原始数据中对应记录在所述集中存储文件中的存储顺序生成;根据所述索引标识和所述数据访问指令包含的待访问字段,查找所述集中存储文件的加载内容中的字段值,并对查找到的字段值执行相应的数据访问操作。
可选的,根据数据访问指令确定记录标识对应的索引标识,可以是直接获取数据访问指令中的索引标识;或者获取数据访问指令中的记录标识,根据记录标识查找确定与记录标识相对应的索引标识。其中,根据记录标识与索引标识之间的对照关系可以在加载集中存储文件时同步加载,进而通过线上查找的方式确定与记录标识对应的索引标识;当然,还可以通过用户线下查找的方式确定与记录标识对应的索引标识。
可以理解的是,当根据数据访问指令对集中存储文件和至少一个独立存储文件的加载内容执行数据访问操作之后,还可以将对所述集中存储文件的加载内容的访问结果以及对所述独立存储文件的加载内容的访问结果合并,并展示合并后的访问结果。
本发明实施例通过获取存储有原始数据包含的至少一个记录在独立存储字段的有效字段值的独立存储文件,以及存储有原始数据包含的至少一个字段在除独立存储字段以外的其他字段的字段值;分别将集中存储文件和独立存储文件中所包含的内容加载至内存;接收数据访问指令,并根据数据访问指令对集中存储文件和/或独立存储文件的加载内容执行数据访问操作;其中独立存储字段中有效字段值的覆盖比小于设定阈值。上述技术方案通过对有效字段值的覆盖比较小的字段作为独立存储字段进行存储所得到的独立存储文件的获取和加载,以及将除独立存储字段以外的其他字段对应的字段值进行存储所得到的集中存储文件的获取和加载,由于集中存储文件中减少了有效字段值以外的默认值的数量,减少了原始数据存储时的存储空间的占用,那么在进行数据加载以进行访问时,加载至数据访问服务器的内存中的空间占用量也相应减少,同时还减少了数据加载过程的数据加载量,节约了数据加载时间,避免了数据传输过程中网络带宽的浪费。
实施例三
图3A是本发明实施例三中的一种数据访问方法的流程图,本发明实施例在上述各实施例的技术方案的基础上进行了优化改进。
进一步地,将操作“在将所述独立存储文件中所包含的内容加载至内存中”细化为“将所述独立存储文件中的内容读入内存中,并将所读入的内容的记录标识和各记录标识在所述独立存储字段中的有效字段值,写入与所述独立存储文件对应的字典”;相应的,将操作“根据所述数据访问指令对所述独立存储文件的加载内容执行数据访问操作”细化为“根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作”,以提高对独立存储文件中的数据访问效率。
如图3A所示的一种数据访问方法,应用于数据访问服务器,包括:
S310、获取原始数据对应的独立存储文件和集中存储文件。
其中,所述独立存储文件存储有所述原始数据包含的至少一个记录在独立存储字段的有效字段值;所述集中存储文件存储有所述原始数据包含的至少一个记录在除所述独立存储字段以外的其他字段的字段值;所述独立存储字段中有效字段值的覆盖比小于设定阈值。
S320、将所述集中存储文件中所包含的内容加载至内存。
具体的,直接将集中存储文件中的数据以序列类型加载至数据访问服务器的内存中。
S330、将所述独立存储文件中的内容读入内存中,并将所读入的内容的记录标识和各记录标识在所述独立存储字段中的有效字段值,写入与所述独立存储文件对应的字典。
将独立存储文件中的内容读入内存之后,为了便于数据访问,将所读入的内容的记录标识以及各记录标识在当前独立存储字段中的有效字段值,写入与当前独立存储文件对应的字典中。也即,将独立存储文件中的内容,将记录标识作为键,将记录标识对应的字段内容作为键值读入字典中。
需要说明的是,本发明实施例对S320和S330的先后顺序不做任何限定,两者可以先后执行,还可以同时执行。
S340、接收数据访问指令。
当用户在搜索引擎,或者是数据访问服务器的访问界面具备数据访问需求时,向数据访问服务器发送数据访问指令;相应的数据访问服务器接收数据访问指令。
其中,数据访问指令包括记录标识、字段标识以及记录的索引标识等中的至少一种,用于进行数据访问。
S350、根据所述数据访问指令对所述集中存储文件的加载内容执行数据访问操作。
根据数据访问指令确定待查询记录对应的索引标识,根据集中存储文件加载的首地址以及各记录的存储空间大小,确定待查询记录对应的加载地址;根据加载地址查找相应的记录,并对查找到的记录进行输出展示,或进一步对查找到的记录中待查询字段对应的字段值进行增加、删除、修改和/或查找操作。
S360、根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作。
在本发明实施例的一个可选实施方式中,根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作,可以是:根据所述数据访问指令包含的待访问字段,确定待查询字典;根据所述数据访问指令确定待访问记录的记录标识,并根据所述待访问记录的记录标识,在所述待查询字典中查找与所述待访问字段对应的有效字段值;对所述待访问字段对应的有效字段值执行相应的数据访问操作。
可以理解的是,当原始数据仅对应一个独立存储字段时,相应的独立存储文件也仅为一个,因此可以直接将独立存储文件对应的字典作为待查询字典;当原始数据对应至少两个独立存储字段时,需要根据独立存储字段对各字典加以区分,以通过独立存储字段确定待查询字典。
示例性地,根据数据访问指令确定待访问记录的记录标识,可以是直接获取数据访问指令中所包含的待访问记录的记录标识;还可以是根据数据访问指令所包含的待访问记录的索引标识,查找确定与索引标识对应的记录标识,并以记录标识作为键,在待查询字典中查找与记录标识对应的有效字段值。
需要说明的是,当用户对原始数据中的字段进行查找时,可能并不确定所查询字段属于独立存储字段还是非独立存储字段,因此也无法确定对集中存储文件的加载内容还是对独立存储文件对应的字典中的内容进行数据访问。为了在数据访问过程对访问位置加以区分,进而提高数据访问效率,在根据所述数据访问指令包含的待访问字段,确定待查询字典之前,还可以进行以下操作:加载索引字段配置文件;所述索引字段配置文件包括所述原始数据中各字段的字段属性;所述字段属性包括是否是独立存储字段。
那么相应的,在根据所述数据访问指令包含的待访问字段,确定待查询字典时,还可以获取数据访问指令中所包含的待访问字段,并基于所述待访问字段查询索引字段配置文件,以确定所述待访问字段对应的字段属性;根据所述字段属性,确定所述待访问字段对应的字典。
需要说明的是,本发明实施例对S350和S360的先后顺序不做任何限定,两者可以先后执行,还可以同时执行。
参见图3B和图3C所示的数据访问方法的示意图,对现有技术和本发明实施例的一种实施方式对应的数据访问方法进行比较。其中,“load”表示将存储文件中的内容按照既定格式读入数据访问服务器,“dump”表示将存储文件中的呢日用按照特定格式写入数据访问服务器。
参见图3B,在现有技术的方案中,将数据存储服务器在数据存储阶段得到的集中存储文件,以整体拷贝的方式加载至内存中,并由数据管理模块统一调度;数据管理模块对集中存储文件对应的加载内容(全部字段集)不做任何处理,直接根据加载的起始地址,按照生成集中存储文件时对应的字段顺序和格式等,进行数据读写。
参见图3C,在本发明实施例中的一种可选实施方式中,对原始数据对应的不同存储文件采用不同的处理方式。具体的,对采用集中存储方式的第一字段集的数据部分,直接采用与现有技术也即图3B相一致的加载与读写方法。对采用独立存储方式的第二字段集的数据部分,先将独立存储文件中的内容读到内存中,然后依次遍历读取每条记录的<记录标识,字段值>,进行必要的数据处理(例如格式转换)后,将<记录标识,字段值>插入至与独立存储文件对应的字典中。在所有记录插入完毕后,原始数据全部加载完成,包括第一字段集和至少一个第二字段集,他们统一由数据管理模块进行管理,并提供统一的数据访问方式。在具体实现上,他们继承同一接口类,父接口类与现有方案类似的定义调用函数与参数形式:集中存储方式继承类采用与现有技术一致的方式,根据加载地址进行数据读写;独立存储方式继承类按照字典<key,value>方式进行数据读写。当进行数据访问时的请求字段存储于独立存储文件和集中存储文件时,先依次获取各存储文件中的数据内容,然后再将获取到的内容合并后返回。
在通过数据访问服务器对原始数据进行查询以及更新时,同样采用数据管理模块所提供的统一接口调用,实现对底层的原始数据进行访问,所以当原始数据中的部分数据的存储方式由集中存储修改为独立存储之后,对原有的数据访问方式(查询以及更新等)并无影响。
本发明实施例通过将独立存储文件中所包含的内容加载至内存的操作细化为将独立存储文件中的内容读入内存中,并将读入的内容的记录标识和各记录标识在独立存储字段中的有效字段值,写入与独立存储文件对应的字典,进而在对独立存储文件的加载内容进行访问时,根据数据访问指令对独立存储文件对应的字典执行数据访问操作,提高了对独立存储文件中的数据访问效率。
实施例四
图4是本发明实施例四中的一种数据存储装置的结构图,本发明实施例适用于对包含有大量默认值的数据记录进行数据存储的情况,该装置由软件和/或硬件实现,并具体配置于具备一定数据存储能力的服务器中。
如图4所示的一种数据存储装置,配置于数据存储服务器,包括:数据获取模块410,字段确定模块420以及存储模块430。
数据获取模块410,用于获取原始数据;其中,所述原始数据包括至少一条记录,各所述记录包括至少一个字段;
字段确定模块420,用于确定所述原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;
存储模块430,用于将各所述记录在所述独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各所述记录在除所述独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件。
本发明实施例通过数据获取模块获取原始数据;其中原始数据包括至少一条记录,各记录包括至少一个字段;通过字段确定模块确定原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;通过存储模块将各记录在独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各记录在除独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件。上述技术方案通过将有效字段值的覆盖比较小的字段作为独立存储字段进行存储得到独立存储文件,将除独立存储字段以外的其他字段对应的字段值进行存储得到集中存储文件,减少了集中存储文件中有效字段值以外的默认值的添加比例,并通过减少默认值的数量,减少了对原始数据存储时的存储空间的占用,同时避免了在原始数据传输过程中的网络带宽的浪费。
进一步地,该装置还包括,索引标识生成模块,用于:
在得到集中存储文件之后,根据所述原始数据的各记录在所述集中存储文件中的存储顺序,生成与各记录的记录标识相对应的索引标识,以用于在接收到数据访问指令时根据待访问记录的记录标识所对应的索引标识,在所述集中存储文件中查找待访问记录。
进一步地,该装置还包括,字段标记模块,用于:
在将至少一个字段确定为独立存储字段之后,在所述原始数据对应的索引字段配置文件中,对各所述独立存储字段进行标记,以用于在接收到数据访问指令时根据所述标记确定待访问字段是否存储于独立存储文件中。
进一步地,字段确定模块420,在执行确定所述原始数据的各字段的有效字段值的覆盖比时,具体用于:
确定各字段的有效字段值的数量;
根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比。
进一步地,字段确定模块420,在执行确定各字段的有效字段值的数量时,具体用于:
对所述原始数据进行排序,并根据排序结果确定各字段对应的有效字段值的数量。
上述数据存储装置可执行本发明任意实施例所提供的数据存储方法,具备执行数据存储方法相应的功能模块和有益效果。
实施例五
图5是本发明实施例五中的一种数据访问装置的结构图,本发明实施例适用于对数据存储服务器中存储的数据文件进行数据访问的情况,该装置由软件和/或硬件实现,并具体配置于具备一定数据处理能力的服务器中。
如图5所示的一种数据访问装置,配置于数据访问服务器,包括:文件获取模块510,文件加载模块520以及数据访问模块530。
文件获取模块510,用于获取原始数据对应的独立存储文件和集中存储文件;其中,所述独立存储文件存储有所述原始数据包含的至少一个记录在独立存储字段的有效字段值;所述集中存储文件存储有所述原始数据包含的至少一个记录在除所述独立存储字段以外的其他字段的字段值;所述独立存储字段中有效字段值的覆盖比小于设定阈值;
文件加载模块520,用于分别将所述集中存储文件和所述独立存储文件中所包含的内容加载至内存;
数据访问模块530,用于接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作。
本发明实施例通过文件获取模块获取存储有原始数据包含的至少一个记录在独立存储字段的有效字段值的独立存储文件,以及存储有原始数据包含的至少一个字段在除独立存储字段以外的其他字段的字段值;通过文件加载模块分别将集中存储文件和独立存储文件中所包含的内容加载至内存;通过数据访问模块接收数据访问指令,并根据数据访问指令对集中存储文件和/或独立存储文件的加载内容执行数据访问操作;其中独立存储字段中有效字段值的覆盖比小于设定阈值。上述技术方案通过对有效字段值的覆盖比较小的字段作为独立存储字段进行存储所得到的独立存储文件的获取和加载,以及将除独立存储字段以外的其他字段对应的字段值进行存储所得到的集中存储文件的获取和加载,由于集中存储文件中减少了有效字段值以外的默认值的数量,减少了原始数据存储时的存储空间的占用,那么在进行数据加载以进行访问时,加载至数据访问服务器的内存中的空间占用量也相应减少,同时还减少了数据加载过程的数据加载量,节约了数据加载时间,避免了数据传输过程中网络带宽的浪费。
进一步地,文件加载模块520,在执行将所述独立存储文件中所包含的内容加载至内存中时,具体用于:
将所述独立存储文件中的内容读入内存中,并将所读入的内容的记录标识和各记录标识在所述独立存储字段中的有效字段值,写入与所述独立存储文件对应的字典;
相应的,数据访问模块530,在执行根据所述数据访问指令对所述独立存储文件的加载内容执行数据访问操作时,具体用于:
根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作。
进一步地,数据访问模块530,在执行根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作时,具体用于:
根据所述数据访问指令包含的待访问字段,确定待查询字典;
根据所述数据访问指令确定待访问记录的记录标识,并根据所述待访问记录的记录标识,在所述待查询字典中查找与所述待访问字段对应的有效字段值;
对所述待访问字段对应的有效字段值执行相应的数据访问操作。
进一步地,数据访问模块530,在执行根据所述数据访问指令对集中存储文件的加载内容执行数据访问操作时,具体用于:
根据所述数据访问指令确定所述记录标识对应的索引标识;其中,所述索引标识根据所述原始数据中对应记录在所述集中存储文件中的存储顺序生成;
根据所述索引标识和所述数据访问指令包含的待访问字段,查找所述集中存储文件的加载内容中的字段值,并对查找到的字段值执行相应的数据访问操作。
进一步地,该装置还包括,字段配置文件加载模块,用于:
在根据所述数据访问指令包含的待访问字段,确定待查询字典之前,加载索引字段配置文件;所述索引字段配置文件包括所述原始数据中各字段的字段属性;所述字段属性包括是否是独立存储字段;
相应的,数据访问模块530,在执行根据所述数据访问指令包含的待访问字段,确定待查询字典时,具体用于:
获取数据访问指令中所包含的待访问字段,并基于所述待访问字段查询索引字段配置文件,以确定所述待访问字段对应的字段属性;
根据所述字段属性,确定所述待访问字段对应的字典。
进一步地,该装置还包括,访问结果合并模块,用于:
在接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和所述独立存储文件的加载内容执行数据访问操作之后,将对所述集中存储文件的加载内容的访问结果以及对所述独立存储文件的加载内容的访问结果合并,并展示合并后的访问结果。
上述数据访问装置可执行本发明任意实施例所提供的数据访问方法,具备执行数据访问方法相应的功能模块和有益效果。
实施例六
图6是本发明实施例六中的一种服务器的结构图。如图6所示的服务器,包括:输入装置610、输出装置620、处理器630以及存储装置640。
其中,输入装置610,用于获取原始数据;
输出装置620,用于输出独立存储文件和/或集中存储文件;
一个或多个处理器630;
存储装置640,用于存储一个或多个程序。
图6中以一个处理器630为例,该服务器中的输入装置610可以通过总线或其他方式与输出装置620、处理器630以及存储装置640相连,且处理器630和存储装置640也通过总线或其他方式连接,图6中以通过总线连接为例。
在本实施例中,服务器中的处理器630可以控制输入装置610获取原始数据;其中,所述原始数据包括至少一条记录,各所述记录包括至少一个字段;还可以确定所述原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;还可以将各所述记录在所述独立存储字段中的有效字段值独立存储至存储装置640中,得到独立存储文件,并将各所述记录在除所述独立存储字段以外的各其他字段对应的字段值存储至存储装置640中,得到集中存储文件;还可以控制输出装置620将独立存储文件和/或集中存储文件输出至其他电子设备。
该服务器中的存储装置640作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中数据存储方法对应的程序指令/模块(例如,附图4所示的数据获取模块410,字段确定模块420以及存储模块430)。处理器630通过运行存储在存储装置640中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的数据存储方法。
存储装置640可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储数据等(如上述实施例中的原始数据、独立存储文件以及集中存储文件等)。此外,存储装置640可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置640可进一步包括相对于处理器630远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例七
图7是本发明实施例七中的一种服务器的结构图。如图7所示的服务器,包括:输入装置710、输出装置720、处理器730以及存储装置740。
其中,输入装置710,用于获取原始数据对应的独立存储文件和集中存储文件;还用于接收数据访问指令;
输出装置720,用于展示独立存储文件和/或集中存储文件;还用于展示根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作;
一个或多个处理器730;
存储装置740,用于存储一个或多个程序。
图7中以一个处理器730为例,该服务器中的输入装置710可以通过总线或其他方式与输出装置720、处理器730以及存储装置740相连,且处理器730和存储装置740也通过总线或其他方式连接,图7中以通过总线连接为例。
在本实施例中,服务器中的处理器730可以控制输入装置710获取原始数据对应的独立存储文件和集中存储文件;还用于分别将所述集中存储文件和所述独立存储文件中所包含的内容加载至内存;还用于控制输入装置710接收数据访问指令;还用于根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作;还用于控制输出装置720对数据访问结果加以展示。
该服务器中的存储装置740作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中数据访问方法对应的程序指令/模块(例如,附图5所示的文件获取模块510,文件加载模块520以及数据访问模块530。)。处理器730通过运行存储在存储装置740中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的数据访问方法。
存储装置740可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储数据等(如上述实施例中的独立存储文件、集中存储文件以及数据访问指令等)。此外,存储装置740可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置740可进一步包括相对于处理器730远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例八
本发明实施例八还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被数据存储装置执行时实现本发明实施提供的数据存储方法,该方法包括:获取原始数据;其中,所述原始数据包括至少一条记录,各所述记录包括至少一个字段;确定所述原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;将各所述记录在所述独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各所述记录在除所述独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件。
实施例九
本发明实施例九还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被数据访问装置执行时实现本发明实施提供的数据访问方法,该方法包括:获取原始数据对应的独立存储文件和集中存储文件;其中,所述独立存储文件存储有所述原始数据包含的至少一个记录在独立存储字段的有效字段值;所述集中存储文件存储有所述原始数据包含的至少一个记录在除所述独立存储字段以外的其他字段的字段值;所述独立存储字段中有效字段值的覆盖比小于设定阈值;分别将所述集中存储文件和所述独立存储文件中所包含的内容加载至内存;接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (16)

1.一种数据存储方法,其特征在于,包括:
获取原始数据;其中,所述原始数据包括至少一条记录,各所述记录包括至少一个字段;
确定所述原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;
将各所述记录在所述独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各所述记录在除所述独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件;其中,独立存储方式为将所述独立存储字段以及记录标识单独存储的存储方式;
其中,所述确定所述原始数据的各字段的有效字段值的覆盖比,包括:
确定各字段的有效字段值的数量;所述有效字段值为非默认字段值;
根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比。
2.根据权利要求1所述的方法,其特征在于,在得到集中存储文件之后,还包括:
根据所述原始数据的各记录在所述集中存储文件中的存储顺序,生成与各记录的记录标识相对应的索引标识,以用于在接收到数据访问指令时根据待访问记录的记录标识所对应的索引标识,在所述集中存储文件中查找待访问记录。
3.根据权利要求1所述的方法,其特征在于,在将至少一个字段确定为独立存储字段之后,还包括:
在所述原始数据对应的索引字段配置文件中,对各所述独立存储字段进行标记,以用于在接收到数据访问指令时根据所述标记确定待访问字段是否存储于独立存储文件中。
4.根据权利要求1所述的方法,其特征在于,确定各字段的有效字段值的数量,包括:
对所述原始数据进行排序,并根据排序结果确定各字段对应的有效字段值的数量。
5.一种数据访问方法,其特征在于,包括:
获取原始数据对应的独立存储文件和集中存储文件;其中,所述独立存储文件存储有所述原始数据包含的至少一个记录在独立存储字段的有效字段值;所述集中存储文件存储有所述原始数据包含的至少一个记录在除所述独立存储字段以外的其他字段的字段值;所述独立存储字段中有效字段值的覆盖比小于设定阈值;其中,所述独立存储文件为通过独立存储方式将所述独立存储字段以及记录标识单独存储得到的文件;
分别将所述集中存储文件和所述独立存储文件中所包含的内容加载至内存;
接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作;
其中,各字段的有效字段值的覆盖比根据以下方式确定:确定各字段的有效字段值的数量;根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比;所述有效字段值为非默认字段值。
6.根据权利要求5所述的方法,其特征在于,在将所述独立存储文件中所包含的内容加载至内存中,包括:
将所述独立存储文件中的内容读入内存中,并将所读入的内容的记录标识和各记录标识在所述独立存储字段中的有效字段值,写入与所述独立存储文件对应的字典;
相应的,根据所述数据访问指令对所述独立存储文件的加载内容执行数据访问操作,包括:
根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作。
7.根据权利要求6所述的方法,其特征在于,根据所述数据访问指令对所述独立存储文件对应的所述字典执行数据访问操作,包括:
根据所述数据访问指令包含的待访问字段,确定待查询字典;
根据所述数据访问指令确定待访问记录的记录标识,并根据所述待访问记录的记录标识,在所述待查询字典中查找与所述待访问字段对应的有效字段值;
对所述待访问字段对应的有效字段值执行相应的数据访问操作。
8.根据权利要求5所述的方法,其特征在于,根据所述数据访问指令对集中存储文件的加载内容执行数据访问操作,包括:
根据所述数据访问指令确定待查询记录标识对应的索引标识;其中,所述索引标识根据所述原始数据中对应记录在所述集中存储文件中的存储顺序生成;
根据所述索引标识和所述数据访问指令包含的待访问字段,查找所述集中存储文件的加载内容中的字段值,并对查找到的字段值执行相应的数据访问操作。
9.根据权利要求7所述的方法,其特征在于,在根据所述数据访问指令包含的待访问字段,确定待查询字典之前,还包括:
加载索引字段配置文件;所述索引字段配置文件包括所述原始数据中各字段的字段属性;所述字段属性包括是否是独立存储字段;
相应的,根据所述数据访问指令包含的待访问字段,确定待查询字典,包括:
获取数据访问指令中所包含的待访问字段,并基于所述待访问字段查询索引字段配置文件,以确定所述待访问字段对应的字段属性;
根据所述字段属性,确定所述待访问字段对应的字典。
10.根据权利要求5-9任一项所述的方法,其特征在于,在接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和所述独立存储文件的加载内容执行数据访问操作之后,还包括:
将对所述集中存储文件的加载内容的访问结果以及对所述独立存储文件的加载内容的访问结果合并,并展示合并后的访问结果。
11.一种数据存储装置,其特征在于,包括:
数据获取模块,用于获取原始数据;其中,所述原始数据包括至少一条记录,各所述记录包括至少一个字段;
字段确定模块,用于确定所述原始数据的各字段的有效字段值的覆盖比,并将覆盖比小于设定阈值的字段确定为独立存储字段;
存储模块,用于将各所述记录在所述独立存储字段中的有效字段值独立存储,得到独立存储文件,并将各所述记录在除所述独立存储字段以外的各其他字段对应的字段值进行存储,得到集中存储文件;其中,独立存储方式为将所述独立存储字段以及记录标识单独存储的存储方式;
其中,所述字段确定模块,在执行确定所述原始数据的各字段的有效字段值的覆盖比时,具体用于:确定各字段的有效字段值的数量;根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比;所述有效字段值为非默认字段值。
12.一种数据访问装置,其特征在于,包括:
文件获取模块,用于获取原始数据对应的独立存储文件和集中存储文件;其中,所述独立存储文件存储有所述原始数据包含的至少一个记录在独立存储字段的有效字段值;所述集中存储文件存储有所述原始数据包含的至少一个记录在除所述独立存储字段以外的其他字段的字段值;所述独立存储字段中有效字段值的覆盖比小于设定阈值;其中,所述独立存储文件为通过独立存储方式将所述独立存储字段以及记录标识单独存储得到的文件;
文件加载模块,用于分别将所述集中存储文件和所述独立存储文件中所包含的内容加载至内存;
数据访问模块,用于接收数据访问指令,并根据所述数据访问指令对所述集中存储文件和/或所述独立存储文件的加载内容执行数据访问操作;
其中,各字段的有效字段值的覆盖比根据以下方式确定:确定各字段的有效字段值的数量;根据所述有效字段值的数量和所述原始数据包含的各记录的数量的比值,分别确定各字段的覆盖比;所述有效字段值为非默认字段值。
13.一种服务器,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一项所述的一种数据存储方法。
14.一种服务器,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求5-10中任一项所述的数据访问方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一项所述的一种数据存储方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求5-10中任一项所述的数据访问方法。
CN201910701341.4A 2019-07-31 2019-07-31 一种数据存储、访问方法、装置、服务器及存储介质 Active CN111752941B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910701341.4A CN111752941B (zh) 2019-07-31 2019-07-31 一种数据存储、访问方法、装置、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910701341.4A CN111752941B (zh) 2019-07-31 2019-07-31 一种数据存储、访问方法、装置、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN111752941A CN111752941A (zh) 2020-10-09
CN111752941B true CN111752941B (zh) 2024-05-17

Family

ID=72672683

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910701341.4A Active CN111752941B (zh) 2019-07-31 2019-07-31 一种数据存储、访问方法、装置、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN111752941B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112307064A (zh) * 2020-10-29 2021-02-02 上海达梦数据库有限公司 一种数据管理系统、方法及存储介质
CN117527833B (zh) * 2024-01-04 2024-03-29 深圳市度申科技有限公司 一种数据同步方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101826097A (zh) * 2010-01-22 2010-09-08 宇龙计算机通信科技(深圳)有限公司 一种节省通信录数据库存储空间的方法、系统及移动终端
CN104794177A (zh) * 2015-04-02 2015-07-22 广州神马移动信息科技有限公司 一种数据存储方法及装置
CN109710611A (zh) * 2018-12-25 2019-05-03 北京三快在线科技有限公司 存储表数据的方法、查询表数据的方法、装置及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101826097A (zh) * 2010-01-22 2010-09-08 宇龙计算机通信科技(深圳)有限公司 一种节省通信录数据库存储空间的方法、系统及移动终端
CN104794177A (zh) * 2015-04-02 2015-07-22 广州神马移动信息科技有限公司 一种数据存储方法及装置
CN109710611A (zh) * 2018-12-25 2019-05-03 北京三快在线科技有限公司 存储表数据的方法、查询表数据的方法、装置及存储介质

Also Published As

Publication number Publication date
CN111752941A (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
CN107391653B (zh) 一种分布式NewSQL数据库系统及图片数据储存方法
CN109254733B (zh) 用于存储数据的方法、装置和系统
JP7018516B2 (ja) データクエリ
US8924373B2 (en) Query plans with parameter markers in place of object identifiers
US11314689B2 (en) Method, apparatus, and computer program product for indexing a file
CN108614837B (zh) 文件存储和检索的方法及装置
CN109240607B (zh) 一种文件读取方法和装置
CN109766318B (zh) 文件读取方法及装置
CN113721862B (zh) 数据处理方法及装置
CN104423982A (zh) 请求的处理方法和处理设备
CN111752941B (zh) 一种数据存储、访问方法、装置、服务器及存储介质
CN114138776A (zh) 图结构和图属性分离设计的方法、系统、装置和介质
CN110222046B (zh) 列表数据的处理方法、装置、服务器和存储介质
CN116756253B (zh) 关系型数据库的数据存储、查询方法、装置、设备和介质
CN113779286B (zh) 管理图数据的方法及装置
CN115495462A (zh) 批量数据更新方法、装置、电子设备和可读存储介质
CN112632266B (zh) 数据写入方法、装置、计算机设备及可读存储介质
CN114428776A (zh) 一种面向时序数据的索引分区管理方法和系统
CN112527900A (zh) 一种数据库读多副本一致性的方法、装置、设备及介质
WO2024016789A1 (zh) 日志数据查询方法、装置、设备和介质
US20240095246A1 (en) Data query method and apparatus based on doris, storage medium and device
CN112182028A (zh) 基于分布式数据库的表的数据行数查询方法和装置
CN115994148A (zh) 多表数据的更新方法、装置、电子设备及可读存储介质
CN115576947A (zh) 一种数据管理方法、装置、组合库、电子设备及存储介质
CN115510000A (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
GR01 Patent grant
GR01 Patent grant