CN110766501A - 数据嵌套存储方法、装置、电子设备及计算机可读介质 - Google Patents
数据嵌套存储方法、装置、电子设备及计算机可读介质 Download PDFInfo
- Publication number
- CN110766501A CN110766501A CN201810847055.4A CN201810847055A CN110766501A CN 110766501 A CN110766501 A CN 110766501A CN 201810847055 A CN201810847055 A CN 201810847055A CN 110766501 A CN110766501 A CN 110766501A
- Authority
- CN
- China
- Prior art keywords
- data
- granularity
- processed
- filling
- nesting
- 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
- 238000013500 data storage Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 abstract description 13
- 235000019580 granularity Nutrition 0.000 description 134
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000013499 data model Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000000945 filler Substances 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供一种数据嵌套存储方法、装置、电子设备及计算机可读介质,属于互联网技术领域。该方法包括:对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;根据所述数据主键对所述待处理数据进行填充,得到填充数据,其中所述数据主键用级别最高的粒度级别进行标记;将所述填充数据按照所述数据主键存储存到数据库中。本公开针对不同粒度级别的数据分别构建嵌套数据结构,使得在数据入库时无需缓存等待,不论获取到哪种粒度的数据都可以实时入库,提升数据查询性能,简化多数据入库流程。
Description
技术领域
本公开总体涉及互联网技术领域,具体而言,涉及一种数据嵌套存储方法、装置、电子设备及计算机可读介质。
背景技术
目前电商平台售卖给平台用户(即买家)的商品除了其自营的商品之外,还有一种是基于该电商平台来向用户售卖第三方商家的商品。电商平台需要对第三方商家的订单数据进行实施抓取,订单数据在订单结算模型中按照数据的粒度不同分为三种不同粒度的数据,即粗粒度数据、中粒度数据和细粒度数据。粗粒度数据是指订单数据,记录订单的基本信息;中粒度数据是指订单和结算主体数据,描述每一个订单对应每个商家结算的情况,比如结算进度,商家的结算账户信息等;细粒度数据是指订单结算明细数据,记录每个订单对每个商家的结算费用明细信息。
现有技术中分布式实时计算平台需要将这三种不同粒度的数据进行合并,然后按照最细粒度(即订单结算明细数据)存储到分布式数据库中。由于数据存储是按最细粒度(订单结算明细数据),所以细粒度的数据必须和粗粒度数据同时或提前入库,但是同一个订单对应的三种数据源实时获取时间先后顺序无法保证,所以在入库前,需要缓存等待逻辑(同一个粗粒度数据对应的所有细粒度数据都已获取)才能入库。在此过程中,既要维护缓存,也要维护数据库存储的数据,当频繁更新时,就会难于维护。当无法判断同一类细粒度数据是否都已获取时,则数据无法实时入库。
因此,现有技术中的技术方案还存在有待改进之处。
在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种数据嵌套存储方法、装置、电子设备及计算机可读介质,解决上述技术问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一方面,提供一种数据嵌套存储方法,包括:
对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;
根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;
根据所述数据主键对所述待处理数据进行填充,得到填充数据;
将所述填充数据按照所述数据主键存储存到数据库中。
在本公开的一个实施例中,对接收的待处理数据的粒度进行判断之前,还包括:
将不同粒度级别的待处理数据按照路由策略进行分发。
在本公开的一个实施例中,所述待处理数据包括粗粒度、中粒度和细粒度三个粒度级别,所述数据主键用粗粒度识别号进行标记。
在本公开的一个实施例中,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
当所述待处理数据的粒度级别为粗粒度时,按照所述数据主键对所述待处理数据的粗粒度字段的字段进行填充。
在本公开的一个实施例中,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
当所述待处理数据的粒度级别为中粒度时,按照所述数据主键对所述待处理数据的粗粒度字段和中粒度字段的数据进行填充。
在本公开的一个实施例中,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
当所述待处理数据的粒度级别为细粒度时,按照所述数据主键对所述待处理数据的粗粒度字段、中粒度字段和细粒度字段的数据进行填充。
在本公开的一个实施例中,将所述填充数据按照所述数据主键存储到数据库中包括:
按照所述数据主键将所述填充数据插入或更新到数据存储模型中,其中所述数据存储模型为Elasticsearch存储模型。
根据本公开的再一方面,提供一种数据嵌套存储装置,包括:
粒度判断模块,被配置为对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;
嵌套模块,被配置为根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;
填充模块,被配置为根据所述数据主键对所述待处理数据进行填充,得到填充数据;
存储模块,被配置为将所述填充数据按照所述数据主键存储存到数据库中。
根据本公开的又一方面,提供一种电子设备,包括处理器;存储器,存储用于所述处理器控制如上所述的方法步骤的指令。
根据本公开的另一方面,提供一种计算机可读介质,其上存储有计算机可执行指令,所述可执行指令被处理器执行时实现如上所述的方法步骤。
根据本公开实施例提供的数据嵌套存储方法、装置、电子设备及计算机可读介质,一方面,针对不同粒度级别的数据分别构建嵌套数据结构,使得在数据入库时无需缓存等待,不论获取到哪种粒度的数据都可以实时入库,提升数据查询性能,简化多数据入库流程。另一方面,由于是以粒度级别最高的粗粒度为指标进行统计的,因此无需去重,而且按粗粒度统计数值合计的指标,可直接求和,求和结果中不存在重复合计的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。
图1示出本公开一实施例中提供的一种数据嵌套存储方法的流程图。
图2示出本公开一实施例中嵌套数据结构的模型示意图。
图3示出本公开一实施例中提供的数据处理方法的流程图。
图4示出本公开另一实施例中提供的一种数据嵌套存储装置的示意图。
图5示出本公开另一实施例中数据处理系统的整体架构图。
图6示出本公开一实施例提供的适于用来实现本申请实施例的电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现、材料或者操作以避免喧宾夺主而使得本公开的各方面变得模糊。
附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
在本公开的相关实施例中,面向第三方商家的订单结算模型中,按照数据的粒度会生成三种不同粒度的数据,电商平台为了对订单结算的全流程进行实时监控分析,需基于这三类数据做一些实时统计分析。
通过分布式实时计算平台,电商平台将这三种数据进行合并,而且按照最细粒度(订单的结算明细粒度)存储到分布式数据库Elasticsearch中,但会存在如下问题:
首先,如果按粗粒度统计量的指标(如订单量),就必须去重,而去重的操作非常耗费数据库的性能;其次,按粗粒度统计数值合计的指标(如订单金额合计),直接求和存在重复合计的问题,导致数据统计出错;最后,由于数据存储是按最细粒度(如订单结算明细),所以细粒度的数据必须和粗粒度数据同时或提前入库,但是由于同一个订单对应的三种数据源实时获取,时间的先后顺序无法保证,所以在入库前,需要缓存等待逻辑(同一个粗粒度数据对应的所有细粒度数据都已获取)才能入库。在此过程中,既要维护缓存,也要维护数据库存储的数据,当频繁更新时,很难于维护。当无法判断同一类细粒度数据是否都已获取时,该方案就有缺陷,导致无法实时入库。
基于上述问题,本公开提供以下一种新的数据嵌套存储方法、装置、电子设备及计算机可读介质。
图1示出本公开一实施例中提供的一种数据嵌套存储方法的流程图,包括以下步骤:
如图1所示,在步骤S110中,对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别。
如图1所示,在步骤S120中,根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键。
如图1所示,在步骤S130中,根据所述数据主键对所述待处理数据进行填充,得到填充数据。
如图1所示,在步骤S140中,将所述填充数据按照所述数据主键存储存到数据库中。
本公开实施例提供的数据嵌套存储方法,一方面,针对不同粒度级别的数据分别构建嵌套数据结构,使得在数据入库时无需缓存等待,不论获取到哪种粒度的数据都可以实时入库,提升数据查询性能,简化多数据入库流程。另一方面,由于是以粒度级别最高的粗粒度为指标进行统计的,因此无需去重,而且按粗粒度统计数值合计的指标,可直接求和,求和结果中不存在重复合计的问题。
以下结合图1所示的流程图对本公开提供的数据嵌套存储方法进行详细介绍,具体如下:
在步骤S110中,对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别。
在本公开的一个实施例中,数据粒度是指数据仓库中数据的细化和综合程度,根据数据粒度细化标准:细化程度越高,粒度越小;细化程度越低,粒度越大。本实施例中以待处理数据包括三个粒度级别为例进行介绍,即所述待处理数据包括粗粒度、中粒度和细粒度三个粒度级别。
其中数据主键用粗粒度识别号(即粗粒度ID)进行标记,数据主键是数据库主键的简称,是能确定数据库中一条记录的唯一标识。例如,学生表(学号,姓名,性别,班级),其中每个学生的学号是唯一的,学号就是一个主键。在本实施例中,对于订单结算数据模型而言,数据主键可以是订单号,订单号是一条记录的唯一标记。
在本公开的一个实施例中,对接收的待处理数据的粒度进行判断之前,还包括:
将不同粒度级别的待处理数据按照路由策略进行分发。
其中路由策略是为了改变网络流量所经过的途径而修改路由信息的技术,主要通过改变路由属性(包括可达性)来实现。路由策略是一种比基于目标网络进行路由更加灵活的数据包路由转发机制。应用了路由策略,路由器将通过路由图决定如何对需要路由的数据包进行处理,路由图决定了一个数据包的下一跳转发路由器。
仍以三个粒度级别为例,将相同粗粒度ID(也就是主键ID)下的三种粒度数据(即粗粒度数据、中粒度数据、细粒度数据)通过路由策略分发到同一个下游节点进行入库操作。
需要说明的是,在包括不同粒度级别的数据模型中,通常选用粗粒度(或最高级别粒度)的ID作为数据主键ID。
在步骤S120中,根据所述粒度级别对所述待处理数据构建嵌套数据结构。
在本公开的一个实施例中,仍以三个粒度级别为例,图2是示出嵌套数据结构的模型示意图,如图2所示,该嵌套数据结构根据三个粒度级别包括三个层级,第一层级为粗粒度数据,每一条粗粒度数据,除了粗粒度的基本信息(即订单基本信息)外,可以包含多个中粒度数据,如中粒度数据1、中粒度数据2……中粒度数据N;第二个层级为中粒度数据,每个中粒度数据除了包含中粒度基本信息(即订单-结算主题信息)外,可以包含多个细粒度数据,如中粒度数据1下包括细粒度数据1、细粒度数据2……细粒度数据m,其他中粒度数据的情况类似,且每一细粒度数据包括订单结算明细数据。
基于上述按照粗粒度、中粒度和细粒度逐级嵌套的模式形成图2所示的嵌套数据结构,相应的,在本公开其他实施例中的数据模型如果包括更多粒度级别,则形成的嵌套数据结构也是多个层级关系,而且是从粗粒度向细粒度逐级嵌套。
在步骤S130中,根据所述数据主键对所述待处理数据进行填充,得到填充数据。
在本公开的一个实施例中,仍以三个粒度级别为例,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
(1)当所述待处理数据的粒度级别为粗粒度时,按照所述数据主键对所述待处理数据的粗粒度字段的字段进行填充;
(2)当所述待处理数据的粒度级别为中粒度时,按照所述数据主键对所述待处理数据的粗粒度字段和中粒度字段的数据进行填充;
(3)当所述待处理数据的粒度级别为细粒度时,按照所述数据主键对所述待处理数据的粗粒度字段、中粒度字段和细粒度字段的数据进行填充。
基于上述步骤,在图2所示的嵌套数据结构的基础上,分别根据数据主键(即订单号)对粗粒度、中粒度和细粒度三个粒度级别的数据进行相应的填充。
在步骤S140中,将所述填充数据按照所述数据主键存储存到数据库中。
在本公开的一个实施例中,将所述填充数据按照所述数据主键存储到数据库中包括:
按照所述数据主键将所述填充数据插入或更新到数据存储模型中。
其中在本公开实施例中可以选用的数据存储模型为Elasticsearch存储模型,还可以选用MongoDB存储模型来设计数据嵌套结构,区别在于MongoDB是一个通用性数据库,Elasticsearch是一个Lucene支持的分布式、可扩展、实时搜索与数据分析引擎,可实现数据的存储、聚合、全文检索等,Elasticsearch的性能优于MongoDB。基于所述,通过对数据按照不同粒度级别进行嵌套存储,而且采用Elasticsearch存储模型进行存储,可以实时、灵活的做一些过滤、聚合等查询统计分析,达到实时监控的效果。
以下结合图3所示的数据处理方法具体处理步骤的流程图对本公开实施例中的数据嵌套存储的上游以及下游数据处理进行详细介绍:
如图3所示,在步骤S301中,数据抓取。
该步骤主要是基于Storm的分布式实时计算任务分别从各自消息队列Kafka中消费各种粒度的数据,例如包括Kafka消息队列1、Kafka消息队列2、Kafka消息队列3……,其中Storm是一个分布式实时流式计算系统,可以水平扩展,自动容错,延迟达到毫秒级。常用与实时分析,在线机器学习等。
如图3所示,在步骤S302中,数据前期处理。
该步骤主要是在Storm实时计算任务中,将相同粗粒度ID的三种粒度数据通过路由策略,分发到同一个下游节点进行入库操作。比如将相同订单号(即主键ID)的订单数据(属于粗粒度数据),相同订单号的订单和结算主体数据(属于中粒度数据),相同订单号的订单结算明细数据(属于细粒度数据)通过路由策略分发到同一个下游节点。
如图3所示,在步骤S303中,数据存储。
该步骤主要是接收前一步骤S302数据前端处理后的数据,并将该数据存储到Elasticsearch的嵌套数据模型中。以订单计算模型为例,在数据对Elasticsearch存储模型进行入库时,存储的主键ID为粗粒度ID(比如订单号);当接收的数据为粗粒度数据(即订单信息)时,构造嵌套数据结构,填充粗粒度字段数据,按主键ID(即粗粒度ID)插入或更新到Elasticsearch存储模型中;当接收的数据为中粒度数据(即订单-结算主体)时,构造嵌套数据结构,填充粗粒度ID字段和中粒度字段数据(中粒度数据以列表形式存储),按主键ID(即粗粒度ID)插入或更新到Elasticsearch存储模型中;当接收的数据为细粒度数据时,构造嵌套数据结构,填充粗粒度ID字段、中粒度ID字段(中粒度ID以列表形式存储)和细粒度字段数据(细粒度数据以列表形式存储),按主键ID(粗粒度ID)插入或更新到Elasticsearch存储模型中。
另外,对Elasticsearch存储模型操作过程中,按主键ID查询不存在记录时,构造的存储结构中,未填充的字段自动填充默认值;按主键ID查询记录已存在时,只更新已接收的字段。
如图3所示,在步骤S304中,数据查询。
该步骤主要是从Elasticsearch存储模型中,按各种粒度的字段可以过滤,聚合等。在本实施例中,查询的记录条数就是粗粒度的统计量的指标,无需去重操作,粗粒度字段求和的值就是该字段数据的合计指标。比如可以汇总订单结算各环节的订单量、订单金额、结算金额,也可以统计各个环节的性能及数据积压情况。不但可以按订单粒度(粗粒度)查询,也可以按订单-结算主体粒度(中粒度)以及订单结算明细(细粒度)查询。
基于上述步骤,通过基于分布式数据库Elasticsearch设计一种嵌套数据结构,以及基于该嵌套数据结构的入库、查询等整体设计方案,通过该方案可以提升数据查询性能,简化多数据源入库流程。
综上所述,本公开实施例提供的数据嵌套存储方法,一方面,针对不同粒度级别的数据分别构建嵌套数据结构,使得在数据入库时无需缓存等待,不论获取到哪种粒度的数据都可以实时入库,提升数据查询性能,简化多数据入库流程。另一方面,由于是以粒度级别最高的粗粒度为指标进行统计的,因此无需去重,而且按粗粒度统计数值合计的指标,可直接求和,求和结果中不存在重复合计的问题。
图4示出本公开另一实施例中提供的一种数据嵌套存储装置的示意图,如图4所示,该装置400中包括:粒度判断模块410、嵌套模块420、填充模块430和存储模块440。
粒度判断模块410被配置为对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;嵌套模块420被配置为根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;填充模块430被配置为根据所述数据主键对所述待处理数据进行填充,得到填充数据;存储模块440被配置为将所述填充数据按照所述数据主键存储存到数据库中。
该装置中各个模块的功能参见上述方法实施例中的相关描述,此处不再赘述。
以下图5示出该数据处理系统的整体架构图,如图5所示,包括数据抓取模块510、数据处理模块520、数据存储模块530和数据查询模块540。其中数据抓取模块510、数据处理模块520、数据存储模块530和数据查询模块540分别对应上述实施例中图3所示的步骤S301~S304,此处不再赘述。
综上所述,本公开实施例提供的数据嵌套存储装置,一方面,针对不同粒度级别的数据分别构建嵌套数据结构,使得在数据入库时无需缓存等待,不论获取到哪种粒度的数据都可以实时入库,提升数据查询性能,简化多数据入库流程。另一方面,由于是以粒度级别最高的粗粒度为指标进行统计的,因此无需去重,而且按粗粒度统计数值合计的指标,可直接求和,求和结果中不存在重复合计的问题。
另一方面,本公开还提供了一种电子设备,包括处理器和存储器,存储器存储用于上述处理器控制以下方法的操作指令:
对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;根据所述数据主键对所述待处理数据进行填充,得到填充数据;将所述填充数据按照所述数据主键存储存到数据库中。
下面参考图6,其示出了适于用来实现本申请实施例的电子设备的计算机系统600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分607加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括发送单元、获取单元、确定单元和第一处理单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,发送单元还可以被描述为“向所连接的服务端发送图片获取请求的单元”。
另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括以下方法步骤:
对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;根据所述数据主键对所述待处理数据进行填充,得到填充数据;将所述填充数据按照所述数据主键存储存到数据库中。
应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施方式。
以上具体地示出和描述了本公开的示例性实施方式。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (10)
1.一种数据嵌套存储方法,其特征在于,包括:
对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;
根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;
根据所述数据主键对所述待处理数据进行填充,得到填充数据;
将所述填充数据按照所述数据主键存储存到数据库中。
2.根据权利要求1所述的数据嵌套存储方法,其特征在于,对接收的待处理数据的粒度进行判断之前,还包括:
将不同粒度级别的待处理数据按照路由策略进行分发。
3.根据权利要求1所述的数据嵌套存储方法,其特征在于,所述待处理数据包括粗粒度、中粒度和细粒度三个粒度级别,所述数据主键用粗粒度识别号进行标记。
4.根据权利要求3所述的数据嵌套存储方法,其特征在于,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
当所述待处理数据的粒度级别为粗粒度时,按照所述数据主键对所述待处理数据的粗粒度字段的字段进行填充。
5.根据权利要求3所述的数据嵌套存储方法,其特征在于,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
当所述待处理数据的粒度级别为中粒度时,按照所述数据主键对所述待处理数据的粗粒度字段和中粒度字段的数据进行填充。
6.根据权利要求3所述的数据嵌套存储方法,其特征在于,根据所述数据主键对所述待处理数据进行填充,得到填充数据包括:
当所述待处理数据的粒度级别为细粒度时,按照所述数据主键对所述待处理数据的粗粒度字段、中粒度字段和细粒度字段的数据进行填充。
7.根据权利要求4-6中任一项所述的数据嵌套存储方法,其特征在于,将所述填充数据按照所述数据主键存储到数据库中包括:
按照所述数据主键将所述填充数据插入或更新到数据存储模型中,其中所述数据存储模型为Elasticsearch存储模型。
8.一种数据嵌套存储装置,其特征在于,包括:
粒度判断模块,被配置为对接收的待处理数据的粒度进行判断,得到粒度级别,其中所述待处理数据至少包括两个粒度级别;
嵌套模块,被配置为根据所述粒度级别对所述待处理数据构建嵌套数据结构,所述嵌套数据结构中包含与所述待处理数据对应的数据主键;
填充模块,被配置为根据所述数据主键对所述待处理数据进行填充,得到填充数据;
存储模块,被配置为将所述填充数据按照所述数据主键存储存到数据库中。
9.一种电子设备,其特征在于,包括:
处理器;
存储器,存储用于所述处理器控制如权利要求1-7任一项所述的方法步骤。
10.一种计算机可读介质,其上存储有计算机可执行指令,其特征在于,所述可执行指令被处理器执行时实现如权利要求1-7任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810847055.4A CN110766501A (zh) | 2018-07-27 | 2018-07-27 | 数据嵌套存储方法、装置、电子设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810847055.4A CN110766501A (zh) | 2018-07-27 | 2018-07-27 | 数据嵌套存储方法、装置、电子设备及计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110766501A true CN110766501A (zh) | 2020-02-07 |
Family
ID=69328324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810847055.4A Pending CN110766501A (zh) | 2018-07-27 | 2018-07-27 | 数据嵌套存储方法、装置、电子设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110766501A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364016A (zh) * | 2020-10-27 | 2021-02-12 | 中国地震局地质研究所 | 一种异频数据对象的时间嵌套缓存模型的构建方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009726A (zh) * | 2006-12-28 | 2007-08-01 | 上海柯斯软件有限公司 | 大容量sim卡上电话簿的数据结构协同使用的方法 |
CN101183986A (zh) * | 2007-11-26 | 2008-05-21 | 河北全通通信有限公司 | 节约存储、营造“绿色”数据仓库的方法 |
CN102291269A (zh) * | 2011-09-29 | 2011-12-21 | 迈普通信技术股份有限公司 | 一种数据归并处理方法 |
CN102541759A (zh) * | 2011-12-28 | 2012-07-04 | 畅捷通信息技术股份有限公司 | 缓存控制装置和缓存控制方法 |
CN103092869A (zh) * | 2011-11-01 | 2013-05-08 | 镇江华扬信息科技有限公司 | 一种使能xml数据库的映射转换方法 |
CN103745130A (zh) * | 2014-01-27 | 2014-04-23 | 东北大学 | 无线传感器环境下多属性事件的预测方法 |
CN106557531A (zh) * | 2015-09-30 | 2017-04-05 | 伊姆西公司 | 将复杂结构对象转换成平面化数据 |
CN107729413A (zh) * | 2017-09-25 | 2018-02-23 | 安徽畅通行交通信息服务有限公司 | 基于大数据的区域交通智能管理系统 |
-
2018
- 2018-07-27 CN CN201810847055.4A patent/CN110766501A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009726A (zh) * | 2006-12-28 | 2007-08-01 | 上海柯斯软件有限公司 | 大容量sim卡上电话簿的数据结构协同使用的方法 |
CN101183986A (zh) * | 2007-11-26 | 2008-05-21 | 河北全通通信有限公司 | 节约存储、营造“绿色”数据仓库的方法 |
CN102291269A (zh) * | 2011-09-29 | 2011-12-21 | 迈普通信技术股份有限公司 | 一种数据归并处理方法 |
CN103092869A (zh) * | 2011-11-01 | 2013-05-08 | 镇江华扬信息科技有限公司 | 一种使能xml数据库的映射转换方法 |
CN102541759A (zh) * | 2011-12-28 | 2012-07-04 | 畅捷通信息技术股份有限公司 | 缓存控制装置和缓存控制方法 |
CN103745130A (zh) * | 2014-01-27 | 2014-04-23 | 东北大学 | 无线传感器环境下多属性事件的预测方法 |
CN106557531A (zh) * | 2015-09-30 | 2017-04-05 | 伊姆西公司 | 将复杂结构对象转换成平面化数据 |
CN107729413A (zh) * | 2017-09-25 | 2018-02-23 | 安徽畅通行交通信息服务有限公司 | 基于大数据的区域交通智能管理系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364016A (zh) * | 2020-10-27 | 2021-02-12 | 中国地震局地质研究所 | 一种异频数据对象的时间嵌套缓存模型的构建方法 |
CN112364016B (zh) * | 2020-10-27 | 2021-08-31 | 中国地震局地质研究所 | 一种异频数据对象的时间嵌套缓存模型的构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8108367B2 (en) | Constraints with hidden rows in a database | |
CN104731690B (zh) | 适应性度量收集、存储、和警告阈值 | |
CN108280685A (zh) | 信息获取方法和装置 | |
CN105530272A (zh) | 一种应用数据的同步方法和装置 | |
CN113763093A (zh) | 一种基于用户画像的物品推荐方法和装置 | |
CN109597810B (zh) | 一种任务切分方法、装置、介质及电子设备 | |
CN110245684B (zh) | 数据处理方法、电子设备和介质 | |
CN108920618A (zh) | 一种对象调用关系的保存方法、装置、介质及电子设备 | |
CN104580428A (zh) | 一种数据路由方法、数据管理装置和分布式存储系统 | |
CN110766501A (zh) | 数据嵌套存储方法、装置、电子设备及计算机可读介质 | |
CN109344152A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US10666557B2 (en) | Method to manage data flow for edge-core distributed analytics systems | |
JP4718939B2 (ja) | オブジェクトのカテゴリ化 | |
US20230188619A1 (en) | Methods and systems for event management | |
CN114820132A (zh) | 订单派发方法、装置、电子设备及存储介质 | |
US11868349B2 (en) | Row secure table plan generation | |
US11128547B2 (en) | Value optimization with intelligent service enablements | |
CN113485890A (zh) | 航班查询系统业务监控方法、装置、设备及存储介质 | |
CN111897822A (zh) | 账户状态信息的处理方法、装置、电子设备及存储介质 | |
CN115130026A (zh) | 目标对象的确定方法、装置、介质及电子设备 | |
CN113568803A (zh) | 用于监控存储系统的方法、电子设备和计算机程序产品 | |
CN111210616A (zh) | 基于多源数据的车流量预测方法、系统、终端及介质 | |
CN109246035A (zh) | 一种数据传输管理的方法及装置 | |
CN114710397B (zh) | 服务链路的故障根因定位方法、装置、电子设备及介质 | |
US11341137B1 (en) | Processing search requests |
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 |