信息处理装置和信息处理方法与流程

文档序号:24647827发布日期:2021-04-13 16:01阅读:99来源:国知局
信息处理装置和信息处理方法与流程

1.本公开总体上涉及信息处理的技术领域,更具体地,涉及用于对区块链中的冲突交易进行分析并且根据分析结果对区块链进行优化的信息处理装置和信息处理方法。


背景技术:

2.区块链技术起源于比特币。区块链可被视为一种以去中心化方式进行操作的分布式数据库。区块链技术通过使用数据加密、时间戳、分布式共识和经济激励等手段,在分布式系统中的交易节点无需互相信任的情况下,实现基于去中心化的点对点交易、协调与协作,从而解决中心化机构普遍存在的高成本、低效率和数据存储不安全等问题。
3.随着近年来比特币的发展和普及,区块链作为一种新形式的具有普适性的分布式底层架构,已被广泛应用于金融、经济、科技甚至政治等各个领域。
4.然而,在区块链的节点的交易过程中,由于可能存在并发的交易,因此可能导致冲突交易。具体地,冲突交易是指不同的交易在并发执行过程中对区块链中的同一个区块进行并发操作。例如,并发的两个交易对同一个区块进行操作,其中一个交易对该区块的数据进行了修改,导致该区块的数据发生改变,并且改变的数据被登记到区块链(记账)。在该过程期间,如果另一个交易也对该区块进行操作以对该区块的数据进行修改,则另一个交易在对该区块的数据进行验证时,该区块的数据存在不一致,从而另一个交易被判断为冲突交易。
5.当区块链被应用于高系统吞吐量(tps)的应用中时,特别在存在频繁交易的情况下,冲突交易可能会导致众多的交易失效。然而,现有技术中不存在能够确定冲突交易的源头和模式以及针对冲突交易进行优化的技术。
6.因此,需要一种信息处理技术,其能够确定区块链中的冲突交易的交易源头(又被称为“源交易”)以及冲突模式,并且根据冲突交易的源交易和冲突模式对区块链进行优化。


技术实现要素:

