CN111078723A - 一种区块链浏览器的数据处理方法及装置 - Google Patents
一种区块链浏览器的数据处理方法及装置 Download PDFInfo
- Publication number
- CN111078723A CN111078723A CN201911199806.7A CN201911199806A CN111078723A CN 111078723 A CN111078723 A CN 111078723A CN 201911199806 A CN201911199806 A CN 201911199806A CN 111078723 A CN111078723 A CN 111078723A
- Authority
- CN
- China
- Prior art keywords
- data
- type
- classified
- class
- storing
- 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.)
- Granted
Links
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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/244—Grouping and aggregation
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书提供一种区块链浏览器的数据处理方法及装置,将区块链数据按照预设数据类型进行分类,根据分类后的数据的类型进行分别处理、分开存储,针对不同类型的数据有不同的数据处理方法,同时,将不同类型的数据存储在不同的数据库中。避免了将区块链的数据进行统一处理时,占用较大的存储空间,在数据量比较大、交易频率比较高时,能够减少区块链浏览器的数据存储空间的占用。
Description
技术领域
本说明书属于计算机技术领域,尤其涉及一种区块链浏览器的数据处理方法及装置。
背景技术
随着计算机技术的发展,区块链的应用场景越来越多,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链浏览器是获取区块链线上数据和状态必不可少的装置,区块链浏览器可以获取区块链系统中的数据如交易数据,并将获取到的数据进行统一存储,以备后期进行数据查询、聚合查询等操作。
当区块链数据量比较大时,区块链浏览器进行数据存储和数据查询的数据量也会相应的增加,对数据库的性能、存储空间以及数据查询时的响应速度就会带来一定的影响。
发明内容
本说明书实施例的目的在于提供一种区块链浏览器的数据处理方法及装置,减少了区块链浏览器的数据空间占用,提高了数据浏览器的性能。
一方面本说明书实施例提供了一种区块链浏览器的数据处理方法,包括:
获取区块链系统中的待处理数据;
按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据;
根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
另一方面,本说明书提供了一种区块链浏览器的数据处理装置,包括:
数据获取模块,用于获取区块链系统中的待处理数据;
数据分类模块,用于按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据;
数据存储模块,用于根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
还一方面,本说明书提供了一种区块链浏览器的数据处理设备,包括:至少一个处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述区块链浏览器的数据处理方法。
又一方面,本说明书实施例提供了一种区块链浏览器,包括:数据监听模块、数据存储模块、数据查询模块,其中:
所述数据监听模块用于监听区块链系统;
所述数据存储模块用于在所述数据监听模块监听到所述区块链系统中发生交易时,获取所述交易数据,并采用上述第一方面所述的区块链浏览器对区块链数据进行分类存储的方法对获取到的交易数据进行分数据类型存储;
所述数据查询模块用于接收用户的数据查询请求,并根据数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回给所述用户。
本说明书提供的区块链浏览器的数据处理方法、装置、处理设备、问答机器人,将区块链数据按照预设数据类型进行分类,根据分类后的数据的类型进行分别处理,分开存储,针对不同类型的数据有不同的数据处理方法,同时,将不同类型的数据存储在不同的数据库中。避免了将区块链的数据进行统一处理时,占用较大的存储空间,在数据量比较大、交易频率比较高时,能够减少区块链浏览器的数据存储空间的占用。并且,不同类别的数据分开存储,方便用户查询,确保了区块链浏览器的低延迟查询和聚合查询的能力。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书一个实施例中区块链浏览器的数据处理方法的流程示意图;
图2是本说明书一个实施例中区块链浏览器中数据查询的方法流程示意图;
图3是本说明书又一个实施例中区块链浏览器中数据处理的流程示意图;
图4是本说明书提供的区块链浏览器的数据处理装置一个实施例的模块结构示意图;
图5是本说明书又一个实施例中区块链浏览器的数据处理装置的结构示意图;
图6是本说明书又一个实施例中区块链浏览器结构示意图;
图7是本说明书一个实施例中区块链浏览器的数据处理服务器的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
区块链技术是构建在点对点(P2P)网络上,利用链式数据结构来验证与存储数据,利用分布式节点共识算法来生成和更新数据,利用密码学的方式保证数据传输和访问的安全,利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。区块链浏览器可以对区块链链上数据进行长时间旁路监听,并提供离线历史数据、聚合查询等功能,可以实时记录或事后获取区块链线上数据和状态。
本说明书实施例提供一种区块链浏览器的数据处理方法,可以应用在区块链浏览器中,也可以应用数据源类似区块链这种有序的链式结构的数据处理设备中。本说明书实施例中通过将区块链上的数据按照预设数据类型进行分类,对不同类型的数据进行不同的处理,存储在不同的数据库中,提高了数据库的性能,减少了数据空间占用、保证低延迟查询或聚合查询能力。
本说明书中区块链浏览器的数据处理方法可以应用在客户端或服务器中,客户端可以是智能手机、平板电脑、智能可穿戴设备(智能手表、虚拟现实眼镜、虚拟现实头盔等)、智能车载设备等电子设备。
图1是本说明书一个实施例中区块链浏览器的数据处理方法的流程示意图,如图1所示,本说明书一个实施例中提供的区块链浏览器的数据处理方法可以包括:
步骤102、获取区块链系统中的待处理数据。
在具体的实施过程中,区块链系统可以理解为应用区块链技术的数据处理设备,区块链浏览器可以对区块链系统进行监听,以获取到区块链上的数据。待处理数据可以理解为区块链系统中的交易数据或数据状态或区块链系统中的区块,一个区块中可以包括多个交易数据。区块链浏览器可以对区块链系统进行实时监听,当监听到区块链上发生交易时,获取区块或交易数据,若获取到的是区块链系统中的区块,可以对区块进行解析,以获取到区块中的交易数据。
步骤104、按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据。
本说明书一些实施例中,可以将区块链上的数据划分为预设数据类型,如:可以将数据划分为序列类数据、数据类数据、聚合类数据。序列类数据可以表示有一定序列关系的相关数据,此类数据通常具有连续的序号,如:区块链的区块序号,交易序号等。序列类数据可以用于向用户提供连续范围的数据,此类数据通常仅包含较少的元信息(相较数据类数据),更多被作为索引使用。数据类数据可以表示交易数据中比较完整的数据,具有较完整的数据信息,每一个完整的独立数据都是这类数据的一个实例。数据类数据可以用于向用户提供完成的数据,而不需要进行更多的查询类操作。聚合类数据可以表示具有一定相关性的数据类数据,可以将聚合类数据中的数据类数据进行处理后,根据每个实例的相关性将数据进行聚合,产生新的数据。聚合类数据可以用于向用户提供聚合处理后的数据,用户可以方便的通过此类数据获取到某一/些维度的数据。
在具体的实施过程中,可以根据获取到的待处理数据的特性如:是否具有序列类的序号、是否有一定的相关性等,按照预设数据类型将待处理数据进行分类。可以将待处理数据中属于序列类数据的数据划分到序列类数据的集合中,将待处理数据中属于数据类数据的数据划分到数据类数据的集合中,待处理数据中属于聚合类数据的数据划分到聚合类数据的集合中。如:将一笔交易数据中带有区块链序号、交易序号的数据作为序列类数据划分到序列类数据集合中,将待处理数据中比较完整的数据信息如:交易原始数据作为数据类数据划分到数据类数据的集合中,将待处理数据中有相关性的数据类数据如:相邻10个区块中的交易原始数据或同一天的交易原始数据作为聚合类数据划分到聚合类数据的集合中,以便后续对数据进行聚合,方便用户查询、理解。
或者也可以将待处理数据中不同类型的数据打上不同的数据标签,以实现对待处理数据的分类,方便后续数据处理。
本说明书一些实施例中,可以采用下述方式对待处理数据进行分类:
将所述待处理数据中具有序列关系的数据划分为序列类数据;
将所述待处理数据中具有完整信息的数据划分为数据类数据;
将所述待处理数据中具有相关性关系的数据类数据划分为聚合类数据。
在具体的实施过程中,可以将待处理数据中具有序列关系的数据划分为序列类数据,例如:待处理数据为:id(Identity document,身份标识)为1的a有3个苹果,id为2的b有5个苹果,这两条数据中有id这个不重复的序列,那么这两条数据可以认为是一个序列类数据。将待处理数据中具有完整信息的数据划分为数据类数据,数据类数据可以是任意的数据类,取决于用户所使用的应用/服务,比如json、文件、区块、交易这些都属于数据类数据。上述示例中id为1的a有3个苹果,id为2的b有5个苹果,这两条数据可以表示完整的数据信息,也可以认为是一个数据类数据。聚合类数据可以为具有一定相关性关系的数据类数据,如:可以将一天的交易数据作为聚合类数据,以便后续统计一天的交易额。上述示例中id为1的a有3个苹果,id为2的b有5个苹果,这两条数据都是关于苹果的,也可以作为聚合类数据,后续可以采用不同的计算方法对这两条数据进行聚合处理,获得不同的数据信息。如:采用sum计算,获得总共有8个苹果,或者采用count计算获得一共有两个人有苹果。
本说明书实施例基于数据的特性,将数据分为序列类、数据类、聚合类,为后续数据的分类存储和分类处理提供了数据基础,降低了区块浏览器的数据存储空间的占用,同时提高了区块链浏览器的查询能力。
步骤106、根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
在具体的实施过程中,将区块链中的待处理数据进行类别划分后,可以根据各个数据对应的数据类型,对不同类型的数据做不同的处理,如:可以将不同的类型的数据存储到不同的数据库中,也可以对不同类型的数据做不同的数据处理,如:聚合类数据可以按照不同的计算方式进行聚合处理后,获得新的数据,将聚合后的数据存储以便用户查询。
本说明书实施例将区块链数据按照预设数据类型进行分类,根据分类后的数据的类型进行分别处理,分开存储,针对不同类型的数据有不同的数据处理方法,同时,将不同类型的数据存储在不同的数据库中。避免了将区块链的数据进行统一处理时,占用较大的存储空间,在数据量比较大、交易频率比较高时,能够减少区块链浏览器的数据存储空间的占用。并且,不同类别的数据分开存储,方便用户查询,确保了区块链浏览器的低延迟查询和聚合查询的能力。
在上述实施例的基础上,本说明书一些实施例中,所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
将数据类型为序列类数据的分类后数据存储到键值存储数据库中。
在具体的实施过程中,对区块链数据进行分类后,对于序列类数据,可以存储在键值存储数据库中即KV(Key-Value)型数据库中。键值存储数据库可以理解为一种NoSQL(非关系型数据库)模型,其数据按照键值对的形式进行组织、索引和存储。在进行数据存储时,序列序号可以作为关键词Key的一部分,数据的关键元数据可以作为数据取值Value。如:上述示例中,id为1的a有3个苹果这条序列类数据,可以将id=1作为Key的一部分,将a有3个苹果或者数值3作为这条数据的Value,将这条数据以此格式存储在KV型数据库中。存储的方式可以是持久化存储,持久化可以理解为把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在数据库中,或者存储在磁盘文件中、XML数据文件中等等。持久化存储可以理解为将程序数据在持久状态和瞬时状态间转换的机制。
本说明书实施例,将区块链中的数据中具有序列关系的数据作为序列类数据,存储在KV型数据库中,占用了更少的存储空间,同时通过序列化的序号Key值可以更加方便用户查询,提高了查询速度,降低了区块链浏览器的数据查询延迟。
在上述实施例的基础上,本说明书一些实施例中,所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
对于数据类型为数据类数据的分类后数据,不进行存储。
在具体的实施过程中,对区块链数据进行分类后,对于数据类数据可以不进行存储和加工,数据类数据一般比较大,能够表示比较完整的数据信息,不需要更多的查询类操作,可以不进行存储或加工。当用户需要使用或查询数据类数据时,区块链浏览器可以根据用户的请求向区块链系统请求获取该数据类数据,并返回给用户。例如:对于某一区块中一笔交易的完整信息或某一区块的全部数据,可以不进行存储,当用户需要查询该笔交易的完整信息时,可以从区块链系统中请求获取该交易信息的文件。
本说明书实施例对于数据类数据可以不进行存储,按需向区块链系统请求数据,不占用区块链浏览器的存储空间,提高了区块链浏览器的性能。
在上述实施例的基础上,本说明书一些实施例中,所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
对于数据类型为数据类数据的分类后数据,判断所述数据类型为数据类数据的分类后数据是否满足预设缓存条件,若满足,则将所述数据类型为数据类数据的分类后数据缓存到指定的数据库中,若不满足,则不存储所述数据类型为数据类数据的分类后数据。
在具体的实施过程中,对区块链数据进行分类后,对于数据类数据可以有选择的做有限的缓存。可以根据实际使用需要,预先设置缓存数据类数据的缓存条件,当获取到的数据类数据满足缓存条件时,则进行缓存,若不满足,则不进行存储。缓存的数据库可以根据实际需要进行选择,如:可以单独设置一个用于缓存数据类数据的数据库,本说明书实施例不作具体限定。预设缓存条件的具体设置可以根据实际需要而定,本说明书实施例不作具体限定,如:可以将占用缓存空间的大小作为缓存条件,可以缓存数据占用空间小于预设阈值的数据类数据,如:缓存占用存储空间值小于3兆的数据类数据,对于大于等于3兆的数据类数据就不进行存储和加工。也可以根据实际需要,设置其他的缓存条件,如:数据发生时间、数据查询频率等,本说明书不作具体限定。如:只缓存当前时间前预设时间范围内的数据类数据,随着时间的不断推移,不断更新数据类数据的缓存信息。也可以根据用户的查询记录、使用记录等,确定出各个数据类数据的查询频率或使用频率,将查询频率或使用频率大于预设频率的数据类数据进行缓存,查询频率或使用频率小于等于预设频率的数据类数据不作存储和加工。如:根据用户的历史查询记录,用户对于某一类型的数据类数据查询频率比较高,则在获取到的待处理数据中有该类型的数据类数据时,将该数据类数据进行缓存。
本说明书实施例中,对于区块链中的数据类数据,可以有选择的进行部分缓存,在降低数据占用存储空间的基础上,缓存了满足缓存条件的数据类数据,以满足不同用户需求,提高用户体验。
在上述实施例的基础上,本说明书一些实施例中,所述聚合类数据是具有相关性的数据类数据;
所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
对于数据类型为聚合类数据的分类后数据,则根据所述数据类型为聚合类数据的分类后数据中数据类数据之间的相关性,将所述数据类数据进行聚合,将聚合后的数据持久化存储在关系型数据库中。
在具体的实施过程中,聚合类数据可以包括具有一定相关性的数据类数据,在对获取到的区块链数据进行分类后,对于分类后属于聚合类数据的数据,可以根据聚合类数据中的数据类数据之间的相关性,对聚合类数据中的数据类数据进行聚合,获得新的数据,并将聚合后的数据存储到关系性数据库中。关系型数据库可以理解为由多张能互相联接的二维行列表格组成的数据库。
例如:上述实施例中聚合类数据中包括两条数据:id为1的a有3个苹果,id为2的b有5个苹果。可以采用不同的计算方法对这两条数据进行聚合处理,即采用不同的聚合维度对聚合类数据中的数据类数据进行聚合,可以获得不同的数据信息。聚合操作即对聚合类数据中的数据类数据进行什么方式或什么维度的聚合运算,可以根据实际需要进行选择,本说明书实施例不作具体限定,同一个数据可以进行不同维度的聚合操作。如:采用sum计算,获得总共有8个苹果,或者采用count的计算获得一共有两个人有苹果。又如:一个聚合类数据中有当前时间前一个月的交易数据,可以对这一个月的交易数据的交易金额进行聚合处理,获得一个月的交易总额,也可以对交易商品类型进行聚合,获得一个月内交易的商品类型有哪些。
本说明书实施例在对聚合类数据进行聚合处理时,可以预先设置聚合周期,即每隔一定的聚合周期对聚合类数据进行聚合操作,在周期内获取到区块链上的待处理数据后,可以将属于该聚合类数据的数据类数据均划分到该聚合类数据的集合中,到达周期后,则对属于该聚合类数据的数据进行聚合处理。例如:若聚合周期为1周,在这一周内不断获取区块链上的数据,并对获取到的数据进行分类,将属于聚合类数据的数据划分到该聚合类数据集合中,达到聚合周期后,则对该一周内获取到的聚合类数据按照一定的聚合算法进行聚合处理。
本说明书一些实施例中,在对聚合类数据中的数据类数据进行聚合处理完成后,可以将聚合时使用的数据丢弃(可以理解为删除聚合时使用的原始数据),以避免占用数据存储空间。
本说明书实施例,对区块链中具有相关性的数据进行分类聚合处理,将聚合后的数据存储在关系型数据库中,向用户提供更直观、更易于理解的数据,提高了聚合的效率和持久化速度,同时占用了更小的数据存储空间,并且降低了数据查询的延迟时间。
本说明书实施例主要将区块链数据分为三类,并针对不同类型的数据进行了不同的处理方式,对于三种类型的数据的处理方式以及对应的优缺点可以参考如下:
1、序列类数据
a)、使用KV型数据库;
b)、将序列序号作为Key的一部分;
c)、Value部分主要记录关键元数据;
d)、优势:更少的存储空间、更快的顺序范围查询。
2、数据类数据
a)、不进行数据的存储和加工;
b)、按需向区块链系统请求数据;
c)、可选的,为提高性能做有限的缓存;
d)、优势:无存储空间占用。
3、聚合类数据
a)、使用关系型数据库;
b)、按聚合维度对每个数据类数据进行聚合并持久化,同一数据可进行多维度聚合;
c)、对聚合时所使用的数据进行丢弃;
d)、优势:更快的聚合、更快的持久化速度、更小的存储空间占用。
图2是本说明书一个实施例中区块链浏览器中数据查询的方法流程示意图,如图2所示,本说明书实施例中,区块链浏览器在将区块链数据进行分类处理、分类存储后,可以采用下述方法进行数据查询:
步骤201、接收数据查询请求。
用户可以向区块浏览器发送数据查询请求,请求获取区块链中的某些数据,如:链的信息:一般是这条区块链的总体性概述,比如当前的区块高度、市值、当前算力、24小时交易额、地址数等等。还可以查询区块和交易信息如:某个区块打包的时间、手续费、具体的交易数据等等。还可以查询账户里的余额以及历史交易信息。区块链浏览器接收到数据查询请求后,需要根据用户的请求内容返回对应的数据。
步骤202、获取所述数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回。
在具体的实施过程中,区块链浏览器接收到用户发送的数据查询请求后,可以获取用户请求查询的数据的数据类型,如:若用户请求查询区块链中24小时交易额,则可以认为该请求查询的数据为聚合类数据,若用户请求查询的是某笔交易的交易序号,则可以认为该请求查询的数据为序列类数据,若用户请求查询的是某笔交易的详细信息,则可以认为该请求查询的数据为数据类数据。可以根据用户请求查询的数据类型从对应的数据库中返回对应的数据给用户,如:若用户请求查询的是序列类数据,则从存储序列类数据的KV型数据库中返回对应的数据给用户,若用户请求查询的是聚合类数据,则从存储聚合类数据的关系型数据库中返回对应的数据给用户。
本说明书一些实施例中,所述方法还包括:
若请求查询的数据的数据类型为数据类数据,则向区块链系统发送获取数据请求,从区块链系统中获取所述请求查询的数据,并返回。
在具体的实施过程中,区块链浏览器在进行数据存储时,对于数据类数据一般不进行存储,当用户请求查询的是数据类数据时,则区块链浏览器可以向区块链系统发送获取数据请求,请求从区块链系统中获取用户请求查询的数据,并返回给用户。当然,也可以在用户请求查询的是数据类数据时,先在存储数据类数据的数据库中查询是否有该数据,若没有再向区块链系统发送获取数据请求。
本说明书实施例,在对区块链数据进行数据类型的划分,并进行分类处理和分类存储的基础上,当用户请求查询区块链数据时,基于分类存储,可以进行分类查询,提高了区块链浏览器数据查询和聚合查询的性能,提高了数据层查询的效率,减少了数据查询时的延迟时间。
图3是本说明书又一个实施例中区块链浏览器中数据处理的流程示意图,如图3所示,本说明书实施例中区块链浏览器可以利用监听器对区块链系统可以进行旁路监听,当区块链链上发生交易时获取到块/交易数据,对数据的分类存储和聚合,经过分类处理后将数据进行持久化存储到不同的数据库中。在用户请求时,根据请求的数据类型,从对应的数据库中将持久化数据返回给用户以供用户使用。
在综合以上针对数据类别的优化措施后,可以获取显著的存储空间降低、查询/聚合查询性能大幅提高。避免了在高并发、大交易量时导致存储空间巨大、性能下降严重,造成额外的性能和存储负担的问题。
本说明书中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参考即可,每个实施例重点说明的都是与其他实施例的不同之处。相关之处参考方法实施例的部分说明即可。
基于上述所述的区块链浏览器的数据处理方法,本说明书一个或多个实施例还提供一种区块链浏览器的数据处理装置。所述的装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本说明书实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明书实施例具体的装置的实施可以参考前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
具体地,图4是本说明书提供的区块链浏览器的数据处理装置一个实施例的模块结构示意图,如图4所示,本说明书中提供的区块链浏览器的数据处理装置可以包括:数据获取模块41、数据分类模块42、数据存储模块43,其中:
数据获取模块41,可以用于获取区块链系统中的待处理数据;
数据分类模块42,可以用于按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据;
数据存储模块43,可以用于根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
本说明书实施例提供的区块链浏览器的数据处理装置,将区块链数据按照预设数据类型进行分类,根据分类后的数据的类型进行分别处理,分开存储,针对不同类型的数据有不同的数据处理方法,同时,将不同类型的数据存储在不同的数据库中。在数据量比较大、交易频率比较高时,能够减少区块链浏览器的数据存储空间的占用,并且,不同类别的数据分开存储,方便用户查询,确保了区块链浏览器的低延迟查询和聚合查询的能力。
在上述实施例的基础上,本说明书一些实施例中,所述数据分类模块具体用于:
将所述待处理数据中具有序列关系的数据划分为序列类数据;
将所述待处理数据中具有完整信息的数据划分为数据类数据;
将所述待处理数据中具有相关性关系的数据类数据划分为聚合类数据。
本说明书实施例,基于数据的特性,将数据分为序列类、数据类、聚合类,为后续数据的分类存储和分类处理提供了数据基础,降低了区块浏览器的数据存储空间的占用,同时提高了区块链浏览器的查询能力。
在上述实施例的基础上,本说明书一些实施例中,所述数据存储模块具体用于:
将数据类型为序列类数据的分类后数据存储到键值存储数据库中。
本说明书实施例,将区块链中的数据中具有序列关系的数据作为序列类数据,存储在KV型数据库中,占用了更少的存储空间,同时通过序列化的序号Key值可以更加方便用户查询,降低了区块链浏览器的数据查询延迟。
在上述实施例的基础上,本说明书一些实施例中,所述数据存储模块具体用于:
对于数据类型为数据类数据的分类后数据,不进行存储。
本说明书实施例,对于数据类数据可以不进行存储,按需向区块链系统请求数据,不占用区块链浏览器的存储空间,提高了区块链浏览器的性能。
在上述实施例的基础上,本说明书一些实施例中,所述数据存储模块具体用于:
对于数据类型为数据类数据的分类后数据,判断所述数据类型为数据类数据的分类后数据是否满足预设缓存条件,若满足,则将所述数据类型为数据类数据的分类后数据缓存到指定的数据库中,若不满足,则不存储所述数据类型为数据类数据的分类后数据。
本说明书实施例,对于区块链中的数据类数据,可以有选择的进行部分缓存,在降低数据占用存储空间的基础上,缓存了满足缓存条件的数据类数据,以满足不同用户需求,提高用户体验。
在上述实施例的基础上,本说明书一些实施例中,所述聚合类数据是具有相关性的数据类数据;所述数据存储模块具体用于:
对于数据类型为聚合类数据的分类后数据,则根据所述数据类型为聚合类数据的分类后数据中数据类数据之间的相关性,将所述数据类数据进行聚合,将聚合后的数据持久化存储在关系型数据库中。
本说明书实施例,对区块链中具有相关性的数据进行分类聚合处理,将聚合后的数据存储在关系型数据库中,向用户提供更直观、更易于理解的数据,提高了聚合的效率和持久化速度,同时占用了更小的数据存储空间,并且降低了数据查询的延迟时间。
在上述实施例的基础上,本说明书一些实施例中,所述数据存储模块具体用于:将聚合时使用的数据类数据丢弃。
本说明书实施例,对聚合类数据中的数据类数据进行聚合处理完成后,可以将聚合时使用的数据丢弃,以避免占用数据存储空间。
图5是本说明书又一个实施例中区块链浏览器的数据处理装置的结构示意图,如图5所示,在上述实施例的基础上,所述装置还包括数据查询模块51用于:
接收数据查询请求;
获取所述数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回。
本说明书实施例,在对区块链数据进行数据类型的划分,并进行分类处理和分类存储的基础上,当用户请求查询区块链数据时,基于分类存储,可以进行分类查询,提高了区块链浏览器数据查询和聚合查询的性能,提高了数据层查询的效率,减少了数据查询时的延迟时间。
在上述实施例的基础上,所述数据查询模块具体用于:
若请求查询的数据的数据类型为数据类数据,则向区块链系统发送获取数据请求,从区块链系统中获取所述请求查询的数据,并返回。
本说明书实施例,对于数据类数据可以不进行存储,按需向区块链系统请求数据,不占用区块链浏览器的存储空间,提高了区块链浏览器的性能。
需要说明的,上述所述的装置根据方法实施例的描述还可以包括其他的实施方式。具体的实现方式可以参照上述对应的方法实施例的描述,在此不作一一赘述。
本说明书实施例还提供一种区块链浏览器的数据处理设备,包括:至少一个处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述实施例中区块链浏览器的数据处理方法,如:
获取区块链系统中的待处理数据;
按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据;
根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
图6是本说明书又一个实施例中区块链浏览器结构示意图,如图6所示,本说明书实施例还提供一种区块链浏览器,包括:数据监听模块61、数据存储模块62、数据查询模块63,其中:
所述数据监听模块61用于监听区块链系统;
所述数据存储模块62用于在所述数据监听模块监听到所述区块链系统中发生交易时,获取所述交易数据,并采用上述实施例中区块链浏览器对区块链中的数据进行分类存储的方法对获取到的交易数据进行分数据类型存储;
所述数据查询模块63用于接收用户的数据查询请求,并根据数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回给所述用户。
需要说明的,上述所述的处理设备和区块链浏览器,根据方法实施例的描述还可以包括其他的实施方式。具体的实现方式可以参照上述对应的方法实施例的描述,在此不作一一赘述。
本说明书提供的区块链浏览器的数据处理装置或处理设备或区块链浏览器,也可以应用在多种数据分析处理系统中。所述系统或装置或处理设备可以包括上述实施例中任意一个区块链浏览器的数据处理装置。所述的系统或装置或处理设备可以为单独的服务器,也可以包括使用了本说明书的一个或多个所述方法或一个或多个实施例装置的服务器集群、系统(包括分布式系统)、软件(应用)、实际操作装置、逻辑门电路装置、量子计算机等并结合必要的实施硬件的终端装置。所述核对差异数据的检测系统可以包括至少一个处理器以及存储计算机可执行指令的存储器,所述处理器执行所述指令时实现上述任意一个或者多个实施例中所述方法的步骤。
本说明书实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,图7是本说明书一个实施例中区块链浏览器的数据处理服务器的硬件结构框图,该服务器可以是上述实施例中的区块链浏览器的数据处理装置、用于问答机器人的输入提示设备或系统。如图7所示,服务器10可以包括一个或多个(图中仅示出一个)处理器100(处理器100可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器200、以及用于通信功能的传输模块300。本邻域普通技术人员可以理解,图7所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器10还可包括比图7中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如数据库或多级缓存、GPU,或者具有与图7所示不同的配置。
存储器200可用于存储应用软件的软件程序以及模块,如本说明书实施例中的区块链浏览器的数据处理方法对应的程序指令/模块,处理器100通过运行存储在存储器200内的软件程序以及模块,从而执行各种功能应用以及资源数据更新。存储器200可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器200可进一步包括相对于处理器100远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块300用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输模块300包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块300可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书提供的上述实施例所述的方法或装置可以通过计算机程序实现业务逻辑并记录在存储介质上,所述的存储介质可以计算机读取并执行,实现本说明书实施例所描述方案的效果。
所述存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。所述存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如RAM、ROM等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置如,CD或DVD。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。
本说明书实施例提供的上述区块链浏览器的数据处理方法或装置可以在计算机中由处理器执行相应的程序指令来实现,如使用windows操作系统的c++语言在PC端实现、linux系统实现,或其他例如使用android、iOS系统程序设计语言在智能终端实现,以及基于量子计算机的处理逻辑实现等。
需要说明的是说明书上述所述的装置、计算机存储介质、系统根据相关方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照对应方法实施例的描述,在此不作一一赘述。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参考即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参考方法实施例的部分说明即可。
本说明书实施例并不局限于必须是符合行业通信标准、标准计算机资源数据更新和数据存储规则或本说明书一个或多个实施例所描述的情况。某些行业标准或者使用自定义方式或实施例描述的实施基础上略加修改后的实施方案也可以实现上述实施例相同、等同或相近、或变形后可预料的实施效果。应用这些修改或变形后的数据获取、存储、判断、处理方式等获取的实施例,仍然可以属于本说明书实施例的可选实施方案范围之内。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
虽然本说明书一个或多个实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式资源数据更新环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
本发明是参照根据本发明实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程资源数据更新设备的处理器以产生一个机器,使得通过计算机或其他可编程资源数据更新设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程资源数据更新设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程资源数据更新设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储、石墨烯存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参考即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参考方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
以上所述仅为本说明书一个或多个实施例的实施例而已,并不用于限制本说明书一个或多个实施例。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在权利要求范围之内。
Claims (20)
1.一种区块链浏览器的数据处理方法,包括:
获取区块链系统中的待处理数据;
按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据;
根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
2.如权利要求1所述的方法,所述按照预设数据类型,将所述待处理数据进行分类,包括:
将所述待处理数据中具有序列关系的数据划分为序列类数据;
将所述待处理数据中具有完整信息的数据划分为数据类数据;
将所述待处理数据中具有相关性关系的数据类数据划分为聚合类数据。
3.如权利要求1所述的方法,所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
将数据类型为序列类数据的分类后数据存储到键值存储数据库中。
4.如权利要求1所述的方法,所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
对于数据类型为数据类数据的分类后数据,不进行存储。
5.如权利要求1所述的方法,所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
对于数据类型为数据类数据的分类后数据,判断所述数据类型为数据类数据的分类后数据是否满足预设缓存条件,若满足,则将所述数据类型为数据类数据的分类后数据缓存到指定的数据库中,若不满足,则不存储所述数据类型为数据类数据的分类后数据。
6.如权利要求1所述的方法,所述聚合类数据是具有相关性的数据类数据;
所述根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中,包括:
对于数据类型为聚合类数据的分类后数据,根据所述数据类型为聚合类数据的分类后数据中数据类数据之间的相关性,将所述数据类数据进行聚合,将聚合后的数据持久化存储在关系型数据库中。
7.如权利要求6所述的方法,所述方法还包括:
将聚合时使用的数据类数据丢弃。
8.如权利要求1所述的方法,所述方法还包括:
接收数据查询请求;
获取所述数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回。
9.如权利要求8所述的方法,所述方法还包括:
若请求查询的数据的数据类型为数据类数据,则向区块链系统发送获取数据请求,从区块链系统中获取所述请求查询的数据,并返回。
10.一种区块链浏览器的数据处理装置,包括:
数据获取模块,用于获取区块链系统中的待处理数据;
数据分类模块,用于按照预设数据类型,将所述待处理数据进行分类,其中所述预设数据类型包括:序列类数据、数据类数据、聚合类数据;
数据存储模块,用于根据分类后的数据对应的数据类型,将分类后的数据存储在对应的数据库中。
11.如权利要求10所述的装置,所述数据分类模块具体用于:
将所述待处理数据中具有序列关系的数据划分为序列类数据;
将所述待处理数据中具有完整信息的数据划分为数据类数据;
将所述待处理数据中具有相关性关系的数据类数据划分为聚合类数据。
12.如权利要求10所述的装置,所述数据存储模块具体用于:
将数据类型为序列类数据的分类后数据存储到键值存储数据库中。
13.如权利要求10所述的装置,所述数据存储模块具体用于:
对于数据类型为数据类数据的分类后数据,不进行存储。
14.如权利要求10所述的装置,所述数据存储模块具体用于:
对于数据类型为数据类数据的分类后数据,判断所述数据类型为数据类数据的分类后数据是否满足预设缓存条件,若满足,则将所述数据类型为数据类数据的分类后数据缓存到指定的数据库中,若不满足,则不存储所述数据类型为数据类数据的分类后数据。
15.如权利要求10所述的装置,所述聚合类数据是具有相关性的数据类数据;所述数据存储模块具体用于:
对于数据类型为聚合类数据的分类后数据,根据所述数据类型为聚合类数据的分类后数据中数据类数据之间的相关性,将所述数据类数据进行聚合,将聚合后的数据持久化存储在关系型数据库中。
16.如权利要求15所述的装置,所述数据存储模块具体用于:将聚合时使用的数据类数据丢弃。
17.如权利要求10所述的装置,所述装置还包括数据查询模块用于:
接收数据查询请求;
获取所述数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回。
18.如权利要求17所述的装置,所述数据查询模块具体用于:
若请求查询的数据的数据类型为数据类数据,则向区块链系统发送获取数据请求,从区块链系统中获取所述请求查询的数据,并返回。
19.一种区块链浏览器的数据处理设备,包括:至少一个处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1-9任一项所述的方法。
20.一种区块链浏览器,包括:数据监听模块、数据存储模块、数据查询模块,其中:
所述数据监听模块用于监听区块链系统;
所述数据存储模块用于在所述数据监听模块监听到所述区块链系统中发生交易时,获取所述交易数据,并采用上述权利要求1-7任一项所述的方法对获取到的交易数据进行分数据类型存储;
所述数据查询模块用于接收用户的数据查询请求,并根据数据查询请求中请求查询的数据的数据类型,在所述数据类型对应的数据库中查找对应的数据并返回给所述用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911199806.7A CN111078723B (zh) | 2019-11-29 | 2019-11-29 | 一种区块链浏览器的数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911199806.7A CN111078723B (zh) | 2019-11-29 | 2019-11-29 | 一种区块链浏览器的数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111078723A true CN111078723A (zh) | 2020-04-28 |
CN111078723B CN111078723B (zh) | 2021-08-13 |
Family
ID=70312067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911199806.7A Active CN111078723B (zh) | 2019-11-29 | 2019-11-29 | 一种区块链浏览器的数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111078723B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112597153A (zh) * | 2020-12-09 | 2021-04-02 | 杭州趣链科技有限公司 | 一种基于区块链的数据存储方法、装置及存储介质 |
CN113434503A (zh) * | 2021-06-25 | 2021-09-24 | 上海佩俪信息科技有限公司 | 一种区块链浏览方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203344A (zh) * | 2017-05-31 | 2017-09-26 | 郑州云海信息技术有限公司 | 一种数据存储方法及数据存储系统 |
CN107426170A (zh) * | 2017-05-24 | 2017-12-01 | 阿里巴巴集团控股有限公司 | 一种基于区块链的数据处理方法及设备 |
CN108647361A (zh) * | 2018-05-21 | 2018-10-12 | 中国工商银行股份有限公司 | 一种基于区块链的数据存储方法、装置及系统 |
CN109002527A (zh) * | 2018-07-13 | 2018-12-14 | 江苏开放大学(江苏城市职业学院) | 一种基于区块链的网络考试系统及利用其管理网络考试的方法 |
CN109447641A (zh) * | 2018-10-26 | 2019-03-08 | 众安信息技术服务有限公司 | 向区块链浏览器传输区块链数据的方法和设备 |
US20190245694A1 (en) * | 2017-04-04 | 2019-08-08 | International Business Machines Corporation | Distributed logging of application events in a blockchain |
CN110147398A (zh) * | 2019-04-25 | 2019-08-20 | 北京字节跳动网络技术有限公司 | 一种数据处理方法、装置、介质和电子设备 |
CN110427404A (zh) * | 2019-08-01 | 2019-11-08 | 上海计算机软件技术开发中心 | 一种区块链跨链数据检索系统 |
-
2019
- 2019-11-29 CN CN201911199806.7A patent/CN111078723B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190245694A1 (en) * | 2017-04-04 | 2019-08-08 | International Business Machines Corporation | Distributed logging of application events in a blockchain |
CN107426170A (zh) * | 2017-05-24 | 2017-12-01 | 阿里巴巴集团控股有限公司 | 一种基于区块链的数据处理方法及设备 |
CN107203344A (zh) * | 2017-05-31 | 2017-09-26 | 郑州云海信息技术有限公司 | 一种数据存储方法及数据存储系统 |
CN108647361A (zh) * | 2018-05-21 | 2018-10-12 | 中国工商银行股份有限公司 | 一种基于区块链的数据存储方法、装置及系统 |
CN109002527A (zh) * | 2018-07-13 | 2018-12-14 | 江苏开放大学(江苏城市职业学院) | 一种基于区块链的网络考试系统及利用其管理网络考试的方法 |
CN109447641A (zh) * | 2018-10-26 | 2019-03-08 | 众安信息技术服务有限公司 | 向区块链浏览器传输区块链数据的方法和设备 |
CN110147398A (zh) * | 2019-04-25 | 2019-08-20 | 北京字节跳动网络技术有限公司 | 一种数据处理方法、装置、介质和电子设备 |
CN110427404A (zh) * | 2019-08-01 | 2019-11-08 | 上海计算机软件技术开发中心 | 一种区块链跨链数据检索系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112597153A (zh) * | 2020-12-09 | 2021-04-02 | 杭州趣链科技有限公司 | 一种基于区块链的数据存储方法、装置及存储介质 |
CN113434503A (zh) * | 2021-06-25 | 2021-09-24 | 上海佩俪信息科技有限公司 | 一种区块链浏览方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111078723B (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11494339B2 (en) | Multi-level compression for storing data in a data store | |
JP6388655B2 (ja) | 選択性用データビットインターリーブによるリレーショナルデータベースのマルチカラムインデックスの生成 | |
Johanson et al. | Big automotive data: Leveraging large volumes of data for knowledge-driven product development | |
CN107766568B (zh) | 使用列式数据库中的直方图进行有效查询处理 | |
US8972337B1 (en) | Efficient query processing in columnar databases using bloom filters | |
Padgavankar et al. | Big data storage and challenges | |
CN111767143A (zh) | 交易数据处理方法、装置、设备及系统 | |
Lai et al. | Towards a framework for large-scale multimedia data storage and processing on Hadoop platform | |
US20140358845A1 (en) | Data warehouse compatibility | |
US10318346B1 (en) | Prioritized scheduling of data store access requests | |
CN109614404B (zh) | 一种数据缓存系统及方法 | |
US10701154B2 (en) | Sharding over multi-link data channels | |
JP2015530666A (ja) | データインデックス化方法及び装置 | |
CN111078723B (zh) | 一种区块链浏览器的数据处理方法及装置 | |
CN111258978A (zh) | 一种数据存储的方法 | |
CN111784468B (zh) | 一种账户关联方法、装置及电子设备 | |
CN111158650A (zh) | 报表模板、报表模板及报表的生成方法、装置 | |
US9380126B2 (en) | Data collection and distribution management | |
US11200205B2 (en) | Displaying an alert and options when deleting a file that is associated with a sequence of files | |
CN110008398B (zh) | 一种数据分类管理推荐方法及装置 | |
CN112506887A (zh) | 车辆终端can总线数据处理方法及装置 | |
CN113326288A (zh) | 数据处理方法、装置、电子设备 | |
CN111090974A (zh) | 一种报表生成方法、装置及设备 | |
US11500931B1 (en) | Using a graph representation of join history to distribute database data | |
CN111382155A (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 |