数据的存储方法及装置制造方法及图纸

技术编号:24090921 阅读:34 留言:0更新日期:2020-05-09 08:02
本发明专利技术公开了一种数据的存储方法及装置,涉及数据处理技术领域,将不同实体类型的实体对象对应的数据内容存储至同一数据表中。本发明专利技术的方法包括:对待存储实体对象进行序列化处理,以生成待存储实体对象对应的待存储JSON数据;获取待存储实体对象对应的唯一标识,以及获取待存储实体对象对应的实体类型;判断第一数据表中是否存储有唯一标识和实体类型与待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,其中,第一数据表中存储有不同实体类型的实体对象对应的JSON数据;若否,则将待存储JSON数据存储至第一数据表中。本发明专利技术适用于MS SQL数据库将不同实体类型的实体对象对应的数据内容存储至同一数据表中的过程中。

Data storage method and device

【技术实现步骤摘要】
数据的存储方法及装置
本专利技术涉及数据处理
,特别是涉及一种数据的存储方法及装置。
技术介绍
随着互联网技术的日益发展,海量数据时代已经来临。在海量数据时代下,如何存储和快速查询海量数据成为了大型互联网企业新的关注点。MSSQL数据库作为一款分布式数据库,由于其具有成本低、使用方便、相关软件集成程度高等优点,而受到广大互联网企业的欢迎。专利技术人在实现本专利技术的过程中,发现现有技术中存在以下技术问题,在MSSQL数据库中,数据均是以数据表形式存储的,由于,不同实体类型的实体对象包含的关键字段不同,因此,MSSQL数据库需要将不同实体类型的实体对象对应的数据内容存储至不同类型的数据表中,从而当MSSQL数据库需要对新爬取到的实体对象进行存储操作时,首先,需要在该实体对象中提取该实体对象对应的数据内容;然后,根据该实体对象对应的实体类型获取该实体对象对应的数据表;最后,将该实体对象对应的数据内容存储至该数据表中。由于,MSSQL数据库需要为不同实体类型的实体对象创建对应的数据表,因此,当MSSQL数据库涉及越来越多实体类型的实体对象时,其需要创建和保存的数据表的数量也会随之增多,从而会给MSSQL数据库的日常运维管理带来极大的负担。
技术实现思路
有鉴于此,本专利技术提供的数据的存储方法及装置,主要目的在于将不同实体类型的实体对象对应的数据内容存储至同一数据表中。为了达到上述目的,本专利技术主要提供如下技术方案:第一方面,本专利技术提供了一种数据的存储方法,该方法包括:对待存储实体对象进行序列化处理,以生成所述待存储实体对象对应的待存储JSON数据;获取所述待存储实体对象对应的唯一标识,以及获取所述待存储实体对象对应的实体类型;判断第一数据表中是否存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,其中,所述第一数据表中存储有不同实体类型的实体对象对应的JSON数据;若否,则将所述待存储JSON数据存储至所述第一数据表中。可选的,所述获取所述待存储实体对象对应的唯一标识,包括:判断是否存在所述待存储实体对象对应的唯一标识;若是,则获取所述待存储实体对象对应的唯一标识;若否,则获取所述待存储实体对象对应的实体名称;对所述实体名称进行哈希计算,以生成所述实体名称对应的哈希值;将所述哈希值确定为所述待存储实体对象对应的唯一标识。可选的,所述方法还包括:若所述第一数据表中存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,则使用所述待存储JSON数据替换所述已存储JSON数据。可选的,所述第一数据表中还存储有所述已存储JSON数据对应的爬取时间;所述使用所述待存储JSON数据替换所述已存储JSON数据,包括:获取所述待存储实体对象对应的爬取时间;在所述第一数据表中使用所述待存储JSON数据替换所述已存储JSON数据,以及使用所述待存储实体对象对应的爬取时间替换所述已存储JSON数据对应的爬取时间。可选的,所述将所述待存储JSON数据存储至所述第一数据表中,包括:获取所述待存储实体对象对应的爬取时间;将所述待存储实体对象对应的唯一标识、实体类型、爬取时间以及所述待存储JSON数据存储至所述第一数据表中。可选的,所述方法还包括:在第二数据表中获取已存储实体对象对应的数据内容、唯一标识、实体类型以及爬取时间,其中,所述第二数据表中存储有同一实体类型的实体对象对应的数据内容、唯一标识、实体类型以及爬取时间;根据所述已存储实体对象对应的数据内容生成所述已存储实体对象对应的JSON数据;将所述已存储实体对象对应的唯一标识、实体类型、爬取时间以及JSON数据存储至所述第一数据表中。可选的,所述待存储实体对象为文章实体对象或用户实体对象。第二方面,本专利技术还提供一种数据的存储装置,该装置包括:序列化单元,用于对待存储实体对象进行序列化处理,以生成所述待存储实体对象对应的待存储JSON数据;第一获取单元,用于获取所述待存储实体对象对应的唯一标识;第二获取单元,用于获取所述待存储实体对象对应的实体类型;判断单元,用于判断第一数据表中是否存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,其中,所述第一数据表中存储有不同实体类型的实体对象对应的JSON数据;第一存储单元,用于当所述判断单元判断所述第一数据表中未存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据时,将所述待存储JSON数据存储至所述第一数据表中。可选的,所述第一获取单元包括:判断模块,用于判断是否存在所述待存储实体对象对应的唯一标识;第一获取模块,用于当所述判断模块判断存在所述待存储实体对象对应的唯一标识时,存在所述待存储实体对象对应的唯一标识第二获取模块,用于当所述判断模块判断不存在所述待存储实体对象对应的唯一标识时,获取所述待存储实体对象对应的实体名称;计算模块,用于对所述第二获取模块获取的所述实体名称进行哈希计算,以生成所述实体名称对应的哈希值;确定模块,用于将所述计算模块计算的所述哈希值确定为所述待存储实体对象对应的唯一标识。可选的,所述装置还包括:替换单元,用于当所述判断单元判断所述第一数据表中存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据时,使用所述待存储JSON数据替换所述已存储JSON数据。可选的,所述第一数据表中还存储有所述已存储JSON数据对应的爬取时间;所述替换单元包括:第三获取模块,用于获取所述待存储实体对象对应的爬取时间;替换模块,用于在所述第一数据表中使用所述待存储JSON数据替换所述已存储JSON数据,以及使用所述第三获取模块获取的所述待存储实体对象对应的爬取时间替换所述已存储JSON数据对应的爬取时间。可选的,所述第一存储单元包括:第四获取模块,用于获取所述待存储实体对象对应的爬取时间;存储模块,用于将所述待存储实体对象对应的唯一标识、实体类型、爬取时间以及所述待存储JSON数据存储至所述第一数据表中。可选的,所述装置还包括:第三获取单元,用于在第二数据表中获取已存储实体对象对应的数据内容、唯一标识、实体类型以及爬取时间,其中,所述第二数据表中存储有同一实体类型的实体对象对应的数据内容、唯一标识、实体类型以及爬取时间;生成单元,用于根据所述第三获取单元获取的所述已存储实体对象对应的数据内容生成所述已存储实体对象对应的JSON数据;第二存储单元,用于将所述已存储实体对象对应的唯一标识、实体类型、爬取时间以及JSON数据存储至所述第一数据表中。可选的,所述待存储实体本文档来自技高网...

