CN112100175B - 分区数据定向传递方法及装置 - Google Patents
分区数据定向传递方法及装置 Download PDFInfo
- Publication number
- CN112100175B CN112100175B CN202010906845.2A CN202010906845A CN112100175B CN 112100175 B CN112100175 B CN 112100175B CN 202010906845 A CN202010906845 A CN 202010906845A CN 112100175 B CN112100175 B CN 112100175B
- Authority
- CN
- China
- Prior art keywords
- data
- query request
- record
- partition
- temporary table
- 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
- 238000005192 partition Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 title claims description 8
- 230000004048 modification Effects 0.000 claims abstract description 19
- 238000012986 modification Methods 0.000 claims abstract description 19
- 238000007726 management method Methods 0.000 claims description 10
- 238000012384 transportation and delivery Methods 0.000 claims description 8
- 238000013523 data management Methods 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 12
- 238000000638 solvent extraction Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开实施例公开了一种分区数据定向传递方法及装置。其中,该方法包括:根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引;对于有确定时间要求的查询请求,为所述查询请求建立临时表;在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中;通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中;将最终的所述临时表作为所述查询请求的结果返回给请求方。
Description
技术领域
本公开涉及数据库大数据处理技术领域,具体涉及一种分区数据定向传递方法、装置、电子设备及存储介质。
背景技术
在一般的数据库中,记录各种信息的数据是以文件形式保存在各类存储空间中的,对于小型***和有限的数据来说,数据库的存储和管理压力不大,通常采用默认设置在一台设备中集中处理即可。但对于互联网时代来说,大数据处理和分析是常见的需求,对于每天活跃次数达上千万甚至上亿的互联网应用来说,必须对数据库的存储和管理进行优化,以保证其对应用***的及时响应。
其中,数据库中的信息一般通过数据表记录,一张数据表在存储和管理时通常对应为表结构、表数据和表索引三个文件,比如在mysql数据库中,通过.frm文件存放表结构、.myd文件存放表数据、.myi文件存放表索引。在互联网应用的大数据场景下,表数据文件会非常大,相应的表索引文件体量也会比较惊人,在查找数据时,查询语句在一个大文件中遍历耗时较多,***响应很慢、效率极低。为优化查询,现有技术会采用表分区方式来优化数据表的管理。具体地,表分区是指根据一定规则将数据库中的一张表分解成多个更小的、更容易管理的部分;从逻辑上看,多个部分仍表示为一张表,但是底层却是由多个物理分区组成。通过分区,在查找数据时只需要在少量的目的范围分区内遍历,而无需遍历全表,可显著提升查询效率;同时分区后的文件分割成多个小块,可以自由分配存储空间,也大大减轻了数据存储的压力。
然而,发明人在实现本公开实施例相关技术方案的过程中发现,现有技术的表分区方式仍存在着明显的缺陷:其中,表分区通常按固定规则执行,一般情况下按数据记录产生时间管理数据并分区,这在正常业务中没有什么问题;但当有零星数据记录被修改时,由于数据记录仍然按照产生时间和序号被管理,在应用***按照其他规则来获取这些被修改的记录时(比如按记录完成时间等来确认时),并不能将查询限定在有限的分区内,而需要跨越不定数量的分区(甚至是全部分区)来获取这些被修改的零星数据,这显然影响了***的执行效率和应用的响应速度。而如果在每次修改记录时都进行一次跨分区的记录转移,一方面可能会影响数据的完整性,产生脏数据;另一方面也会增加很多低效的跨分区操作,同样影响***性能。
发明内容
针对现有技术中的上述技术问题,本公开实施例提出了一种分区数据定向传递方法、装置、电子设备及计算机可读存储介质,以解决现有技术中获取修改记录效率低下的问题。
本公开实施例的第一方面提供了一种分区数据定向传递方法,包括:
根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引;
对于有确定时间要求的查询请求,为所述查询请求建立临时表;
在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中;
通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中;
将最终的所述临时表作为所述查询请求的结果返回给请求方。
在一些实施例中,所述新索引仅为所述指定字段的字段值不为空的数据记录建立索引。
在一些实施例中,所述数据记录按照记录生成时间保存在数据表中,所述表分区按照指定的时间粒度对所述数据表进行分解。
在一些实施例中,所述表分区的所述时间粒度与所述查询请求的所述时间要求对应一致。
在一些实施例中,所述方法还包括:
所述请求方在接收到所述临时表后,按照本地数据表的表分区格式来接收和写入数据记录。
本公开实施例的第二方面提供了一种分区数据定向传递装置,包括:
索引管理模块,用于根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引;
临时表建立模块,用于对于有确定时间要求的查询请求,为所述查询请求建立临时表;
第一获取模块,用于在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中;
第二获取模块,用于通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中;
数据传递模块,用于将最终的所述临时表作为所述查询请求的结果返回给请求方。
在一些实施例中,所述新索引仅为所述指定字段的字段值不为空的数据记录建立索引。
在一些实施例中,所述数据记录按照记录生成时间保存在数据表中,所述表分区按照指定的时间粒度对所述数据表进行分解。
在一些实施例中,所述表分区的所述时间粒度与所述查询请求的所述时间要求对应一致。
在一些实施例中,所述装置还包括:
请求方数据管理模块,用于所述请求方在接收到所述临时表后,按照本地数据表的表分区格式来接收和写入数据记录。
本公开实施例的第三方面提供了一种电子设备,包括:
存储器以及一个或多个处理器;
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行时,所述电子设备用于实现如前述各实施例所述的方法。
本公开实施例的第四方面提供了一种计算机可读存储介质,其上存储有计算机可执行指令,当所述计算机可执行指令被计算装置执行时,可用来实现如前述各实施例所述的方法。
本公开实施例的第五方面提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,可用来实现如前述各实施例所述的方法。
根据本公开实施例所提出的技术方案,通过索引和临时表的操作,在不改变分区结构的情况下,完整地传递了零星存储的特定记录数据,有效降低了资源的占用,提升了***性能。
附图说明
通过参考附图会更加清楚的理解本公开的特征和优点,附图是示意性的而不应理解为对本公开进行任何限制,在附图中:
图1是根据本公开的一些实施例所示的一种分区数据定向传递方法流程示意图;
图2是根据本公开的一些实施例所示的一种分区数据定向传递装置的模块结构示意图;
图3是根据本公开的一些实施例所示的一种电子设备的结构示意图。
具体实施方式
在下面的详细描述中,通过示例阐述了本公开的许多具体细节,以便提供对相关披露的透彻理解。然而,对于本领域的普通技术人员来讲,本公开显而易见的可以在没有这些细节的情况下实施。应当理解的是,本公开中使用“***”、“装置”、“单元”和/或“模块”术语,是用于区分在顺序排列中不同级别的不同部件、元件、部分或组件的一种方法。然而,如果其他表达式可以实现相同的目的,这些术语可以被其他表达式替换。
应当理解的是,当设备、单元或模块被称为“在……上”、“连接到”或“耦合到”另一设备、单元或模块时,其可以直接在另一设备、单元或模块上,连接或耦合到或与其他设备、单元或模块通信,或者可以存在中间设备、单元或模块,除非上下文明确提示例外情形。例如,本公开所使用的术语“和/或”包括一个或多个相关所列条目的任何一个和所有组合。
本公开所用术语仅为了描述特定实施例,而非限制本公开范围。如本公开说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的特征、整体、步骤、操作、元素和/或组件,而该类表述并不构成一个排它性的罗列,其他特征、整体、步骤、操作、元素和/或组件也可以包含在内。
参看下面的说明以及附图,本公开的这些或其他特征和特点、操作方法、结构的相关元素的功能、部分的结合以及制造的经济性可以被更好地理解,其中说明和附图形成了说明书的一部分。然而,可以清楚地理解,附图仅用作说明和描述的目的,并不意在限定本公开的保护范围。可以理解的是,附图并非按比例绘制。
本公开中使用了多种结构图用来说明根据本公开的实施例的各种变形。应当理解的是,前面或下面的结构并不是用来限定本公开。本公开的保护范围以权利要求为准。
在互联网大数据应用中,数据库的表分区管理方式可大幅提升普通查询的执行效率并降低***的存储压力。但现有的表分区方式在获取随机时刻修改的记录时不太理想,有可能仍需要大范围地遍历大量甚至全部分区;否则就需要进行大量零碎而随机的跨分区数据迁移,无论哪种方式都会严重影响***的性能。
有鉴于此,本公开实施例提供了一种分区数据定向传递方法,通过索引和临时表的操作,在不改变分区结构的情况下,完整地传递了零星存储的特定记录数据,有效降低了资源的占用,提升了***性能。在本公开的一个实施例中,如图1所示,所述分区数据定向传递方法包括:
S101,根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引。
其中,在本公开的实施例中,首先对数据表进行微调,在数据表中增加与数据记录修改情况相关的字段,典型地,比如“最后修改时间”字段等;通过这些字段在数据记录已经生成之后继续跟踪其后续修改情况。在某些场景下,对时间比较敏感的***中数据表本身就包括这些修改字段,则只需在数据记录被修改时更新相应字段内容即可。进一步地,本公开的实施例中还对这些修改字段建立新索引;由于记录修改的情况只零星发生,实际数量与全量数据相比来说非常小,因而大部分数据记录的修改字段是空值(null,即没有任何内容),而针对这些修改字段的新索引只索引字段值不为空的那些记录,因而该新索引的实际数据量相对而言非常小。对数据量极小的普通索引进行维护,其管理和存储压力不大,并不会给***资源和性能带来明显的负面影响。
S102,对于有确定时间要求的查询请求,为所述查询请求建立临时表。
如前所述,由于***中不定时有零散的记录修改行为发生,对于有确定时间要求的查询请求,可能会需要在多个表分区中执行查询操作(遍历表分区数据)来获取数据,这严重影响了查询效率并给***带来极大的运行压力。在本公开的实施例中,通过使用临时表来汇总查询请求相关的数据记录,将汇总后的结果数据一次传递给请求方,也适当减少网络传输的次数,减轻网络资源压力。
S103,在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中。
现有的表分区数据一般按记录生成时间存储和分区,对于一个有确定时间要求的查询请求,其主要目标数据对应的表分区通常也是明确的,一般根据其时间要求来确定。比如,对于按每日分区的数据表,当查询请求为获取前一日(以下以D-1日表示,其中D表示当前日期)的已完结业务记录时,可以确定其主要数据记录应该是在D-1日的表分区当中,因而首先在该表分区中进行查询,获取该查询请求对应的主要数据记录。主要表分区的确定和查询的执行采用现有技术即可,比如根据表分区规则和时间要求进行匹配,确定时间要求所对应的至少一个表分区等;查询获取的数据记录先通过临时表保存,其同样是常规技术,在此不再对这些常规手段一一展开描述。
S104,通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中。
在本公开的实施例中,主要目的是提升零散已修改记录的获取效率。相对于现有技术在各个表分区中遍历查询以获取数据记录的方式,本公开的实施例通过在先单独建立的小型索引来帮助获取数据,可以直接从指定位置获取数据记录,而无需对每个表分区进行完整的遍历,从而减少了对不同表分区的访问,减少了表分区内的数据操作,也减少了跨分区的数据操作,因而大幅提升了***执行效率,减轻了执行时的资源压力。其中,数据记录的获取和对临时表的写入并没有严格的顺序要求,即上述步骤S103和S104可采用任意的顺序执行,此处的步骤编号及撰写顺序不应视作对本公开实施例的方法执行顺序的具体限制。
S105,将最终的临时表作为所述查询请求的结果返回给请求方。
在本公开的实施例中,通过两个途径来获取查询请求对应的数据记录,然后利用临时表来保存和管理获取的数据记录,临时表的读写同样属于现有的常规技术手段。本公开的实施例中将汇总后的结果数据通过临时表一次传递给请求方,可适当减少网络传输的次数,减轻网络资源压力。此外,由于请求方的应用***通常会采用与后台数据库同样的分区格式来管理数据,本公开实施例获取数据记录的两个途径不会改变后台数据库的表分区结构,临时表将数据记录传递给请求方的应用***后,应用***也可以按照本地表的分区格式来接收和写入数据记录,同样不会改变其表分区结构,因而本申请的技术方案可以同时保持后台数据库和请求方的应用***的数据表分区结构,无需根据应用需求修改表分区,保持了***整体的稳定性和一致性,降低了***设计和维护的成本。
在本公开的一个优选实施例中,以互联网应用的日结需求为例进行说明,来详细介绍本公开的技术方案在大数据应用中的实现和相应的效果。具体地,在典型的互联网大数据应用中,大型的电子商务***在很短的时间内可能就会接收上千万甚至上亿条用户请求,即便有部分请求可能会被用户取消,但***每天最终处理并记录的用户数据也是相当庞大的。进一步地,现有的互联网商务应用大多通过第三方支付完成最终的结算,后台需要记录和处理的数据需要多方协调,信息量更为可观,数据表分区是必不可少的数据管理手段;但同时一个用户请求通常要跨越多个自然日才能真正完结,在第三方支付为各方完成业务的结算时,跨分区操作数据也是难以避免的,如何提升跨分区操作效率对***性能来说至关重要。
其中,在一个完整的***中,后台数据库会尽量保存全部过程数据记录,这使得全量数据的规模特别大,为便于管理,会采用表分区方式将数据表分解管理。通常情况下,第三方支付应用会按照自然日进行批量结算,因而后台数据库和各项应用的表分区优选按自然日分区,即按数据记录生成的日期来分区存储管理。但是电子商务***的交易并不总在指定的日期产生和完结,期间很有可能会发生修改交易的情况,而某个交易即便发生了修改(例如撤销),即便其修改日期与交易日期不一致,该交易记录所在分区也不会改变。当清结算***(比如第三方支付)对D-1日的交易进行清结算时,除了获取交易日期为D-1日的交易记录(占绝大多数)之外,还要额外获取修改日期为D-1日的交易记录(占极少数),而这些额外的交易记录可能存储在交易日期为D-2日、D-3日…的分区中。现有技术的处理方式为了不改动表的分区格式(清结算***本地的表也是同样的分区格式),会全量获取D-1日的分区,以及D-2日、D-3日…的分区,这显然导致了资源的占用/消耗较高。采用本公开实施例的技术方案,只需全量获取D-1日的分区数据,对于少量的其他分区数据通过单独建立的新索引来定向获取,即通过该新索引查找“最后修改时间”字段的值为D-1日的记录,由于该新索引较小,查找效率较高,可显著提高这少量数据的获取效率。由此,本公开实施例的技术方案在不改变分区结构的情况下,完整的传递了清结算所需交易记录数据,且降低了资源的占用/消耗。
图2是根据本公开的一些实施例所示的一种分区数据定向传递装置示意图。如图2所示,分区数据定向传递装置200包括索引管理模块201、临时表建立模块202、第一获取模块203、第二获取模块204和数据传递模块205;其中,
索引管理模块201,用于根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引;
临时表建立模块202,用于对于有确定时间要求的查询请求,为所述查询请求建立临时表;
第一获取模块203,用于在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中;
第二获取模块204,用于通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中;
数据传递模块205,用于将最终的所述临时表作为所述查询请求的结果返回给请求方。
在一些实施例中,所述新索引仅为所述指定字段的字段值不为空的数据记录建立索引。
在一些实施例中,所述数据记录按照记录生成时间保存在数据表中,所述表分区按照指定的时间粒度对所述数据表进行分解。
在一些实施例中,所述表分区的所述时间粒度与所述查询请求的所述时间要求对应一致。
在一些实施例中,所述装置还包括:
请求方数据管理模块,用于所述请求方在接收到所述临时表后,按照本地数据表的表分区格式来接收和写入数据记录。
参考附图3,为本公开一个实施例提供的电子设备示意图。如图3所示,该电子设备300包括:
存储器330以及一个或多个处理器310;
其中,所述存储器330与所述一个或多个处理器310通信连接,所述存储器330中存储有可被所述一个或多个处理器执行的指令332,所述指令332被所述一个或多个处理器310执行,以使所述一个或多个处理器310执行本公开前述实施例中的方法。
具体地,处理器310和存储器330可以通过总线或者其他方式连接,图3中以通过总线340连接为例。处理器310可以为中央处理器(Central Processing Unit,CPU)。处理器310还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器330作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本公开实施例中的级联渐进网络等。处理器310通过运行存储在存储器330中的非暂态软件程序、指令以及功能模块332,从而执行处理器的各种功能应用以及数据处理。
存储器330可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储处理器310所创建的数据等。此外,存储器330可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器330可选包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络(比如通过通信接口320)连接至处理器310。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本公开的一个实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被执行后执行本公开前述实施例中的方法。
前述的计算机可读取存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方式或技术来实现的物理易失性和非易失性、可移动和不可移动介质。计算机可读取存储介质具体包括,但不限于,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、可擦除可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(DVD)、HD-DVD、蓝光(Blue-Ray)或其他光存储设备、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机访问的任何其他介质。
尽管此处所述的主题是在结合操作***和应用程序在计算机***上的执行而执行的一般上下文中提供的,但本领域技术人员可以认识到,还可结合其他类型的程序模块来执行其他实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。本领域技术人员可以理解,此处所述的本主题可以使用其他计算机***配置来实践,包括手持式设备、多处理器***、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等,也可使用在其中任务由通过通信网络连接的远程处理设备执行的分布式计算环境中。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备的两者中。
本领域普通技术人员可以意识到,结合本文中所本公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对原有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。
综上所述,本公开提出了一种分区数据定向传递方法、装置、电子设备及其计算机可读存储介质。本公开实施例通过索引和临时表的操作,在不改变分区结构的情况下,完整地传递了零星存储的特定记录数据,有效降低了资源的占用,提升了***性能。
应当理解的是,本公开的上述具体实施方式仅仅用于示例性说明或解释本公开的原理,而不构成对本公开的限制。因此,在不偏离本公开的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。此外,本公开所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (10)
1.一种分区数据定向传递方法,其特征在于,包括:
根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引;其中,所述指定字段为与数据记录修改情况相关的字段;
对于有确定时间要求的查询请求,为所述查询请求建立临时表;
在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中;
通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中;
将最终的所述临时表作为所述查询请求的结果返回给请求方。
2.根据权利要求1所述的方法,其特征在于,所述新索引仅为所述指定字段的字段值不为空的数据记录建立索引。
3.根据权利要求1所述的方法,其特征在于,所述数据记录按照记录生成时间保存在数据表中,所述表分区按照指定的时间粒度对所述数据表进行分解。
4.根据权利要求3所述的方法,其特征在于,所述表分区的所述时间粒度与所述查询请求的所述时间要求对应一致。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述请求方在接收到所述临时表后,按照本地数据表的表分区格式来接收和写入数据记录。
6.一种分区数据定向传递装置,其特征在于,包括:
索引管理模块,用于根据数据记录的修改情况,增加和/或更新指定字段,并为所述指定字段建立新索引;其中,所述指定字段为与数据记录修改情况相关的字段;
临时表建立模块,用于对于有确定时间要求的查询请求,为所述查询请求建立临时表;
第一获取模块,用于在所述时间要求对应的至少一个表分区中执行所述查询请求,将获取的数据记录写入所述临时表中;
第二获取模块,用于通过所述新索引在其他表分区中获取与所述时间要求相关的已修改记录,写入所述临时表中;
数据传递模块,用于将最终的所述临时表作为所述查询请求的结果返回给请求方。
7.根据权利要求6所述的装置,其特征在于,所述新索引仅为所述指定字段的字段值不为空的数据记录建立索引。
8.根据权利要求6所述的装置,其特征在于,所述数据记录按照记录生成时间保存在数据表中,所述表分区按照指定的时间粒度对所述数据表进行分解。
9.根据权利要求8所述的装置,其特征在于,所述表分区的所述时间粒度与所述查询请求的所述时间要求对应一致。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
请求方数据管理模块,用于所述请求方在接收到所述临时表后,按照本地数据表的表分区格式来接收和写入数据记录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010906845.2A CN112100175B (zh) | 2020-08-28 | 2020-08-28 | 分区数据定向传递方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010906845.2A CN112100175B (zh) | 2020-08-28 | 2020-08-28 | 分区数据定向传递方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112100175A CN112100175A (zh) | 2020-12-18 |
CN112100175B true CN112100175B (zh) | 2021-10-19 |
Family
ID=73757464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010906845.2A Active CN112100175B (zh) | 2020-08-28 | 2020-08-28 | 分区数据定向传递方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112100175B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112597191B (zh) * | 2020-12-29 | 2024-06-11 | 拉卡拉支付股份有限公司 | 数据处理方法、装置、电子设备、存储介质及程序产品 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156168A (zh) * | 2015-04-16 | 2016-11-23 | 华为技术有限公司 | 在跨分区数据库中查询数据的方法及跨分区查询装置 |
CN106897340A (zh) * | 2016-07-05 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种数据表更新方法及装置 |
CN110874383A (zh) * | 2018-08-30 | 2020-03-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及电子设备 |
CN110888870A (zh) * | 2018-09-11 | 2020-03-17 | 北京奇虎科技有限公司 | 数据存储表的查询方法、分区服务器及电子设备 |
CN111241122A (zh) * | 2020-01-07 | 2020-06-05 | 广州虎牙科技有限公司 | 任务监测方法、装置、电子设备和可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11163781B2 (en) * | 2019-01-14 | 2021-11-02 | Sap Se | Extended storage of text analysis source tables |
US11334548B2 (en) * | 2019-01-31 | 2022-05-17 | Thoughtspot, Inc. | Index sharding |
-
2020
- 2020-08-28 CN CN202010906845.2A patent/CN112100175B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156168A (zh) * | 2015-04-16 | 2016-11-23 | 华为技术有限公司 | 在跨分区数据库中查询数据的方法及跨分区查询装置 |
CN106897340A (zh) * | 2016-07-05 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种数据表更新方法及装置 |
CN110874383A (zh) * | 2018-08-30 | 2020-03-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及电子设备 |
CN110888870A (zh) * | 2018-09-11 | 2020-03-17 | 北京奇虎科技有限公司 | 数据存储表的查询方法、分区服务器及电子设备 |
CN111241122A (zh) * | 2020-01-07 | 2020-06-05 | 广州虎牙科技有限公司 | 任务监测方法、装置、电子设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112100175A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7410181B2 (ja) | ハイブリッド・インデックス作成方法、システム、プログラム | |
US20220350819A1 (en) | System and method for improved performance in a multidimensional database environment | |
US9632944B2 (en) | Enhanced transactional cache | |
CN109240946A (zh) | 数据的多级缓存方法及终端设备 | |
US20210303537A1 (en) | Log record identification using aggregated log indexes | |
CN111258978B (zh) | 一种数据存储的方法 | |
US11151081B1 (en) | Data tiering service with cold tier indexing | |
WO2017161540A1 (zh) | 数据查询的方法、数据对象的存储方法和数据*** | |
US20140201132A1 (en) | Storing a key value to a deleted row based on key range density | |
CN113127848A (zh) | 一种权限***数据的存储方法及相关设备 | |
US8396858B2 (en) | Adding entries to an index based on use of the index | |
CN112100175B (zh) | 分区数据定向传递方法及装置 | |
US11429311B1 (en) | Method and system for managing requests in a distributed system | |
US8548980B2 (en) | Accelerating queries based on exact knowledge of specific rows satisfying local conditions | |
CN112364021A (zh) | 业务数据处理方法、装置及存储介质 | |
EP2662783A1 (en) | Data archiving approach leveraging database layer functionality | |
US9652766B1 (en) | Managing data stored in memory locations having size limitations | |
CN113032349A (zh) | 数据存储方法、装置、电子设备及计算机可读介质 | |
CN115759742A (zh) | 企业风险评估方法、装置、计算机设备和存储介质 | |
CN115687359A (zh) | 数据表分区方法及装置、存储介质、计算机设备 | |
US20230153300A1 (en) | Building cross table index in relational database | |
CN117472873A (zh) | 数据迁移方法、装置、计算设备集群及存储介质 | |
CN110704488B (zh) | 用于管理数据的方法及相应的***、计算机设备和介质 | |
CN114116908A (zh) | 一种数据管理方法、装置及电子设备 | |
CN115718571B (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 |