CN113485949B - 数据处理方法、芯片及计算机可读存储介质 - Google Patents
数据处理方法、芯片及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113485949B CN113485949B CN202110595361.5A CN202110595361A CN113485949B CN 113485949 B CN113485949 B CN 113485949B CN 202110595361 A CN202110595361 A CN 202110595361A CN 113485949 B CN113485949 B CN 113485949B
- Authority
- CN
- China
- Prior art keywords
- dag
- data
- request index
- directed acyclic
- acyclic graph
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种数据处理方法、芯片及计算机可读存储介质,数据处理方法包括:获取第一有向无环图DAG请求索引;在第一DAG请求索引与历史请求记录数据中的第二DAG请求索引匹配的情况下,获取第二DAG请求索引对应的DAG数据,将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据;在第一DAG请求索引与历史请求记录数据中的任一DAG请求索引均不匹配的情况下,向存储器发送与第一DAG请求索引对应的数据请求,接收存储器反馈的对应的DAG数据并缓存。本发明可以基于匹配的DAG请求索引实现DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、芯片及计算机可读存储介质。
背景技术
工作量证明算法(Proof of Work,POW)的本质是基于算力解决一个数学问题,解决问题的关键点是暴力枚举,虽然没有简单快速的办法可以找到需要的nonce值(随机值),但可以简便的验证输出结果。
以太坊所采用的工作量证明算法(Ethash算法)实际是一种内存密集型(Memory-Hard Function)算法,在运算过程中,需要重复从内存随机地提取大量数据进行运算,并找到一个nonce值输入到算法中,使得到的结果低于一个基于特定困难值的阈值。由以上说明可知,Ethash算法的性能瓶颈为内存带宽,由于内存影响会导致多核平行处理发挥不出来,从而降低了定制化专用集成电路(Application Specific Integrated Circuit,ASIC)芯片的运算优势,使性能只与内存大小有关,这是目前抵制矿机的主要手段。
由于Memory-Hard Function算法的本质特性,因此内存读取带宽成为性能瓶颈。另外,由于传统架构以中心化内存存储为基础,因此分布式计算核心向中央存储器请求数据产生延迟,与算法中运算周期固定的哈希计算不同,提取数据所需的运行周期不可预测,因此造成***性能降低。此外,由于芯片上内存容量和制造难度的限制,使得部分厂家采用片外内存保存数据,进一步形成了内存带宽瓶颈。
由此可见,现有技术由于存在内存带宽瓶颈的问题,导致数据传输受限,影响芯片的运算效率。
发明内容
本发明实施例提供了一种数据处理方法、芯片及计算机可读存储介质,以解决现有技术中存在的由于内存带宽瓶颈,导致数据传输受限,影响芯片的运算效率的问题。
第一方面,本发明实施例提供一种数据处理方法,应用于数据处理芯片,包括:
获取第一有向无环图DAG请求索引;
在所述第一DAG请求索引与历史请求记录数据中的第二DAG请求索引匹配的情况下,获取所述第二DAG请求索引对应的DAG数据,将所述第二DAG请求索引对应的DAG数据确定为所述第一DAG请求索引对应的DAG数据;
在所述第一DAG请求索引与所述历史请求记录数据中的任一DAG请求索引均不匹配的情况下,向存储器发送与所述第一DAG请求索引对应的数据请求,接收所述存储器反馈的对应的DAG数据并缓存。
第二方面,本发明实施例提供一种数据处理芯片,包括:
第一计算模块,用于获取第一有向无环图DAG请求索引;
处理模块,用于在所述第一DAG请求索引与历史请求记录数据中的第二DAG请求索引匹配的情况下,获取所述第二DAG请求索引对应的DAG数据,将所述第二DAG请求索引对应的DAG数据确定为所述第一DAG请求索引对应的DAG数据;在所述第一DAG请求索引与所述历史请求记录数据中的任一DAG请求索引均不匹配的情况下,向存储器发送与所述第一DAG请求索引对应的数据请求,接收所述存储器反馈的对应的DAG数据并缓存。
第三方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的数据处理方法。
在本发明实施例中,在获取第一DAG请求索引后,检测历史请求记录数据中是否存在与第一DAG请求索引匹配的DAG请求索引,在历史请求记录数据中存在与第一DAG请求索引匹配的第二DAG请求索引的情况下,将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,实现基于匹配的DAG请求索引进行DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率;在第一DAG请求索引与历史请求记录数据中的任一DAG请求索引均不匹配的情况下,通过片外请求的方式获取DAG数据,可以保证获取需求数据,进而保证数据处理芯片的正常运算,且通过进行数据缓存可以实现数据的重复利用。
附图说明
图1表示本发明实施例提供的数据处理方法示意图;
图2表示本发明实施例提供的数据处理方法的一具体实施流程图;
图3表示本发明实施例提供的数据处理芯片示意图之一;
图4表示本发明实施例提供的数据处理芯片示意图之二。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本发明实施例提供一种数据处理方法,应用于数据处理芯片,如图1所示,该方法包括:
步骤101、获取第一有向无环图DAG请求索引。
数据处理芯片首先获取第一有向无环图(Directed Acyclic Graph,DAG)请求索引,其中DAG是一种图论数据结构,这里可以理解为二进制数据。数据处理芯片自身可以生成第一DAG请求索引,在生成第一DAG请求索引之后,可以检测历史请求记录数据中是否包含与第一DAG请求索引匹配的DAG请求索引。其中,历史请求记录数据用于存储历史DAG请求索引以及对应的DAG数据,与第一DAG请求索引匹配的DAG请求索引,可以理解为与第一DAG请求索引相同的DAG请求索引。在历史请求记录数据中包含与第一DAG请求索引匹配的DAG请求索引时执行步骤102,在历史请求记录数据中不包含与第一DAG请求索引匹配的DAG请求索引时执行步骤103。
步骤102、在所述第一DAG请求索引与历史请求记录数据中的第二DAG请求索引匹配的情况下,获取所述第二DAG请求索引对应的DAG数据,将所述第二DAG请求索引对应的DAG数据确定为所述第一DAG请求索引对应的DAG数据。
针对历史请求记录数据中包括与第一DAG请求索引匹配的第二DAG请求索引匹配的情况,可以获取第二DAG请求索引对应的DAG数据,由于第二DAG请求索引与第一DAG请求索引相匹配,因此可以将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,实现基于匹配的DAG请求索引进行DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率,避免由于数据传输受限影响数据处理芯片运算的问题。
步骤103、在所述第一DAG请求索引与所述历史请求记录数据中的任一DAG请求索引均不匹配的情况下,向存储器发送与所述第一DAG请求索引对应的数据请求,接收所述存储器反馈的对应的DAG数据并缓存。
在第一DAG请求索引与历史请求记录数据中的任一DAG请求索引均不匹配时,即,针对历史请求记录数据中不包含与第一DAG请求索引匹配的DAG请求索引的情况,可以基于第一DAG请求索引向存储器发送对应的数据请求,接收存储器基于数据请求反馈的与第一DAG请求索引对应的DAG数据并缓存。以实现在无可利用的DAG数据时,通过片外请求的方式获取第一DAG请求索引对应的DAG数据。且通过进行数据缓存,可以便于后续与第一DAG请求索引匹配的DAG请求索引快速获取DAG数据,实现数据的重复利用。
本发明上述实施过程,在获取第一DAG请求索引后,检测历史请求记录数据中是否存在与第一DAG请求索引匹配的DAG请求索引,在历史请求记录数据中存在与第一DAG请求索引匹配的第二DAG请求索引的情况下,将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,实现基于匹配的DAG请求索引进行DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率;在第一DAG请求索引与历史请求记录数据中的任一DAG请求索引均不匹配的情况下,通过片外请求的方式获取DAG数据,可以保证获取需求数据,进而保证数据处理芯片的正常运算,且通过进行数据缓存可以实现数据的重复利用。
通过根据第一DAG请求索引与历史请求记录数据中DAG请求索引是否匹配的情况,采用相应的策略获取第一DAG请求索引对应的DAG数据,可以在保证获取需求数据的基础上,实现DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率。
在本发明一可选实施例中,所述获取所述第二DAG请求索引对应的DAG数据,包括:
判断所述历史请求记录数据中所述第二DAG请求索引对应的数据缓存位置是否存在DAG数据;
在所述第二DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,等待返回所述第二DAG请求索引对应的DAG数据;
在所述第二DAG请求索引对应的数据缓存位置存在DAG数据的情况下,提取所述第二DAG请求索引对应的数据缓存位置的DAG数据。
数据处理芯片在获取第二DAG请求索引对应的DAG数据时,可以首先判断历史请求记录数据中第二DAG请求索引对应的数据缓存位置是否存在DAG数据,若第二DAG请求索引对应的数据缓存位置不存在DAG数据,则可以等待第二DAG请求索引对应的DAG数据的返回(此时,已经基于第二DAG请求索引,通过片外请求的方式向存储器发送了数据请求)。可以实现第二DAG请求索引对应的DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率。
在第二DAG请求索引对应的数据缓存位置存在DAG数据的情况下,可以直接在第二DAG请求索引对应的数据缓存位置提取DAG数据,以获取第二DAG请求索引对应的DAG数据。
本发明上述实施过程,在第二DAG请求索引对应的数据缓存位置不存在DAG数据时,等待第二DAG请求索引对应的DAG数据的返回,在第二DAG请求索引对应的数据缓存位置存在DAG数据时,可以直接在第二DAG请求索引对应的数据缓存位置提取DAG数据,实现根据第二DAG请求索引对应的数据缓存位置是否存在DAG数据的情况,采用对应的策略获取第二DAG请求索引对应的DAG数据。
在上一实施例的基础上,该方法还包括:
在所述第二DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一DAG请求索引对应的第一标识,并在获取到所述第二DAG请求索引对应的DAG数据后将获取的DAG数据缓存至所述第二DAG请求索引对应的数据缓存位置;
在所述第二DAG请求索引对应的数据缓存位置存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一DAG请求索引对应的第一标识;
其中,所述第一标识为所述第一DAG请求索引的来源标识。
针对第二DAG请求索引对应的数据缓存位置不存在DAG数据的情况,可以获取第一DAG请求索引对应的第一标识,将第一DAG请求索引对应的第一标识添加至历史请求记录数据,并等待第二DAG请求索引对应的DAG数据返回,在获取第二DAG请求索引对应的DAG数据之后,将获取的第二DAG请求索引对应的DAG数据缓存至历史请求记录数据中第二DAG请求索引对应的数据缓存位置。
针对第二DAG请求索引对应的数据缓存位置存在DAG数据的情况,可以获取第一DAG请求索引对应的第一标识,将第一DAG请求索引对应的第一标识添加至历史请求记录数据。
其中,第一标识为第一DAG请求索引的来源标识,用于表征第一DAG请求索引的来源。针对数据处理芯片而言,可以包括多个生成组件,生成组件用于生成第一DAG请求索引,因此,针对每个第一DAG请求索引,可以对应有第一标识,来表征对应的生成组件(表征第一DAG请求索引的来源),即,第一DAG请求索引对应的第一标识可以理解为生成组件标识。
本发明上述实施过程,通过将第一DAG请求索引对应的第一标识添加至历史请求记录数据中,可以实现对基于第一DAG请求索引请求数据的行为进行记录,通过在获取第二DAG请求索引对应的DAG数据后,缓存至历史请求记录数据中,可以保证后续与第二DAG请求索引匹配的DAG请求索引快速获取DAG数据,实现数据的重复使用,提升数据利用率。
在本发明一可选实施例中,在获取所述第一DAG请求索引对应的DAG数据之后,还包括:
根据所述第一DAG请求索引对应的DAG数据和所述第一DAG请求索引对应的第一参数,更新所述第一参数,并根据更新后的所述第一参数获取更新后的所述第一DAG请求索引,以完成所述第一DAG请求索引的更新;
根据更新后的所述第一DAG请求索引获取更新后的所述第一DAG请求索引对应的DAG数据,以完成DAG数据的更新,在更新后的所述第一参数和更新后的所述第一DAG请求索引对应的DAG数据的基础上,继续执行更新流程,然后循环更新流程直至更新次数达到预设次数且获取目标DAG数据;
其中,前一次的更新结果为后一次的更新依据,所述预设次数的取值为小于或者等于63的正整数,在所述第一DAG请求索引为所述数据处理芯片首次获取的DAG请求索引时,所述第一参数为哈希计算种子值,所述哈希计算种子值基于目标头部哈希值和一随机数生成,所述目标头部哈希值为所述数据处理芯片对应的区块链的目标区块的头部哈希值,所述随机数的取值范围为0至264-1,所述目标DAG数据为所述数据处理芯片首次获取DAG请求索引后经过63次DAG请求索引更新确定的DAG数据。
在获取第一DAG请求索引对应的DAG数据之后,可以基于第一DAG请求索引对应的DAG数据和第一DAG请求索引对应的第一参数,进行第一参数更新。具体为:将第一DAG请求索引对应的DAG数据和第一DAG请求索引对应的第一参数,进行FNV(Fowler-Noll-Vo)哈希运算作为更新后的第一参数,其中FNV算法属于非密码学哈希函数。
在获取更新后的第一参数之后,可以依据更新后的第一参数获取更新后的第一DAG请求索引,实现第一DAG请求索引的更新。
在获取更新后的第一DAG请求索引之后,可以根据更新后的第一DAG请求索引获取对应的DAG数据,实现DAG数据的更新。此时,可以检测历史请求记录数据中是否包含与更新后的第一DAG请求索引匹配的DAG请求索引,若存在,获取与更新后的第一DAG请求索引匹配的DAG请求索引对应的DAG数据,并将其确定为更新后的第一DAG请求索引对应的DAG数据。若不存在,则通过片外请求的方式获取更新后的第一DAG请求索引对应的DAG数据。
在获取更新后的第一DAG请求索引对应的DAG数据之后,可以在此基础上,继续执行更新流程,即,以更新后的第一参数和更新后的第一DAG请求索引对应的DAG数据为依据,进行FNV哈希运算,以实现对更新后的第一参数继续更新,获取最新的第一参数,然后获取最新的第一参数对应的最新的第一DAG请求索引,实现更新后的第一DAG请求索引的更新,并获取最新的DAG数据,实现更新后的DAG数据的更新。以最新的DAG数据和最新的第一参数为依据,继续执行更新流程,在完成更新流程后继续循环该流程直至更新次数达到预设次数且获取目标DAG数据。
其中,前一次的更新结果(包括经过更新的第一参数、经过更新的第一DAG请求索引、经过更新的DAG数据)为后一次的更新依据。在获取第一DAG请求索引对应的DAG数据之后,首次更新依据的是第一DAG请求索引对应的DAG数据和第一DAG请求索引对应的第一参数。在获取到目标DAG数据时,更新次数已经达到预设次数,预设次数的取值为小于或者等于63的正整数。
其中,第一DAG请求索引为数据处理芯片64次获取的DAG请求索引中的某一个DAG请求索引。针对第一DAG请求索引为数据处理芯片非首次获取的DAG请求索引的情况,其对应的第一参数由上一次生成的DAG请求索引对应的DAG数据和第一参数确定。针对每次获取的DAG数据,为128Bytes数据。针对第一DAG请求索引为数据处理芯片首次获取的DAG请求索引的情况,其对应的第一参数为哈希计算种子值,哈希计算种子值由目标头部哈希值和一随机数生成,其中目标头部哈希值为数据处理芯片对应的区块链的目标区块的头部哈希值,随机数的取值范围为0至264-1,即,随机数可以为取值范围内的一个数。目标区块的头部哈希值由区块链中与目标区块相邻的上一区块的信息所确定。例如,针对随机数为0的情况,根据32Bytes目标头部哈希值和随机数0对应的8Bytes二进制数,构成40Bytes哈希计算种子值(第一参数)。对哈希计算种子值采用sha3-512(Keccak512)进行一次加密运算得到加密结果,对加密结果进行进一步处理得到DAG请求索引(首次生成的DAG请求索引)。
本发明上述实施过程,通过基于循环的方式不断执行更新流程,可以获取目标DAG数据,以便于基于目标DAG数据进行后续处理。
在本发明一可选实施例中,在获取目标DAG数据之后,还包括:
对所述目标DAG数据进行压缩处理生成字节数组,并基于所述字节数组获取数据结果;
比较所述数据结果和目标结果,并在所述数据结果小于所述目标结果时,确定所述数据结果为有效哈希值。
获取的目标DAG数据为128Bytes数据,在获取目标DAG数据之后,可以对目标DAG数据进行压缩处理生成字节数组,其中生成字节数组的过程为:对目标DAG数据(128Bytes数据)进行预处理后得到经过处理后的128Bytes数据,然后对得到的128Bytes数据进行混合,即对每4个4Bytes采用FVN进行混和,得到8组32位数据,然后创建一个长度为32的字节数组digest,再把8组32位数据分散到32位的字节数组中去,实现基于目标DAG数据生成字节数组。
在获取字节数组之后,可以基于字节数组获取数据结果result,具体为:采用crypto.Keccak256(append(seed,digest...))对保存的哈希计算种子值和字节数组的组合进行Keccak256加密,得到数据结果result。在得到数据结果之后,可以将数据结果result与目标结果target进行比较,若result小于target,则确定数据结果result是一个有效的哈希值。
本发明上述实施过程,可以在获取目标DAG数据之后,基于目标DAG数据获取数据结果,通过比较数据结果和目标结果,验证有效哈希值。
在本发明一可选实施例中,多个所述第一DAG请求索引并行获取,多个所述第一DAG请求索引对应于多个不同的随机数;
在针对多个所述第一DAG请求索引,获取每个所述第一DAG请求索引对应的DAG数据时,还包括:
针对多个所述第一DAG请求索引,并行查找每个所述第一DAG请求索引分别对应的DAG数据。
数据处理芯片可以并行获取(生成)多个第一DAG请求索引,且针对多个并行获取的第一DAG请求索引,分别对应于不同的随机数。针对多个并行获取的第一DAG请求索引在获取对应的DAG数据时,可以采用并行的方式查找每个第一DAG请求索引分别对应的DAG数据,以实现DAG数据的批量获取。
需要说明的是,在获取DAG数据时,通常可以采用先入先出对列(First InputFirst Output,FIFO)的方式获取DAG数据,即,针对优先接收到的第一DAG请求索引,优先获取对应的DAG数据,可以在保证数据获取有序性的情况下,基于先进先出原则避免不合理的等待。在获取DAG数据时,也可以采用堆栈方式获取DAG数据,即基于后进先出的原则有序获取DAG数据。当然还可以采用表的数据结构的形式获取DAG数据,即当表空间已满且有新请求时,通过判断选择表中数据已获取且已缓存的位置来存放新的请求。
下面通过一具体实例的实施流程对本发明的数据处理方法进行介绍,参见图2所示,包括:
步骤201、选取随机数。
步骤202、根据随机数和目标头部哈希值生成哈希计算种子值,将哈希计算种子值作为第一参数,根据第一参数生成第一DAG请求索引。
步骤203、检测历史请求记录数据中是否存在第一DAG请求索引匹配的第二DAG请求索引,若存在,执行步骤204,否则执行步骤205。
步骤204、检测第二DAG请求索引对应的DAG数据是否已缓存,若已缓存,则执行步骤206,否则执行步骤207。
步骤205、通过片外请求方式获取对应的DAG数据并缓存,然后执行步骤208。
步骤206、将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,然后执行步骤208。
步骤207、等待第二DAG请求索引对应的DAG数据的返回并缓存,将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,然后执行步骤208。
步骤208、更新第一参数以及第一DAG请求索引,根据更新后的第一DAG请求索引获取对应的DAG数据。
步骤209、重复执行步骤208,完成63次更新以获取目标DAG数据,其中前一次的更新结果为后一次的更新依据。
步骤210、对目标DAG数据进行处理,获取数据结果。
步骤211、检测数据结果是否属于有效哈希值,若属于则结束流程,否则执行步骤201。
上述实施过程,通过根据第一DAG请求索引与历史请求记录数据中DAG请求索引是否匹配的情况,采用相应的策略获取第一DAG请求索引对应的DAG数据,可以在保证获取需求数据的基础上,实现DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率;通过循环更新第一DAG请求索引,可以获取目标DAG数据。
以上为本发明实施例提供的数据处理方法的整体实施过程,在获取第一DAG请求索引后,检测历史请求记录数据中是否存在与第一DAG请求索引匹配的DAG请求索引,在历史请求记录数据中存在与第一DAG请求索引匹配的第二DAG请求索引的情况下,将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,实现基于匹配的DAG请求索引进行DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率;在第一DAG请求索引与历史请求记录数据中的任一DAG请求索引均不匹配的情况下,通过片外请求的方式获取DAG数据,可以保证获取需求数据,进而保证数据处理芯片的正常运算,且通过进行数据缓存可以实现数据的重复利用。
本发明实施例还提供一种数据处理芯片,如图3所示,数据处理芯片30包括:
第一计算模块31,用于获取第一有向无环图DAG请求索引;
处理模块32,用于在所述第一DAG请求索引与历史请求记录数据中的第二DAG请求索引匹配的情况下,获取所述第二DAG请求索引对应的DAG数据,将所述第二DAG请求索引对应的DAG数据确定为所述第一DAG请求索引对应的DAG数据;在所述第一DAG请求索引与所述历史请求记录数据中的任一DAG请求索引均不匹配的情况下,向存储器发送与所述第一DAG请求索引对应的数据请求,接收所述存储器反馈的对应的DAG数据并缓存。
其中,第一计算模块31可以生成第一DAG请求索引;处理模块32可以检测历史请求记录数据中是否包含与第一DAG请求索引匹配的DAG请求索引,根据历史请求记录数据中是否包含与第一DAG请求索引匹配的DAG请求索引的情况,执行不同的操作。
可选的,如图4所示,所述处理模块32包括:
判断子模块321,用于判断所述历史请求记录数据中所述第二DAG请求索引对应的数据缓存位置是否存在DAG数据;
第一处理子模块322,用于在所述第二DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,等待返回所述第二DAG请求索引对应的DAG数据;
第二处理子模块323,用于在所述第二DAG请求索引对应的数据缓存位置存在DAG数据的情况下,提取所述第二DAG请求索引对应的数据缓存位置的DAG数据。
其中,判断子模块321用于判断历史请求记录数据中第二DAG请求索引对应的数据缓存位置是否存在DAG数据;在判断子模块321的判断结果为第二DAG请求索引对应的数据缓存位置不存在DAG数据时,由第一处理子模块322执行相应操作,在判断子模块321的判断结果为第二DAG请求索引对应的数据缓存位置存在DAG数据时,由第二处理子模块323执行相应操作。
可选的,所述处理模块32还包括:
更新缓存子模块324,用于在所述第二DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一DAG请求索引对应的第一标识,并在获取到所述第二DAG请求索引对应的DAG数据后将获取的DAG数据缓存至所述第二DAG请求索引对应的数据缓存位置;
更新子模块325,用于在所述第二DAG请求索引对应的数据缓存位置存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一DAG请求索引对应的第一标识;
其中,所述第一标识为所述第一DAG请求索引的来源标识。
针对第二DAG请求索引对应的数据缓存位置不存在DAG数据的情况,更新缓存子模块324可以在历史请求记录数据中添加第一DAG请求索引对应的第一标识,并在获取到第二DAG请求索引对应的DAG数据后进行缓存。针对第二DAG请求索引对应的数据缓存位置存在DAG数据的情况,更新子模块325可以在历史请求记录数据中添加第一DAG请求索引对应的第一标识。
第一标识为第一DAG请求索引的来源标识,用于表征第一DAG请求索引的来源。针对数据处理芯片30而言,可以包括多个生成组件,生成组件用于生成第一DAG请求索引,因此,针对每个第一DAG请求索引,可以对应有第一标识,来表征对应的生成组件(表征第一DAG请求索引的来源),即,第一DAG请求索引对应的第一标识可以理解为生成组件标识。第一计算模块31部署在生成组件上用以实现生成第一DAG请求索引的功能。
可选的,在所述处理模块32获取所述第一DAG请求索引对应的DAG数据之后,所述第一计算模块31还用于:根据所述第一DAG请求索引对应的DAG数据和所述第一DAG请求索引对应的第一参数,更新所述第一参数,并根据更新后的所述第一参数获取更新后的所述第一DAG请求索引,以完成所述第一DAG请求索引的更新;
所述处理模块32还用于:根据更新后的所述第一DAG请求索引获取更新后的所述第一DAG请求索引对应的DAG数据,以完成DAG数据的更新;
所述第一计算模块31、所述处理模块32还用于:在更新后的所述第一参数和更新后的所述第一DAG请求索引对应的DAG数据的基础上,继续执行更新流程,然后循环更新流程直至更新次数达到预设次数且获取目标DAG数据;
其中,前一次的更新结果为后一次的更新依据,所述预设次数的取值为小于或者等于63的正整数,在所述第一DAG请求索引为所述数据处理芯片首次获取的DAG请求索引时,所述第一参数为哈希计算种子值,所述哈希计算种子值基于目标头部哈希值和一随机数生成,所述目标头部哈希值为所述数据处理芯片对应的区块链的目标区块的头部哈希值,所述随机数的取值范围为0至264-1,所述目标DAG数据为所述数据处理芯片首次获取DAG请求索引后经过63次DAG请求索引更新确定的DAG数据。
其中,所述第一计算模块31包括多个第一计算子模块311,多个所述第一计算子模块311并行获取多个所述第一DAG请求索引,多个所述第一DAG请求索引对应于多个不同的随机数;
所述处理模块32还用于:针对多个所述第一DAG请求索引,并行查找每个所述第一DAG请求索引分别对应的DAG数据。
第一计算模块31可以包括多个初始化单元3111和多个混合单元3112,其中,每个第一计算子模块311包括一个初始化单元3111和一个混合单元3112,针对第一DAG请求索引为数据处理芯片首次获取的DAG请求索引的情况,在获取第一DAG请求索引时,初始化单元3111用于获取目标头部哈希值和一随机数,构成40Bytes哈希计算种子值(作为第一参数),并对其采用sha3-512(Keccak512)进行一次加密运算,获取加密结果(为64Bytes的数据)。混合单元3112用于对加密结果通过预设算法进行进一步计算得到第一DAG请求索引,具体为:将64Bytes的加密结果转为16个4Bytes类型,通过复制得到32个4Bytes(即128Bytes数据),然后按照预设公式计算出第一DAG请求索引。
针对第一DAG请求索引为数据处理芯片第二次获取的DAG请求索引的情况,在获取第一DAG请求索引时,混合单元3112用于:根据首次获取的DAG请求索引对应的DAG数据和基于哈希计算种子值确定的128Bytes数据,进行FNV哈希运算,作为第一DAG请求索引对应的第一参数(128Bytes数据),混合单元3112还用于对第一参数通过预设公式进行进一步计算得到第一DAG请求索引。其中,计算需求的DAG数据由处理模块32提供。
针对第一DAG请求索引为数据处理芯片第三次获取的DAG请求索引的情况,混合单元3112用于:根据第二次获取的DAG请求索引对应的DAG数据和参数(用于确定DAG请求索引,为128Bytes数据),进行FNV哈希运算,作为第一DAG请求索引对应的第一参数,然后确定第一DAG请求索引。其中,针对第一DAG请求索引为数据处理芯片第4次至第64次获取的DAG请求索引的情况,获取第一DAG请求索引的操作与该过程的操作相同(以上一次的结果为计算依据),在此不再赘述。
可选的,数据处理芯片30还包括:
第二计算模块33,用于在所述处理模块32获取目标DAG数据之后,对所述目标DAG数据进行压缩处理生成字节数组,并基于所述字节数组获取数据结果;比较所述数据结果和目标结果,并在所述数据结果小于所述目标结果时,确定所述数据结果为有效哈希值。
其中,第二计算模块33可以包括压缩子模块331和比较子模块332,当只有一个压缩子模块331时,可以采用分时复用方式服务多个第一计算子模块311。其中压缩子模块331用于对目标DAG数据进行压缩处理生成字节数组,并基于字节数组获取数据结果,比较子模块332用于比较数据结果和目标结果,并在数据结果小于目标结果时,确定数据结果为有效哈希值。
以上为本发明实施例提供的数据处理芯片,在获取第一DAG请求索引后,检测历史请求记录数据中是否存在与第一DAG请求索引匹配的DAG请求索引,在历史请求记录数据中存在与第一DAG请求索引匹配的第二DAG请求索引的情况下,将第二DAG请求索引对应的DAG数据确定为第一DAG请求索引对应的DAG数据,实现基于匹配的DAG请求索引进行DAG数据的重复使用,提升DAG数据的利用率,保证数据处理芯片的运算效率;在第一DAG请求索引与历史请求记录数据中的任一DAG请求索引均不匹配的情况下,通过片外请求的方式获取DAG数据,可以保证获取需求数据,进而保证数据处理芯片的正常运算,且通过进行数据缓存可以实现数据的重复利用。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (13)
1.一种数据处理方法,应用于数据处理芯片,其特征在于,包括:
获取第一有向无环图DAG请求索引;
在所述第一有向无环图DAG请求索引与历史请求记录数据中的第二有向无环图DAG请求索引匹配的情况下,获取所述第二有向无环图DAG请求索引对应的DAG数据,将所述第二有向无环图DAG请求索引对应的DAG数据确定为所述第一有向无环图DAG请求索引对应的DAG数据;
在所述第一有向无环图DAG请求索引与所述历史请求记录数据中的任一有向无环图DAG请求索引均不匹配的情况下,向存储器发送与所述第一有向无环图DAG请求索引对应的数据请求,接收所述存储器反馈的对应的DAG数据并缓存;
在获取所述第一有向无环图DAG请求索引对应的DAG数据之后,还包括:
根据所述第一有向无环图DAG请求索引对应的DAG数据和所述第一有向无环图DAG请求索引对应的第一参数,更新所述第一参数,并根据更新后的所述第一参数获取更新后的所述第一有向无环图DAG请求索引,以完成所述第一有向无环图DAG请求索引的更新;
根据更新后的所述第一有向无环图DAG请求索引获取更新后的所述第一有向无环图DAG请求索引对应的DAG数据,以完成DAG数据的更新,在更新后的所述第一参数和更新后的所述第一有向无环图DAG请求索引对应的DAG数据的基础上,继续执行更新流程,然后循环更新流程直至更新次数达到预设次数且获取目标DAG数据。
2.根据权利要求1所述的数据处理方法,其特征在于,所述获取所述第二有向无环图DAG请求索引对应的DAG数据,包括:
判断所述历史请求记录数据中所述第二有向无环图DAG请求索引对应的数据缓存位置是否存在DAG数据;
在所述第二有向无环图DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,等待返回所述第二有向无环图DAG请求索引对应的DAG数据;
在所述第二有向无环图DAG请求索引对应的数据缓存位置存在DAG数据的情况下,提取所述第二有向无环图DAG请求索引对应的数据缓存位置的DAG数据。
3.根据权利要求2所述的数据处理方法,其特征在于,还包括:
在所述第二有向无环图DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一有向无环图DAG请求索引对应的第一标识,并在获取到所述第二有向无环图DAG请求索引对应的DAG数据后将获取的DAG数据缓存至所述第二有向无环图DAG请求索引对应的数据缓存位置;
在所述第二有向无环图DAG请求索引对应的数据缓存位置存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一有向无环图DAG请求索引对应的第一标识;
其中,所述第一标识为所述第一有向无环图DAG请求索引的来源标识。
4.根据权利要求1所述的数据处理方法,其特征在于,前一次的更新结果为后一次的更新依据,所述预设次数的取值为小于或者等于63的正整数,在所述第一有向无环图DAG请求索引为所述数据处理芯片首次获取的有向无环图DAG请求索引时,所述第一参数为哈希计算种子值,所述哈希计算种子值基于目标头部哈希值和一随机数生成,所述目标头部哈希值为所述数据处理芯片对应的区块链的目标区块的头部哈希值,所述随机数的取值范围为0至264-1,所述目标DAG数据为所述数据处理芯片首次获取有向无环图DAG请求索引后经过63次有向无环图DAG请求索引更新确定的DAG数据。
5.根据权利要求1所述的数据处理方法,其特征在于,在获取目标DAG数据之后,还包括:
对所述目标DAG数据进行压缩处理生成字节数组,并基于所述字节数组获取数据结果;
比较所述数据结果和目标结果,并在所述数据结果小于所述目标结果时,确定所述数据结果为有效哈希值。
6.根据权利要求1所述的数据处理方法,其特征在于,多个所述第一有向无环图DAG请求索引并行获取,多个所述第一有向无环图DAG请求索引对应于多个不同的随机数;
在针对多个所述第一有向无环图DAG请求索引,获取每个所述第一有向无环图DAG请求索引对应的DAG数据时,还包括:
针对多个所述第一有向无环图DAG请求索引,并行查找每个所述第一有向无环图DAG请求索引分别对应的DAG数据。
7.一种数据处理芯片,其特征在于,包括:
第一计算模块,用于获取第一有向无环图DAG请求索引;
处理模块,用于在所述第一有向无环图DAG请求索引与历史请求记录数据中的第二有向无环图DAG请求索引匹配的情况下,获取所述第二有向无环图DAG请求索引对应的DAG数据,将所述第二有向无环图DAG请求索引对应的DAG数据确定为所述第一有向无环图DAG请求索引对应的DAG数据;在所述第一有向无环图DAG请求索引与所述历史请求记录数据中的任一有向无环图DAG请求索引均不匹配的情况下,向存储器发送与所述第一有向无环图DAG请求索引对应的数据请求,接收所述存储器反馈的对应的DAG数据并缓存;
在所述处理模块获取所述第一有向无环图DAG请求索引对应的DAG数据之后,所述第一计算模块还用于:根据所述第一有向无环图DAG请求索引对应的DAG数据和所述第一有向无环图DAG请求索引对应的第一参数,更新所述第一参数,并根据更新后的所述第一参数获取更新后的所述第一有向无环图DAG请求索引,以完成所述第一有向无环图DAG请求索引的更新;
所述处理模块还用于:根据更新后的所述第一有向无环图DAG请求索引获取更新后的所述第一有向无环图DAG请求索引对应的DAG数据,以完成DAG数据的更新;
所述第一计算模块、所述处理模块还用于:在更新后的所述第一参数和更新后的所述第一有向无环图DAG请求索引对应的DAG数据的基础上,继续执行更新流程,然后循环更新流程直至更新次数达到预设次数且获取目标DAG数据。
8.根据权利要求7所述的数据处理芯片,其特征在于,所述处理模块包括:
判断子模块,用于判断所述历史请求记录数据中所述第二有向无环图DAG请求索引对应的数据缓存位置是否存在DAG数据;
第一处理子模块,用于在所述第二有向无环图DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,等待返回所述第二有向无环图DAG请求索引对应的DAG数据;
第二处理子模块,用于在所述第二有向无环图DAG请求索引对应的数据缓存位置存在DAG数据的情况下,提取所述第二有向无环图DAG请求索引对应的数据缓存位置的DAG数据。
9.根据权利要求8所述的数据处理芯片,其特征在于,所述处理模块还包括:
更新缓存子模块,用于在所述第二有向无环图DAG请求索引对应的数据缓存位置不存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一有向无环图DAG请求索引对应的第一标识,并在获取到所述第二有向无环图DAG请求索引对应的DAG数据后将获取的DAG数据缓存至所述第二有向无环图DAG请求索引对应的数据缓存位置;
更新子模块,用于在所述第二有向无环图DAG请求索引对应的数据缓存位置存在DAG数据的情况下,在所述历史请求记录数据中添加所述第一有向无环图DAG请求索引对应的第一标识;
其中,所述第一标识为所述第一有向无环图DAG请求索引的来源标识。
10.根据权利要求7所述的数据处理芯片,其特征在于,前一次的更新结果为后一次的更新依据,所述预设次数的取值为小于或者等于63的正整数,在所述第一有向无环图DAG请求索引为所述数据处理芯片首次获取的有向无环图DAG请求索引时,所述第一参数为哈希计算种子值,所述哈希计算种子值基于目标头部哈希值和一随机数生成,所述目标头部哈希值为所述数据处理芯片对应的区块链的目标区块的头部哈希值,所述随机数的取值范围为0至264-1,所述目标DAG数据为所述数据处理芯片首次获取有向无环图DAG请求索引后经过63次有向无环图DAG请求索引更新确定的DAG数据。
11.根据权利要求7所述的数据处理芯片,其特征在于,还包括:
第二计算模块,用于在所述处理模块获取目标DAG数据之后,对所述目标DAG数据进行压缩处理生成字节数组,并基于所述字节数组获取数据结果;比较所述数据结果和目标结果,并在所述数据结果小于所述目标结果时,确定所述数据结果为有效哈希值。
12.根据权利要求7所述的数据处理芯片,其特征在于,所述第一计算模块包括多个第一计算子模块,多个所述第一计算子模块并行获取多个所述第一有向无环图DAG请求索引,多个所述第一有向无环图DAG请求索引对应于多个不同的随机数;
所述处理模块还用于:
针对多个所述第一有向无环图DAG请求索引,并行查找每个所述第一有向无环图DAG请求索引分别对应的DAG数据。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110595361.5A CN113485949B (zh) | 2021-05-28 | 2021-05-28 | 数据处理方法、芯片及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110595361.5A CN113485949B (zh) | 2021-05-28 | 2021-05-28 | 数据处理方法、芯片及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113485949A CN113485949A (zh) | 2021-10-08 |
CN113485949B true CN113485949B (zh) | 2023-06-20 |
Family
ID=77933683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110595361.5A Active CN113485949B (zh) | 2021-05-28 | 2021-05-28 | 数据处理方法、芯片及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113485949B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101421729A (zh) * | 2006-03-03 | 2009-04-29 | 奥多比公司 | 有效表示和搜索数据库中的有向无环图结构的***和方法 |
CN101996139A (zh) * | 2009-08-28 | 2011-03-30 | 百度在线网络技术(北京)有限公司 | 数据匹配方法和数据匹配装置 |
CN105046162A (zh) * | 2014-03-12 | 2015-11-11 | 阿普赛尔有限公司 | 在内容可寻址存储***中维护并使用子对父映射的缓存 |
CN108292323A (zh) * | 2016-01-08 | 2018-07-17 | 微软技术许可有限责任公司 | 使用数据源的元数据的数据库操作 |
CN109857924A (zh) * | 2019-02-28 | 2019-06-07 | 重庆科技学院 | 一种大数据分析监察信息处理***及方法 |
CN110276713A (zh) * | 2019-05-06 | 2019-09-24 | 中国科学院计算机网络信息中心 | 一种面向遥感影像数据的高效缓存方法及*** |
CN111090628A (zh) * | 2019-12-20 | 2020-05-01 | 上海米哈游网络科技股份有限公司 | 一种数据处理方法、装置、存储介质及电子设备 |
CN111143371A (zh) * | 2019-12-27 | 2020-05-12 | ***股份有限公司 | 数据查询方法、装置、设备、***及介质 |
CN112559452A (zh) * | 2020-12-11 | 2021-03-26 | 北京云宽志业网络技术有限公司 | 数据去重处理方法、装置、设备及存储介质 |
CN112765271A (zh) * | 2020-12-31 | 2021-05-07 | 杭州趣链科技有限公司 | 区块链交易索引的存储方法、装置、计算机设备及介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7725437B2 (en) * | 2007-07-31 | 2010-05-25 | Hewlett-Packard Development Company, L.P. | Providing an index for a data store |
US8862625B2 (en) * | 2008-04-07 | 2014-10-14 | Teradata Us, Inc. | Accessing data in a column store database based on hardware compatible indexing and replicated reordered columns |
-
2021
- 2021-05-28 CN CN202110595361.5A patent/CN113485949B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101421729A (zh) * | 2006-03-03 | 2009-04-29 | 奥多比公司 | 有效表示和搜索数据库中的有向无环图结构的***和方法 |
CN101996139A (zh) * | 2009-08-28 | 2011-03-30 | 百度在线网络技术(北京)有限公司 | 数据匹配方法和数据匹配装置 |
CN105046162A (zh) * | 2014-03-12 | 2015-11-11 | 阿普赛尔有限公司 | 在内容可寻址存储***中维护并使用子对父映射的缓存 |
CN108292323A (zh) * | 2016-01-08 | 2018-07-17 | 微软技术许可有限责任公司 | 使用数据源的元数据的数据库操作 |
CN109857924A (zh) * | 2019-02-28 | 2019-06-07 | 重庆科技学院 | 一种大数据分析监察信息处理***及方法 |
CN110276713A (zh) * | 2019-05-06 | 2019-09-24 | 中国科学院计算机网络信息中心 | 一种面向遥感影像数据的高效缓存方法及*** |
CN111090628A (zh) * | 2019-12-20 | 2020-05-01 | 上海米哈游网络科技股份有限公司 | 一种数据处理方法、装置、存储介质及电子设备 |
CN111143371A (zh) * | 2019-12-27 | 2020-05-12 | ***股份有限公司 | 数据查询方法、装置、设备、***及介质 |
CN112559452A (zh) * | 2020-12-11 | 2021-03-26 | 北京云宽志业网络技术有限公司 | 数据去重处理方法、装置、设备及存储介质 |
CN112765271A (zh) * | 2020-12-31 | 2021-05-07 | 杭州趣链科技有限公司 | 区块链交易索引的存储方法、装置、计算机设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113485949A (zh) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018099107A1 (zh) | 一种哈希表管理的方法和装置、计算机存储介质 | |
US10938961B1 (en) | Systems and methods for data deduplication by generating similarity metrics using sketch computation | |
US9201949B2 (en) | Index searching using a bloom filter | |
US11347787B2 (en) | Image retrieval method and apparatus, system, server, and storage medium | |
CN111224793B (zh) | 数据存储方法、装置、计算机设备及可读存储介质 | |
CN111247518B (zh) | 用于数据库分片的方法和*** | |
CN111971931B (zh) | 在区块链网络中验证交易的方法以及构成该网络的节点 | |
CN107567621B (zh) | 用于执行数字搜索的方法、***和计算机程序产品 | |
EP2087418A1 (en) | Methods and systems for data management using multiple selection criteria | |
CN113767377A (zh) | 针对分布式存储***中的变化检测的动态散列函数组合 | |
CN113767390A (zh) | 用于分布式存储***中的改变检测的属性分组 | |
CN109213774B (zh) | 数据的存储方法及装置、存储介质、终端 | |
US20220156233A1 (en) | Systems and methods for sketch computation | |
WO2021127245A1 (en) | Systems and methods for sketch computation | |
US20210191640A1 (en) | Systems and methods for data segment processing | |
CN111209341A (zh) | 区块链的数据存储方法、装置、设备及介质 | |
CN113485949B (zh) | 数据处理方法、芯片及计算机可读存储介质 | |
CN115292737B (zh) | 一种多关键词模糊搜索加密方法、***及电子设备 | |
CN109213972B (zh) | 确定文档相似度的方法、装置、设备和计算机存储介质 | |
CN115145954A (zh) | 一种数据查询方法、数据存储方法及装置 | |
CN112100446B (zh) | 搜索方法、可读存储介质和电子设备 | |
US12013830B2 (en) | System and method using bloom filters to improve system reliability | |
US20220188339A1 (en) | Network environment synchronization apparatus and method | |
CN112860712B (zh) | 一种基于区块链的交易数据库构建方法、***及电子设备 | |
US20220392578A1 (en) | Apparatus and method for genome sequence alignment acceleration |
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 |