7.为了解决现有技术中存在的问题,本公开提出了一种用于对区块链中的冲突交易进行分析并且根据分析结果对区块链进行优化的信息处理技术。该信息处理技术首先针对区块链账本上的每条冲突交易,通过将该交易的读写集合与账本上的该交易之前的交易的读写集合进行比较来确定冲突交易的源交易。随后,根据源交易将冲突交易聚类成冲突交易簇,通过分析冲突交易簇中的所有交易的调用函数和影响的键来判定该冲突交易簇的冲突模式。接着,针对所判定的冲突模式,给出对应的优化方案,从而避免后续冲突交易的产生。
8.在下文中将给出关于本公开的简要概述,以便提供关于本公开的某些方面的基本理解。应当理解,这个概述并不是关于本公开的穷举性概述。它并不是意图确定本公开的关键或重要部分,也不是意图限定本公开的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
9.本公开的目的之一在于提供用于对区块链中的冲突交易进行分析并且根据分析结果对区块链进行优化的信息处理装置和信息处理方法。
10.为了实现本公开的目的,提供了一种信息处理装置,其包括:确定单元,被配置成确定区块链中出现的冲突交易的源交易;判定单元,被配置成根据所述确定单元确定的源交易判定所述冲突交易的冲突模式;以及优化单元,被配置成根据所述判定单元判定的冲突模式确定消除所述冲突交易的优化方案。
11.根据本公开的另一方面,根据本公开的一个方面,提供了一种信息处理方法,其包括如下步骤:确定步骤,用于确定区块链中出现的冲突交易的源交易;判定步骤,用于根据所确定的源交易判定冲突交易的冲突模式;以及优化步骤,用于根据所判定的冲突模式确定消除冲突交易的优化方案。
12.根据本公开的另一方面,提供了一种能够实现上述的信息处理方法的计算机程序。此外,还提供了具有至少计算机可读介质形式的计算机程序产品,其上记录有用于实现上述的信息处理方法的计算机程序代码。
13.通过根据本公开的信息处理装置和信息处理方法,能够避免区块链中的后续冲突交易的产生,从而提高区块链的交易的执行效率和有效性。
附图说明
14.参照下面结合附图对本公开实施方式的说明,会更加容易地理解本公开的以上和其它目的、特点和优点,在附图中:
15.图1是示出根据本公开的实施方式的信息处理装置的框图;
16.图2是示出根据交易的读写集合确定冲突交易的源交易的示意图;
17.图3是示出根据交易的读写集合确定冲突交易的源交易的示意图;
18.图4是示出根据本公开内容的实施方式的确定单元基于源交易形成冲突交易簇的示意图;
19.图5是示出根据本公开内容的实施方式的判定单元通过分析冲突交易簇来判定冲突模式的示例性示意图;
20.图6是示出第一冲突模式、第二冲突模式和第三冲突模式的示意图;
21.图7是示出在判定冲突模式为第一冲突模式的情况下执行的优化的示例性示意图;
22.图8是示出在判定冲突模式为第二冲突模式的情况下执行的优化的示例性示意图;
23.图9是示出在判定冲突模式为第三冲突模式的情况下执行的优化的示例性示意图;
24.图10是示出根据本公开的实施方式的信息处理方法的流程图;以及
25.图11是示出可用来实现根据本公开的实施方式的信息处理方法和信息处理装置的通用机器的结构简图。
具体实施方式
26.在下文中,将参照所附的说明性示图详细描述本公开的一些实施方式。在用附图
标记指示附图的元件时,尽管相同的元件在不同的附图中示出,但相同的元件将由相同的附图标记表示。此外,在本公开的以下描述中,在有可能使本公开的主题不清楚的情况下,将省略对并入于本文中的已知功能和配置的详细描述。
27.本文中使用的术语仅用于描述特定实施方式的目的,而非旨在限制本公开。如本文所使用的,除非上下文另外指出,否则单数形式旨在也包括复数形式。还将理解的是,说明书中使用的术语“包括”、“包含”和“具有”旨在具体说明所陈述的特征、实体、操作和/或部件的存在,但是并不排除一个或更多个其他的特征、实体、操作和/或部件的存在或添加。
28.除非另有定义,否则本文中使用的包括技术术语和科学术语的所有术语具有与本发明构思所属领域技术人员通常理解的含义相同的含义。将进一步理解的是,诸如在常用词典中定义的那些术语应该被解释为具有与其在相关领域的上下文中的含义一致的含义,除非在此明确定义否则不应以理想化或过于正式的意义来解释。
29.在下面的描述中,阐述了许多具体细节以提供对本公开的全面理解。本公开可以在没有这些具体细节中的一些或所有具体细节的情况下实施。在其他实例中,为了避免因不必要的细节而模糊了本公开,在附图中仅仅示出了与根据本公开的方案密切相关的部件,而省略了与本公开关系不大的其他细节。
30.本公开的技术的核心思想在于对区块链中已经出现的冲突交易进行分析,以确定冲突交易出现的原因,并且根据所确定的原因对区块链的结构或规则进行优化,从而避免后续再出现冲突交易。
31.在下文中,将参照附图详细描述根据本公开的实施方式的用于对区块链中的冲突交易进行分析并且根据分析结果对区块链进行优化的信息处理装置和信息处理方法。
32.图1是示出根据本公开的实施方式的信息处理装置100的框图。
33.根据本公开内容的实施方式,信息处理装置100可以对区块链中的冲突交易进行分析并且根据分析结果对区块链进行优化。
34.如图1所示,根据本公开内容的实施方式,信息处理装置100可以包括确定单元101、判定单元102以及优化单元103。
35.确定单元101可以确定区块链中出现的冲突交易的源交易。
36.根据本公开内容的实施方式,确定单元101可以分析冲突交易之前的各个交易的数据,从而确定冲突交易的源交易,并且可以根据所确定的源交易构造包含源交易和冲突交易的冲突交易簇。
37.通常,区块链账本使用特定标识来标出因冲突而导致失效的交易,以指示该交易是冲突交易。因此,确定单元101可以容易地确定区块链账本中的冲突交易。
38.接着,确定单元101可以对冲突交易以及与冲突交易相关的交易的数据进行分析。根据本公开内容的实施方式,交易的数据可以包括该交易的读写集合。
39.具体地,确定单元101可以首先提取冲突交易的读写集合。区块链的交易的读写集合用于验证交易的有效性。读写集合通常包括键、值和版本号,通过版本号与世界状态的版本号的比较,可以确定交易的验证是否有效,即交易是否是冲突交易。在这一点上,鉴于区块链的交易的读写集合对于本领域技术人员而言是公知的,因此为简洁起见,本文省略了对区块链的交易的读写集合的细节的进一步描述。
40.随后,确定单元101可以根据冲突交易的读写集合,按倒序分析该冲突交易之前的
每个交易,直到确定冲突交易的源交易为止。通过分析冲突交易和该冲突交易之前的各个交易的读写集合,可以确定冲突交易的源交易。
41.图2和图3是示出根据交易的读写集合确定冲突交易的源交易的示意图,其中,图2示出了根据交易的读集合确定冲突交易的源交易的情况,而图3示出了根据交易的读集合确定冲突交易的源交易的情况。
42.根据本公开内容的实施方式,可以根据以下规则(1)和(2)来确定冲突交易的源交易:
43.(1)如图2所示,作为示例而非限制,区块链中的交易tx3被系统标示为冲突交易,因此按倒序分析冲突交易tx3及其之前的交易tx2、tx1的读写集合,直到确定冲突交易tx3的源交易tx1为止。
44.具体地,冲突交易tx3之前的某个交易(例如交易tx2)读取了交易tx1的键key a,对该键的值进行了修改(即写入键值),相应地更新了版本号(例如从版本号v1变为版本号v2),并且将交易登记到区块链账本中(即,记账)。此外,作为交易tx2的并发交易的冲突交易tx3也读取了交易tx1的键key a,对该键的值进行了修改,并且试图更新版本号以将交易登记到区块链账本中。然而,由于此时键key a的版本号已更新到v2,因此冲突交易tx3未能通过区块链账本的验证,被识别为无效交易。通过上述分析过程,可以确定冲突交易tx3的源交易是tx1。
45.规则(1)可以归纳为冲突交易的前序交易(并发交易)读取具有同一版本号的键,并且对该键的值进行更新,从而导致该键的值的写入出现冲突。据此,可以确定冲突交易的源交易。
46.(2)如图3所示,作为示例而非限制,区块链中的交易tx3被系统标示为冲突交易,因此按倒序分析冲突交易tx3及其之前的交易tx2、tx1的读写集合,直到确定冲突交易tx3的源交易tx1为止。
47.如果无法找到符合规则(1)的源交易,则可以将冲突交易tx3的写集合中的键值与前序交易tx1、tx2的写集合中的键值进行比较。此时,如果存在相同的键值被更新的交易tx1,则可以将该交易tx1确定为冲突交易tx3的源交易。
48.规则(2)所基于的思想在于,只要前序交易写入了一个键值,则该键值的版本号必然会发生变化。
49.规则(2)可以归纳为冲突交易的前序交易(并发交易)对同一个键执行写入操作,导致出现交易的冲突。据此,可以确定冲突交易的源交易。
50.基于上述规则(1)和(2),可以确定被区块链账本标示为冲突交易的源交易。
51.根据本公开内容的实施方式,针对每一个所确定的源交易,确定单元101可以将该源交易和因其引起的所有冲突交易聚类在一起,以形成一个冲突交易簇,从而便于后续的处理。
52.根据本公开内容的实施方式,冲突交易簇可以包括一个源交易和一个或更多个冲突交易。
53.图4是示出根据本公开内容的实施方式的确定单元101基于源交易形成冲突交易簇的示意图。
54.如图4所示,例如,确定单元101确定了两个源交易tx1和tx2以及它们所引起的冲
突交易tx3、tx4、tx5、tx6和tx7。据此,确定单元101将源交易tx1及其冲突交易tx3、tx6和tx7以及源交易tx2及其冲突交易tx4和tx5聚类为两个冲突交易簇。
55.根据源交易构造冲突交易簇可以用于判定冲突交易簇的冲突模式。此外,根据本公开内容的实施方式,可以基于冲突交易簇来实现用户接口的可视化,从而便于用户直观地理解冲突交易与其源交易之间的关系,从而有利于后续的针对冲突交易的优化。
56.接着,回到图1,根据本公开内容的实施方式,判定单元102可以根据确定单元101确定的源交易判定冲突交易的冲突模式。
57.具体地,判定单元102可以针对冲突交易所在的冲突交易簇,分析冲突交易簇中包括的所有交易的调用函数和所述调用函数影响的键来判定冲突交易的冲突模式。
58.根据本公开内容的实施方式,判定单元102可以分析冲突交易簇中包括的所有交易所调用的函数和影响的键,并且基于分析结果判定该冲突交易簇的冲突模式。
59.例如,对于图4中所示的源交易为tx2的冲突交易簇,可以分析该冲突交易簇中包括的所有交易调用的函数以及所述函数影响的交易的读写集合中的键来判定该冲突交易簇的冲突模式。
60.注意,本文中提及的冲突模式是根据源交易的冲突交易簇来判定的,但是对于冲突交易簇中的每个冲突交易,所述冲突模式也是该冲突交易的冲突模式,因此本文中提及的冲突交易簇的冲突模式和冲突交易的冲突模式具有等同的意义。
61.图5是示出根据本公开内容的实施方式的判定单元102通过分析冲突交易簇来判定冲突模式的示例性示意图。
62.作为示例而非限制,如图5所示,对于图4中所示的源交易为tx2的冲突交易簇,判定单元102分析冲突交易簇中包括的所有交易tx2、tx4、tx5调用的函数以及所述函数影响的交易的读写集合中的键,发现这三个交易均调用转账(transfer)函数,从而影响区块链账本中的例如账户余额的键的值。如后面将进一步详细描述,判定单元102可以据此将源交易为tx2的冲突交易簇的冲突模式确定为一个函数影响多个键的冲突模式。
63.根据本公开内容的实施方式,冲突交易簇的冲突模式可以包括其中一个函数影响一个键的第一冲突模式、其中一个函数影响至少两个或更多个键的第二冲突模式以及其中至少两个或更多个函数影响一个键的第三冲突模式。下面将参照图6结合具体示例来详细说明这三种冲突模式。
64.图6示出了第一、第二和第三冲突模式的示意图。
65.如图6所示,在第一冲突模式中,一个函数的调用只影响一个键,例如物联网(iot)的传感器连续地将感测到的数据登记到区块链账本上的场景。例如,如果iot传感器的感测数据更新过快以近似于并发交易,则可能导致感测数据的登记速度跟不上传输速度,从而引起冲突交易。
66.此外,如图6所示,在第二冲突模式中,一个函数的调用影响到至少两个或更多个键,例如从一个账户同时向多个账户转账的场景。例如,如果多笔从一个账户向多个账户转账的交易出现得过于接近以近似于并发交易,则可能导致转出账户的在先交易的记账未完成而在后提交的交易又被提交到账本,从而使得在后提交的交易被标示为冲突交易。
67.此外,如图6所示,在第三冲突模式中,至少两个或更多个函数的调用影响到一个键,例如从多个账户向同一个账户转账的场景。例如,如果多笔从多个账户向同一个账户转
账的交易出现得过于接近以近似于并发交易,导致转入账户的在先交易的记账未完成而在后提交的交易又被提交到账本,从而使得在后提交的交易被标示为冲突交易。
68.本领域技术人员应理解,在区块链的实际应用中,还存在至少两个或更多个函数的调用影响到至少两个或更多个键的情况,但是这种情况可以被分解成多个至少两个或更多个函数的调用影响到一个键的情况,即第三冲突模式。换言之,上文描述的第一至第三冲突模式能够涵盖所有冲突交易的情况。
69.接着,回到图1,根据本公开内容的实施方式,优化单元103可以根据判定单元102判定的冲突模式确定消除冲突交易的优化方案。
70.根据本公开内容的实施方式,优化方案可以包括其中通过修改区块链的智能合约来进行优化的第一优化方案和其中通过修改区块链的应用层来进行优化的第二优化方案。
71.下面参照图7、图8和图9来描述根据本公开内容的实施方式的优化单元103根据冲突模式确定优化方案的示例。
72.图7示出了在判定冲突模式为第一冲突模式的情况下执行的优化的示例性示意图。
73.作为第一冲突模式的具体示例,在如上文所述的物联网(iot)的传感器连续地将感测到的数据登记到区块链账本上的场景中,根据冲突交易产生的原因,即iot传感器的感测数据更新过快以近似于并发交易,导致感测数据的登记速度跟不上传输速度,可以对读写集合的键的结构进行修改以消除冲突交易。上述优化方案是对区块链的交易的数据结构的修改,属于通过修改区块链的应用层来进行优化的第二优化方案。
74.以iot传感器为例,可以使用不同的键来记录不同时刻的感测数据。在需要将最新键值登记到区块链账本中时,可以通过对各个键的值的组合计算来获得最新键值。
75.如图7中所示,可以使用与键key1相关的五个子键,即key1_1、key1_2、key1_3、key1_4、key1_5,其中子键key1_1的键值与key1的键值value 1相同。在后续的感测时刻依次记录的感测数据作为相对于上一次感测数据的变化量(delta)写入后续的子键,即键key1_2、key1_3、key1_4、key1_5的键值分为delta_1、delta_2、delta_3、delta_4。在需要读取感测数据的最新值并且将其登记到区块链账本时,可以通过下式计算键key1的最新值。
76.key1的最新值=key1的上一次登记的键值+key1_2+key1_3+key1_4+key1_5
77.作为优化方案,通过对键key1的数据结构的修改,可以避免因感测数据的登记速度跟不上传输速度而导致的冲突交易,从而实现对区块链的优化。在上述示例中,子键的数量可以根据具体应用,例如传感器的感测间隔的时长而进行调整。
78.根据本公开内容的实施方式,优化单元103可以通过改变交易的读写集合的键的数据结构来实现对第一冲突模式的冲突交易的优化。
79.图8示出了在判定冲突模式为第二冲突模式的情况下执行的优化的示例性示意图。
80.作为第二冲突模式的具体示例,在上文所述的从一个账户同时向多个账户转账的场景中,根据冲突交易产生的原因,即多笔从一个账户向多个账户转账的交易出现得过于接近以近似于并发交易,则可能导致转出账户的在先交易的记账未完成而在后提交的交易又被提交到账本,可以对区块链的智能合约进行修改。根据本公开内容的实施方式,对于第二冲突模式,可以采用根据冲突交易的原因而增加区块链的智能合约的优化方案,属于通
过修改区块链的智能合约来进行优化的第一优化方案。
81.例如,如图8中的伪代码所示,可以将从一个账户向多个账户转账的交易(例如,调用转账(transfer)函数)整合为一个批量转账交易(例如,批量转账函数)。例如,以企业向员工发放工资为例,该交易即为从一个账户向多个账户转账的交易。在未做优化的情况下,上述转账交易由若干个连续的转出账户向一个转入账户转账的交易构成,时间上的先后顺序和间隔时长可能会引起冲突交易。因此,通过增加批量转账的智能合约,可以实现真正意义上的一个转出账户对多个转入账户的同时转账,从而避免了冲突交易。
82.根据本公开内容的实施方式,优化单元103可以通过增加区块链的智能合约来实现对第二冲突模式的冲突交易的优化。
83.图9示出了判定冲突模式为第三冲突模式的情况下执行的优化的示例性示意图。
84.作为第三冲突模式的具体示例,在上文所述的从多个账户向同一个账户转账的场景中,根据冲突交易产生的原因,即多笔从多个账户向同一个账户转账的交易出现得过于接近以近似于并发交易,导致转入账户的在先交易的记账未完成而在后提交的交易又被提交到账本,可以对区块链的结构进行修改。根据本公开内容的实施方式,对于第三冲突模式,可以采用在区块链的应用层中增加缓冲层的优化方案,属于通过修改区块链的应用层来进行优化的第二优化方案。
85.具体地,如图9中所示,根据本公开内容的实施方式,可以在区块链的应用层中增加一个缓存层。在缓存层中,可以依次执行交易tx1至tx6的背书(endorsement)、排序(order)和共识(commit)服务以对交易的读写集合进行分析,如果发现交易之间存在冲突,则可以首先将不冲突的交易提交至区块链的账本。在不冲突的交易上链(即写入账本)之后,可以对剩余的交易重新背书(即获取新键值)。通过重复上述操作,直到所有的交易上链,从而避免了冲突交易。
86.根据本公开内容的实施方式,优化单元103可以通过在区块链的应用层中增加缓存层来实现对第三冲突模式的冲突交易的优化。
87.本领域技术人员应认识到,上文结合第一至第三冲突模式的具体示例描述了针对第一至第三冲突模式的具体优化方案,但是本公开不限于此。本领域技术人员通过对引起第一至第三冲突模式的具体原因进行分析,可以采用不同于上文描述的具体示例的其他优化方案来消除冲突交易,所有这些优化方案同样应涵盖于本公开的范围内。
88.相应地,本公开还提出了一种用于对区块链中的冲突交易进行分析并且根据分析结果对区块链进行优化的的信息处理方法。
89.图10是示出根据本公开的实施方式的信息处理方法1000的流程图。
90.信息处理方法1000开始于步骤s1001。随后,在步骤s1002中,确定区块链中出现的冲突交易的源交易。根据本公开内容的实施方式,步骤s1002中的处理可以通过根据上文参照图1至9描述的确定单元101来实现。
91.随后,在步骤s1003中,根据所确定的源交易判定冲突交易的冲突模式。根据本公开内容的实施方式,步骤s1003中的处理可以通过根据上文参照图1至9描述的判定单元102来实现。
92.随后,在步骤s1004中,根据所判定的冲突模式确定消除冲突交易的优化方案。根据本公开内容的实施方式,步骤s1004中的处理可以通过根据上文参照图1至9描述的优化
单元103来实现。
93.最后,信息处理方法1000结束于步骤s1005。
94.根据本公开内容的信息处理装置和信息处理方法能够对区块链中已经出现的冲突交易进行分析,以确定冲突交易出现的原因,并且根据所确定的原因对区块链的结构或规则进行优化,从而避免后续再出现冲突交易,以提高交易的执行效率与有效性。
95.图11是示出可用来实现根据本公开的实施方式的信息处理方法和信息处理装置的通用机器1100的结构简图。通用机器1100可以是例如计算机系统。应注意,通用机器1100只是一个示例,并非暗示对本公开的信息处理方法和信息处理装置的使用范围或者功能的局限。也不应将通用机器1100解释为对上述信息处理方法或信息处理装置中示出的任一组件或其组合具有依赖或需求。
96.在图11中,中央处理单元(cpu)1101根据只读存储器(rom)1102中存储的程序或从存储部分1108加载到随机存取存储器(ram)1003的程序执行各种处理。在ram 1103中,还根据需要存储当cpu 1101执行各种处理等等时所需的数据。cpu 1101、rom 1102和ram 1103经由总线1104彼此连接。输入/输出接口1105也连接到总线1104。
97.下述部件也连接到输入/输出接口1105:输入部分1106(包括键盘、鼠标等等)、输出部分1107(包括显示器,例如阴极射线管(crt)、液晶显示器(lcd)等,和扬声器等)、存储部分1108(包括硬盘等)、通信部分1109(包括网络接口卡例如lan卡、调制解调器等)。通信部分1109经由网络例如因特网执行通信处理。根据需要,驱动器1110也可连接到输入/输出接口1105。可拆卸介质1111例如磁盘、光盘、磁光盘、半导体存储器等等可以根据需要被安装在驱动器1110上,使得从中读出的计算机程序可根据需要被安装到存储部分1108中。
98.在通过软件实现上述系列处理的情况下,可以从网络例如因特网或从存储介质例如可拆卸介质1111安装构成软件的程序。
99.本领域的技术人员应当理解,这种存储介质不局限于图11所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质1111。可拆卸介质1111的例子包含磁盘(包含软盘)、光盘(包含光盘只读存储器(cd-rom)和数字通用盘(dvd))、磁光盘(包含迷你盘(md)(注册商标))和半导体存储器。或者,存储介质可以是rom 1102、存储部分1108中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
100.此外,本公开还提出了一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本公开的信息处理方法。相应地,用于承载这种程序产品的上面列举的各种存储介质也包括在本公开的范围内。
101.上面已通过框图、流程图和/或实施方式进行了详细描述,阐明了根据本公开的实施方式的装置和/或方法的具体实施方式。当这些框图、流程图和/或实施方式包含一个或多个功能和/或操作时,本领域的技术人员明白,这些框图、流程图和/或实施方式中的各功能和/或操作可以通过各种硬件、软件、固件或实质上它们的任意组合而单独地和/或共同地实施。在一种实施方式中,本说明书中描述的主题的几个部分可通过特定用途集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)或其他集成形式实现。然而,本领域的技术人员会认识到,本说明书中描述的实施方式的一些方面能够全部或部分地以在一个或多个计算机上运行的一个或多个计算机程序的形式(例如,以在一个或多个计算机系统上运行的一个或多个计算机程序的形式)、以在一个或多个处理器上运行的一个或多个
程序的形式(例如,以在一个或多个微处理器上运行的一个或多个程序的形式)、以固件的形式、或以实质上它们的任意组合的形式等效地实施,并且,根据本说明书中公开的内容,设计用于本公开的电路和/或编写用于本公开的软件和/或固件的代码完全是在本领域技术人员的能力范围之内。
102.应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。涉及序数的术语“第一”,“第二”等并不表示这些术语所限定的特征、要素、步骤或组件的实施顺序或者重要性程度,而仅仅是为了描述清楚起见而用于在这些特征、要素、步骤或组件之间进行标识。
103.综上,在根据本公开的实施方式中,本公开提供了如下方案,但不限于此:
104.方案1.一种信息处理装置,包括:
105.确定单元,被配置成确定区块链中出现的冲突交易的源交易;
106.判定单元,被配置成根据所述确定单元确定的源交易判定所述冲突交易的冲突模式;以及
107.优化单元,被配置成根据所述判定单元判定的冲突模式确定消除所述冲突交易的优化方案。
108.方案2.根据方案1所述的信息处理装置,其中,所述确定单元被配置成:
109.分析所述冲突交易之前的各个交易的数据,从而确定所述冲突交易的源交易;以及
110.根据所确定的源交易构造包含源交易和冲突交易的冲突交易簇。
111.方案3.根据方案2所述的信息处理装置,其中,所述交易的数据包括交易的读写集合。
112.方案4.根据方案2所述的信息处理装置,其中,所述冲突交易簇包括一个源交易和一个或更多个冲突交易。
113.方案5.根据方案2所述的信息处理装置,其中,所述判定单元被配置成:
114.分析所述冲突交易簇中包括的所有交易所调用的函数和影响的键;以及
115.基于分析结果判定所述冲突交易簇的冲突模式。
116.方案6.根据方案1所述的信息处理装置,其中所述冲突模式包括第一冲突模式、第二冲突模式和第三冲突模式,以及
117.其中所述第一冲突模式是一个函数影响一个键的冲突模式,所述第二冲突模式是一个函数影响至少两个或更多个键的冲突模式,所述第三冲突模式是至少两个或更多个函数影响一个键的冲突模式。
118.方案7.根据方案1所述的信息处理装置,其中,所述优化方案包括第一优化方案和第二优化方案,以及
119.其中所述第一优化方案是通过修改区块链的智能合约进行优化的方案,所述第二优化方案是通过修改区块链的应用层进行优化的方案。
120.方案8.根据方案6所述的信息处理装置,其中,所述优化单元被配置成:
121.通过改变交易的读写集合的键的数据结构来实现对所述第一冲突模式的冲突交易的优化;
122.通过增加区块链的智能合约来实现对第二冲突模式的冲突交易的优化;以及
123.通过在区块链的应用层中增加缓存层来实现对第三冲突模式的冲突交易的优化。
124.方案9.一种信息处理方法,包括:
125.确定步骤,用于确定区块链中出现的冲突交易的源交易;
126.判定步骤,被配置成根据所确定的源交易判定所述冲突交易的冲突模式;以及
127.优化步骤,被配置成根据所判定的冲突模式确定消除所述冲突交易的优化方案。
128.方案10.根据方案9所述的信息处理方法,其中,所述确定步骤包括:
129.分析所述冲突交易之前的各个交易的数据,从而确定所述冲突交易的源交易;以及
130.根据所确定的源交易构造包含源交易和冲突交易的冲突交易簇。
131.方案11.根据方案10所述的信息处理方法,其中,所述交易的数据包括交易的读写集合。
132.方案12.根据方案10所述的信息处理方法,其中,所述冲突交易簇包括一个源交易和一个或更多个冲突交易。
133.方案13.根据方案10所述的信息处理方法,其中,所述判定步骤包括:
134.分析所述冲突交易簇中包括的所有交易所调用的函数和影响的键;以及
135.基于分析结果判定所述冲突交易簇的冲突模式。
136.方案14.根据方案9所述的信息处理方法,其中所述冲突模式包括第一冲突模式、第二冲突模式和第三冲突模式,以及
137.其中所述第一冲突模式是一个函数影响一个键的冲突模式,所述第二冲突模式是一个函数影响至少两个或更多个键的冲突模式,所述第三冲突模式是至少两个或更多个函数影响一个键的冲突模式。
138.方案15.根据方案9所述的信息处理方法,其中,所述优化方案包括第一优化方案和第二优化方案,以及
139.其中所述第一优化方案是通过修改区块链的智能合约进行优化的方案,所述第二优化方案是通过修改区块链的应用层进行优化的方案。
140.方案16.根据方案14所述的信息处理方法,其中,所述优化步骤包括:
141.通过改变交易的读写集合的键的数据结构来实现对所述第一冲突模式的冲突交易的优化;
142.通过增加区块链的智能合约来实现对第二冲突模式的冲突交易的优化;以及
143.通过在区块链的应用层中增加缓存层来实现对第三冲突模式的冲突交易的优化。
144.方案17.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被计算机执行时能够实现根据方案9至16中任一项所述的信息处理方法。
145.尽管上面已经通过对本公开的具体实施方式的描述对本公开进行了披露,但是,应该理解,本领域的技术人员可在所附权利要求的精神和范围内设计对本公开的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本公开的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1