【技术保护点】
1.一种数据的存储方法,其特征在于,包括:/n对待存储实体对象进行序列化处理,以生成所述待存储实体对象对应的待存储JSON数据;/n获取所述待存储实体对象对应的唯一标识,以及获取所述待存储实体对象对应的实体类型;/n判断第一数据表中是否存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,其中,所述第一数据表中存储有不同实体类型的实体对象对应的JSON数据;/n若否,则将所述待存储JSON数据存储至所述第一数据表中。/n

【技术特征摘要】
1.一种数据的存储方法,其特征在于,包括:
对待存储实体对象进行序列化处理,以生成所述待存储实体对象对应的待存储JSON数据;
获取所述待存储实体对象对应的唯一标识,以及获取所述待存储实体对象对应的实体类型;
判断第一数据表中是否存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,其中,所述第一数据表中存储有不同实体类型的实体对象对应的JSON数据;
若否,则将所述待存储JSON数据存储至所述第一数据表中。


2.根据权利要求1所述的方法,其特征在于,所述获取所述待存储实体对象对应的唯一标识,包括:
判断是否存在所述待存储实体对象对应的唯一标识;
若是,则获取所述待存储实体对象对应的唯一标识;
若否,则获取所述待存储实体对象对应的实体名称;
对所述实体名称进行哈希计算,以生成所述实体名称对应的哈希值;
将所述哈希值确定为所述待存储实体对象对应的唯一标识。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一数据表中存储有唯一标识和实体类型与所述待存储实体对象对应的唯一标识和实体类型相匹配的已存储JSON数据,则使用所述待存储JSON数据替换所述已存储JSON数据。


4.根据权利要求3所述的方法,其特征在于,所述第一数据表中还存储有所述已存储JSON数据对应的爬取时间;所述使用所述待存储JSON数据替换所述已存储JSON数据,包括:
获取所述待存储实体对象对应的爬取时间;
在所述第一数据表中使用所述待存储JSON数据替换所述已存储JSON数据,以及使用所述待存储实体对象对应的爬取时间替换所述已存储JSON数据对应的爬取时间。


5.根据权利要求1所述的方法,其特征在于,所述将所述待存储JSON数据存储至所述第一数据表中,包括:
获取所述待存储实体对象对应的爬取时间;
将所述待存...

【专利技术属性】
技术研发人员:李强
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1