CN118520045A - 一种订单数据的同步方法、系统及设备 - Google Patents
一种订单数据的同步方法、系统及设备 Download PDFInfo
- Publication number
- CN118520045A CN118520045A CN202410648831.3A CN202410648831A CN118520045A CN 118520045 A CN118520045 A CN 118520045A CN 202410648831 A CN202410648831 A CN 202410648831A CN 118520045 A CN118520045 A CN 118520045A
- Authority
- CN
- China
- Prior art keywords
- data
- storage node
- order data
- order
- ordered
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2477—Temporal data queries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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—Managing shopping lists, e.g. compiling or processing purchase lists
- G06Q30/0635—Managing shopping lists, e.g. compiling or processing purchase lists replenishment orders; recurring orders
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据同步技术领域,尤其涉及一种订单数据的同步方法、系统及设备。所述方法包括以下步骤:对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列。本发明有效解决了分布式订单数据同步中的一致性问题,提高了系统的可靠性、性能和容错能力,简化了数据管理。
Description
技术领域
本发明涉及数据同步技术领域,尤其涉及一种订单数据的同步方法、系统及设备。
背景技术
在现代电子商务系统中,订单数据是最核心和最关键的一部分数据。订单数据记录了顾客购买商品或服务的详细信息,如商品名称、数量、金额、收货地址,是处理交易和物流的基础。由于电子商务业务的高并发、高复杂性,订单系统往往需要采用分布式架构,将订单数据存储在不同的数据中心或者数据库中,以提高系统的可扩展性和容错能力。
然而,分布式存储订单数据带来了数据一致性的挑战。由于网络延迟、硬件故障原因,不同节点上的订单数据会存在差异,导致数据不一致。数据不一致会给后续的订单处理、商品发货环节带来严重影响,因此需要一种高效可靠的订单数据同步方法,及时将各个节点的数据进行同步,保证数据的最终一致性。
除此之外,一些基于消息队列或事件驱动的同步方法也被尝试。这些方法利用消息传递机制在系统之间传递订单数据更新消息,以实现实时同步。然而,这些方法在处理大量订单数据时会面临性能和延迟的挑战,特别是在高负载和复杂网络环境下。
发明内容
基于此,本发明有必要提供一种订单数据的同步方法、系统及设备,以解决至少一个上述技术问题。
为实现上述目的,一种订单数据的同步方法,包括以下步骤:
步骤S1:对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;
步骤S2:基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列;根据全局有序维护时间戳序列对对应存储节点的订单数据块进行数据一致性检测,得到数据不一致检测结果;
步骤S3:根据数据不一致检测结果对存储节点集群映射表进行多数据投票共识达成,得到一致性订单数据;基于存储节点集群映射表将一致性订单数据回写至原存储节点,得到同步总订单数据,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
本发明通过订单数据分块及哈希映射,将订单数据精确定位到特定的存储节点,形成有序的订单数据块序列与存储节点集群映射表,实现数据的精准管理和分配,使得数据块的分配、存储和同步变得更加有序和高效。通过维护逻辑矢量时钟记录全局有序维护时间戳序列,实时监控并检测各个存储节点的数据一致性,有效识别和定位数据不一致的问题,确保及时纠正。通过采用分布式架构,将订单数据分散存储在多个节点中,即使某个节点发生故障,其他节点的数据仍然可以保证系统的整体运行,提升系统的容错能力和稳定性。基于数据不一致检测结果,通过多数据投票共识机制,实现存储节点集群的一致性决策,确保最终数据的一致性和可靠性,即使在复杂网络环境下也能有效运行。通过采用分布式数据库构建,有序数据块的分配及维护时间戳序列的方法,能够有效提高系统的扩展性和性能,适应高并发和大数据量的处理需求。通过维护逻辑矢量时钟记录和全局有序维护时间戳序列的使用,使得对数据不一致的检测和处理更加简便直观,降低了系统的管理和维护成本。多数据投票共识达成机制的应用,通过多节点的协同工作,共同决策,确保一致性订单数据的生成和回写,极大地提升了系统数据的可靠性和一致性保障。数据不一致检测结果的详细分析和处理,能够及时发现并纠正数据异常情况,避免由于数据不一致带来的交易和物流后续环节的问题,确保电子商务系统的整体稳定运行。综上所述,本发明有效解决了分布式订单数据同步中的一致性问题,提高了系统的可靠性、性能和容错能力,简化了数据管理。
优选地,本发明还提供了一种订单数据的同步系统,用于执行如上所述的订单数据的同步方法,该订单数据的同步系统包括:
订单数据采集模块,用于对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;
分布式数据库构建模块,用于基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列;根据全局有序维护时间戳序列对对应存储节点的订单数据块进行数据一致性检测,得到数据不一致检测结果;
一致性数据处理模块,用于根据数据不一致检测结果对存储节点集群映射表进行多数据投票共识达成,得到一致性订单数据;基于存储节点集群映射表将一致性订单数据回写至原存储节点,得到同步总订单数据,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
优选地,本发明还提供了一种订单数据的同步设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种订单数据的同步方法。
本发明中,通过订单数据采集模块实现了对电子商务系统订单数据的实时采集,确保订单数据的及时获取和处理。通过对原始订单数据的分块及哈希映射,将数据精确分配到特定的存储节点,有序地管理订单数据块序列与存储节点集群映射表,提高了数据管理的系统性和效率。通过分布式数据库构建模块基于有序订单数据块序列与存储节点集群映射表,构建高效的分布式数据库,能够有效应对电子商务系统的高并发和大数据量处理需求。通过维护逻辑矢量时钟记录和全局有序维护时间戳序列,实现了对数据的一致性检测和维护,确保系统在高负载环境下依然保持高性能和高效能。通过全局有序维护时间戳序列,能够及时发现并定位数据不一致的问题,确保系统中的数据一致性。通过采用分布式架构,将订单数据分散存储在多个节点中,即使个别节点发生故障,也不会影响系统的整体运行,提高了系统的容错能力和可靠性。通过一致性数据处理模块,将一致性订单数据回写至原存储节点,确保数据的一致性和完整性,即使在复杂网络环境下也能有效运行。
附图说明
通过阅读参照以下附图所作的对非限制性实施所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出了一实施例的订单数据的同步方法的步骤流程示意图。
图2示出了一实施例的步骤S3的详细步骤流程示意图。
图3示出了一实施例的步骤S32的详细步骤流程示意图。
具体实施方式
下面结合附图对本发明专利的技术方法进行清楚、完整的描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域所属的技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器方法和/或微控制器方法中实现这些功能实体。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
为实现上述目的,请参阅图1至图3,本发明提供了一种订单数据的同步方法,包括以下步骤:
步骤S1:对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;
步骤S2:基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列;根据全局有序维护时间戳序列对对应存储节点的订单数据块进行数据一致性检测,得到数据不一致检测结果;
步骤S3:根据数据不一致检测结果对存储节点集群映射表进行多数据投票共识达成,得到一致性订单数据;基于存储节点集群映射表将一致性订单数据回写至原存储节点,得到同步总订单数据,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
本发明通过订单数据分块及哈希映射,将订单数据精确定位到特定的存储节点,形成有序的订单数据块序列与存储节点集群映射表,实现数据的精准管理和分配,使得数据块的分配、存储和同步变得更加有序和高效。通过维护逻辑矢量时钟记录全局有序维护时间戳序列,实时监控并检测各个存储节点的数据一致性,有效识别和定位数据不一致的问题,确保及时纠正。通过采用分布式架构,将订单数据分散存储在多个节点中,即使某个节点发生故障,其他节点的数据仍然可以保证系统的整体运行,提升系统的容错能力和稳定性。基于数据不一致检测结果,通过多数据投票共识机制,实现存储节点集群的一致性决策,确保最终数据的一致性和可靠性,即使在复杂网络环境下也能有效运行。通过采用分布式数据库构建,有序数据块的分配及维护时间戳序列的方法,能够有效提高系统的扩展性和性能,适应高并发和大数据量的处理需求。通过维护逻辑矢量时钟记录和全局有序维护时间戳序列的使用,使得对数据不一致的检测和处理更加简便直观,降低了系统的管理和维护成本。多数据投票共识达成机制的应用,通过多节点的协同工作,共同决策,确保一致性订单数据的生成和回写,极大地提升了系统数据的可靠性和一致性保障。数据不一致检测结果的详细分析和处理,能够及时发现并纠正数据异常情况,避免由于数据不一致带来的交易和物流后续环节的问题,确保电子商务系统的整体稳定运行。综上所述,本发明有效解决了分布式订单数据同步中的一致性问题,提高了系统的可靠性、性能和容错能力,简化了数据管理。
本实施例中,从电子商务系统中实时采集原始订单数据,并对其进行分块及哈希映射,以创建有序的订单数据块序列和存储节点集群映射表。每个订单数据块都会被唯一地映射到一个存储节点,确保了数据的均衡分布和高效访问。举例来说,如果有五个订单,通过哈希算法映射后,订单1和订单2映射到节点A,订单3映射到节点B,订单4和订单5映射到节点C。利用有序订单数据块序列与存储节点集群映射表构建分布式数据库,并对每个存储节点进行逻辑矢量时钟记录,以生成全局有序维护时间戳序列。这些时间戳用于数据一致性检测,确保各存储节点上的订单数据在全局上是有序的。例如,节点A记录的时间戳序列是[1,2],节点B是[3],节点C是[4,5]。在这一步骤中,检测数据不一致情况,如节点A上的订单2数据与其他节点有冲突。根据数据不一致检测结果,对存储节点集群映射表进行多数据投票共识达成,以获得一致性订单数据。例如,如果发现节点A上的订单2数据不一致,将对其进行投票共识,最终确定正确的数据版本。这一版本将被更新到所有节点,以确保每个节点上的订单数据是一致的。
优选地,步骤S1包括以下步骤:
步骤S11:对电子商务系统进行订单事件探针部署,得到订单事件监控代理;
具体地,使用Apache Kafka作为订单事件探针软件,对Kafka进行配置,设置主题以及订阅的事件类型,确保它能够捕获系统中的订单事件,例如订单创建、支付、发货。将配置好的Kafka部署到电子商务系统的关键节点,比如订单处理服务器、支付服务器,从而得到订单事件监控代理。
步骤S12:利用订单事件监控代理对电子商务系统进行订单事务数据流实时捕获,得到原始订单数据;
具体地,订单事件探针捕获到的原始订单数据通过网络传输给配置好的Kafka监控代理。这涉及将数据发送到Kafka的指定主题中。Kafka监控代理接收到订单事件数据后,对原始订单数据存储在适当的位置,比如数据库、文件系统。
步骤S13:对原始订单数据进行格式规范化处理,得到规范订单数据;
具体地,使用pandas库对原始订单数据进行处理,包括但不限于去除重复数据、填充缺失值、统一日期格式操作,从而得到规范订单数据。
步骤S14:对规范订单数据进行分块,得到有序订单数据块序列;
具体地,选择按照订单创建时间将订单数据按月份进行分块的策略。根据确定的策略,将规范化处理后的订单数据按照月份进行分块操作,形成多个月份的订单数据块。按照时间顺序排列各个月份的订单数据块,形成有序订单数据块序列。
步骤S15:基于有序订单数据块序列通过环状虚拟节点映射对每个订单数据块进行存储节点映射,得到存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点。
具体地,利用一致性哈希算法,对每个订单数据块进行存储节点映射操作,将其映射到环状虚拟节点空间上的相应节点。根据订单数据块与存储节点的映射关系,生成存储节点集群映射表,确保每个订单数据块与其对应的存储节点的映射关系正确无误。
本发明通过订单事件探针的部署,能够实时监控电子商务系统中的订单事件,确保订单数据的实时性和准确性。利用订单事件监控代理对订单事务数据流进行实时捕获,及时获取原始订单数据,保证数据的完整性和及时性,有助于提高订单处理效率。对原始订单数据进行格式规范化处理,确保数据的一致性和标准化,提高数据质量,减少后续数据处理中的错误和不一致情况,提高整个系统的数据处理效率和可靠性。对规范订单数据进行分块,生成有序订单数据块序列,使数据管理更加系统化和有序。分块处理有助于将大数据集拆分成更小的部分,便于存储和管理。基于有序订单数据块序列,通过环状虚拟节点映射,对每个订单数据块进行存储节点映射,形成存储节点集群映射表。这种映射方法优化数据分布和存储,提高数据检索和访问效率。
优选地,步骤S15包括以下步骤:
步骤S151:对电子商务系统进行N维环状虚拟节点空间构建,得到N维环状虚拟节点空间,其中在N维环状虚拟节点空间中物理存储节点按一致性哈希算法映射至N维环上,每个物理存储节点在环上均匀分布有M个虚拟节点;
具体地,选择一致性哈希算法libconsistent,根据系统需求和性能要求,确定N维环的维度。维度的选择应该考虑到系统的数据规模、负载和性能需求。假设选择了3维环作为示例。使用一致性哈希算法libconsistent,构建3维环状虚拟节点空间。将物理存储节点按照哈希算法映射至3维环上。每个物理存储节点在环上均匀分布有M个虚拟节点。例如,如果有10个物理存储节点,并且每个节点均匀分布有3个虚拟节点,那么总共会有30个虚拟节点在3维环上分布。验证构建的3维环状虚拟节点空间中节点的分布均匀性。确保每个物理存储节点在环上的虚拟节点数量均匀,并且节点之间的距离分布合理。将构建好的3维环状虚拟节点空间配置和部署到电子商务系统中。确保系统能够正确地使用这个虚拟节点空间进行数据存储和访问。
步骤S152:采用分形哈希编码算法对有序订单数据块序列中每个订单数据块进行编码,得到若干个订单N维哈希向量;
具体地,选择了MurmurHash3作为分形哈希编码算法的实现。MurmurHash3是一种快速、高效的哈希算法,适合用于对订单数据进行哈希编码。对每个订单数据块应用MurmurHash3算法,得到相应的订单N维哈希向量。
步骤S153:基于N维环状虚拟节点空间对每个订单N维哈希向量进行距离测度,得到最近虚拟节点距离数据;
具体地,选择欧氏距离作为距离测度方法。欧氏距离是一种常见的距离度量方法,适用于计算向量之间的距离。基于N维环状虚拟节点空间,对每个订单N维哈希向量进行欧氏距离的测度操作。计算每个订单N维哈希向量与环上虚拟节点之间的距离,得到最近虚拟节点距离数据。
步骤S154:将最近虚拟节点距离数据对应的虚拟节点映射回物理存储节点,并将订单数据块与对应的物理存储节点记录在存储节点集群映射表中;
具体地,选择一致性哈希算法libconsistent作为将虚拟节点映射回物理存储节点的工具。根据最近虚拟节点距离数据,使用一致性哈希算法将每个虚拟节点映射回相应的物理存储节点。这一步确保了订单数据块在存储节点集群中的分布均匀性和负载均衡性。将每个订单数据块与其对应的物理存储节点记录在存储节点集群映射表中。这个表格记录了有序订单数据块序列与存储节点的映射关系。
步骤S155:重复步骤S153和S154,直至所有订单数据块均完成节点映射,即得到存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点。
具体地,重复执行步骤S153和S154,直至所有的订单数据块都完成了节点映射操作。这确保了整个数据集的每个订单数据块都被正确地映射到了相应的物理存储节点上。当所有订单数据块完成节点映射后,生成最终的存储节点集群映射表。这个表格记录了有序订单数据块序列与存储节点的映射关系,每个订单数据块对应唯一的存储节点。
本发明通过构建N维环状虚拟节点空间,利用一致性哈希算法将物理存储节点映射到N维环上,每个物理存储节点在环上均匀分布有多个虚拟节点。这种均匀分布方式有效地避免了数据热点问题,实现了负载均衡,提高系统性能和可靠性。采用分形哈希编码算法对有序订单数据块进行编码,生成订单N维哈希向量,确保数据块哈希值具有良好的分布特性,提高数据映射的精确性和效率。通过N维环状虚拟节点空间,对订单N维哈希向量进行距离测度,得到最近虚拟节点距离数据,准确找到离数据块最近的虚拟节点,优化数据块存储位置,提高存储空间利用率。通过将最近虚拟节点距离数据对应的虚拟节点映射回物理存储节点,并记录在存储节点集群映射表中。虚拟节点和物理节点的映射关系,使得系统在增加或移除物理存储节点时,只需调整少量数据块的映射,极大地提升系统扩展性和容错能力。精确的虚拟节点映射和距离测度方法,确保每个订单数据块映射到最合适的物理存储节点,减少数据传输和存储过程中的不一致性,提高数据一致性和可靠性。确保所有订单数据块均完成节点映射,构建完整的存储节点集群映射表,实现数据块与物理存储节点的唯一对应关系,保障数据一致性。通过采用N维环状虚拟节点空间和一致性哈希算法,简化了数据块的映射和存储过程,减少计算复杂度,提升系统处理速度和效率。
优选地,步骤S153包括以下步骤:
步骤S1531:对N维环状虚拟节点空间进行非欧几何空间映射,得到N维非欧空间;
具体地,选择非欧几何空间映射方法,如流形学习中的局部线性嵌入(LocallyLinear Embedding,简称LLE)算法,利用LLE算法,对N维环状虚拟节点空间进行非欧几何空间映射。这一步骤将环状虚拟节点空间中的节点映射到一个低维的非欧几何空间中。
步骤S1532:对订单N维哈希向量进行自相似度量分析,得到订单哈希向量分形维数;
具体地,使用分形维数(Fractal Dimension)计算算法对每个订单N维哈希向量进行自相似度量分析,得到订单哈希向量分形维数。这一步骤计算了每个订单哈希向量的分形维数,描述了其自相似性或复杂性。
步骤S1533:对N维非欧空间中的每个虚拟节点与订单哈希向量分形维数进行分形相似度测度,得到若干个节点-订单分形距离值;
具体地,使用欧氏距离或相关系数,在N维非欧空间中计算每个虚拟节点与订单哈希向量分形维数之间的相似度。这一步骤计算了每个虚拟节点与订单哈希向量分形维数之间的分形相似度,得到若干个节点-订单分形距离值。
步骤S1534:根据若干个节点-订单分形距离值对订单哈希向量分形维数进行最临近匹配,得到最近虚拟节点距离数据。
具体地,对于每个订单哈希向量,根据其分形维数,找到与其距离最接近的虚拟节点。遍历所有虚拟节点,计算其与订单哈希向量分形维数之间的距离值,并记录下最小距离对应的虚拟节点。将每个订单哈希向量与其最近的虚拟节点的距离值记录下来,形成最近虚拟节点距离数据。
本发明通过非欧几何空间映射和分形相似度测度,能够在面对复杂数据结构时,保持高效的映射和存储能力,提升系统的扩展性。利用分形维数进行订单数据块的映射和匹配,提高了系统在存储节点故障或增加时的容错能力,使系统能够动态调整存储节点分布,保持高效运行。非欧几何空间映射和自相似度量分析方法,提升了数据块的分布均匀性和匹配精度,减少数据访问冲突和延迟,提高数据存储和访问效率。分形相似度测度和最临近匹配方法,确保数据块被存储在最合适的节点,优化数据存储结构,提高系统整体效率。通过精确的订单数据块与存储节点映射,提高数据一致性和可靠性,减少由于数据不一致导致的系统错误和故障。确保数据块在最合适的节点上存储,减少数据迁移和复制过程中的不一致性,提升数据存储的可靠性。通过自动化的非欧几何空间映射和分形相似度测度方法,减少了人工干预和管理成本。存储节点集群映射表的建立,使数据块与物理存储节点的对应关系更加明确,便于系统监控和维护,提高管理的便捷性和有效性。
优选地,步骤S2包括以下步骤:
步骤S21:基于有序订单数据块序列与存储节点集群映射表对存储节点集群中每个存储节点进行Gossip数据库实例部署,得到分布式数据库;
具体地,选择适合分布式环境的Gossip数据库,如Apache Cassandra或ScyllaDB。使用存储节点集群映射表,确定每个存储节点上的数据库实例的数量和位置。对映射表中的每个存储节点,部署相应数量的Gossip数据库实例。使用自动化部署工具或手动配置,在每个存储节点上部署所选的Gossip数据库实例。确保每个数据库实例都能够正确配置和启动,并且加入了数据库集群。验证数据库集群中的所有节点都已成功加入,且集群状态正常。通过以上步骤,得到分布式数据库。
步骤S22:对分布式数据库中各Gossip数据库实例进行矢量时钟初始化,得到节点初始矢量时钟状态数据;
具体地,在每个Gossip数据库实例中,执行矢量时钟的初始化操作。将初始值设置为适当的数值,例如0或当前时间戳,从而得到节点初始矢量时钟状态数据。
步骤S23:基于节点初始矢量时钟状态数据利用分布式数据库中各Gossip数据库实例中的矢量时钟协同器在预设的周期与存储节点集群中的存储节点进行反熵状态交换,得到节点更新矢量时钟状态数据,其中,在反熵状态交换过程中,当接收到其他存储节点的增量状态后,按照因果顺序和节点编号进行递增合并,更新本地矢量时钟;
具体地,在每个Gossip数据库实例中,设置定时任务以触发周期性的状态交换。确定状态交换的周期,并设置相应的定时任务。在每个周期内,每个节点的矢量时钟协同器与存储节点集群中的其他节点进行通信,执行状态交换操作。当收到其他节点的增量状态时,按照因果顺序和节点编号递增合并增量状态,并更新本地矢量时钟。根据合并后的增量状态更新本地节点的矢量时钟状态,从而得到节点更新矢量时钟状态数据。
步骤S24:按照预设的归档周期对各存储节点的节点更新矢量时钟状态数据进行周期性归档,生成有序矢量时钟元组,并广播至整个存储节点集群,得到有序矢量时钟元组数据;
具体地,设置预设的归档周期,确定多久对存储节点的节点更新矢量时钟状态数据进行一次归档操作。在每个归档周期结束时,触发对各存储节点的节点更新矢量时钟状态数据进行归档操作。遍历存储节点集群中的每个节点,收集其更新的矢量时钟状态数据,并生成有序矢量时钟元组。将生成的有序矢量时钟元组数据广播至整个存储节点集群,确保所有节点都能够获取最新的归档数据。
步骤S25:对存储节点集群内各存储节点的有序矢量时钟元组数据进行汇总,得到全局有序维护时间戳序列,其中全局有序维护时间戳序列包括若干个有序矢量时钟元组数据;
具体地,在存储节点集群中的一个节点或者专门的管理节点上,收集存储节点集群内各存储节点的有序矢量时钟元组数据。将收集到的数据进行汇总,生成全局有序维护时间戳序列。
步骤S26:根据全局有序维护时间戳序列对各存储节点存储的订单数据块进行数据一致性检测,得到数据不一致检测结果。
具体地,根据全局有序维护时间戳序列,对存储节点存储的订单数据块进行数据一致性检测。检查每个订单数据块的时间戳与全局有序维护时间戳序列的顺序关系,确保数据的一致性。如果发现数据不一致,则生成数据不一致检测结果,标记相应的数据块以进行后续的修复或处理。
本发明通过Gossip协议和矢量时钟机制,能够动态扩展和容纳新的存储节点,且不会影响现有节点的数据一致性和同步。节点状态的反熵交换和周期性归档,使系统具备较高的容错能力,能够在节点故障或网络分区情况下保持数据一致性。Gossip数据库实例的部署和矢量时钟的使用,提高了系统的数据传播速度和处理效率,减少了数据处理的延迟,提升了系统的整体性能。周期性归档和全局时间戳的广播,有助于及时更新和维护数据状态,优化数据处理的效率和准确性。自动化的矢量时钟初始化、状态交换、归档和一致性检测,减少了人工干预和管理成本。能够自主完成数据同步和一致性维护,提高了管理的便捷性和有效性。全局有序维护时间戳序列的生成和使用,能够直观了解各节点的状态变化,简化系统的监控和维护过程。
优选地,步骤S26包括以下步骤:
步骤S261:基于全局有序维护时间戳序列对全局订单数据事件进行拓扑建模构建,得到全局有序事件图谱,其中每个有序矢量时钟元组数据对应一个事件节点,节点之间的依赖关系由因果顺序和节点编号确定;
具体地,根据全局有序维护时间戳序列,对全局订单数据事件进行拓扑建模构建。每个有序矢量时钟元组数据对应一个事件节点,节点之间的依赖关系由因果顺序和节点编号确定。例如,如果事件A的时间戳早于事件B,那么就存在从事件A到事件B的有向边。将构建的事件节点以及它们之间的依赖关系整合成全局有序事件图谱。确保全局有序事件图谱能够准确地反映订单数据事件之间的顺序关系和依赖关系。
步骤S262:基于存储节点集群对各存储节点进行本地订单数据块序列提取,得到本地订单数据块序列;
具体地,在每个存储节点上,从本地存储中提取订单数据块序列。订单数据块序列应该按照存储节点集群映射表中的顺序进行提取,从而得到本地订单数据块序列。
步骤S263:根据本地订单数据块序列对对应的存储节点进行本地事件拓扑建模,得到本地有序事件图谱;
具体地,例如,假设有两个存储节点,节点A和节点B。节点A包含本地订单数据块序列[A1,A2,A3],节点B包含本地订单数据块序列[B1,B2,B3]。将每个订单数据块视为一个事件节点:A1,A2,A3。根据数据块之间的顺序关系建立事件之间的依赖关系:A1->A2->A3。这表示订单数据块A1发生后,A2才能发生;A2发生后,A3才能发生。构建本地有序事件图谱:节点A上的本地有序事件图谱包含事件节点A1,A2,A3,以及它们之间的依赖关系。类似地,将每个订单数据块视为一个事件节点:B1,B2,B3。根据数据块之间的顺序关系建立事件之间的依赖关系:B1->B2->B3。构建本地有序事件图谱:节点B上的本地有序事件图谱包含事件节点B1,B2,B3,以及它们之间的依赖关系。通过本地事件拓扑建模,每个存储节点都生成了本地的有序事件图谱,反映了订单数据的顺序关系和依赖关系。
步骤S264:对本地有序事件图谱和全局有序事件图谱进行拓扑同构性检测,得到一致性检测结果数据;
具体地,例如,对比节点A和节点B上的本地有序事件图谱与全局有序事件图谱,检查它们的事件节点和依赖关系是否匹配。如果两者之间存在一致的拓扑结构,则一致性检测结果为一致。
步骤S265:若一致性检测结果数据显示本地有序事件图谱和全局有序事件图谱存在不等价关系,则基于全局有序维护时间戳序列对本地有序事件图谱进行矢量时钟状态回溯,得到事件分歧点数据;
具体地,例如,假设节点A和节点B上的本地有序事件图谱与全局有序事件图谱存在不等价关系,表示存在一些事件在本地图谱中存在但在全局图谱中不存在,或者反之。对这些不等价的事件进行矢量时钟状态回溯,找到事件分歧点数据。
步骤S266:对事件分歧点数据进行存储节点映射构建,得到数据不一致检测结果,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
具体地,例如,如果在节点A上的本地事件图谱中发现了一个事件分歧点,表示节点A上的订单数据与全局事件图谱不一致。因此,将节点A标记为包含不一致的订单数据的存储节点,并记录事件分歧点数据。通过对拓扑同构性检测、事件图谱不等价关系检测和存储节点映射构建的操作,可以得到数据不一致检测结果,即哪些存储节点包含不一致的订单数据以及它们对应的事件分歧点数据。
本发明通过建立全局有序事件图谱,能够清晰地理解订单数据的事件顺序和依赖关系。这有助于系统更有效地管理和维护订单数据,提高系统的整体数据管理能力。通过对每个存储节点上的订单数据进行了本地事件拓扑建模,形成了本地有序事件图谱。这能够实时监测和把握每个存储节点上的订单数据状态,及时发现数据不一致的情况。通过对本地有序事件图谱和全局有序事件图谱进行了拓扑同构性检测,以发现数据一致性问题。这可以及时识别和解决数据不一致的情况,确保系统中订单数据的一致性和准确性。如果一致性检测结果数据显示本地有序事件图谱和全局有序事件图谱存在不等价关系,则通过矢量时钟状态回溯得到事件分歧点数据。这有助于确定数据不一致的原因和发生时间,为后续的数据一致性修复提供了重要线索。通过对事件分歧点数据进行存储节点映射构建,进一步确定了数据不一致的具体位置和原因。这有助于更快地定位和修复数据不一致问题,提高系统的数据管理效率和可靠性。
优选地,步骤S3包括以下步骤:
步骤S31:基于数据不一致检测结果对订单数据不一致的存储节点进行波动图谱构建,得到分歧波动图谱,其中,分歧波动图谱中的节点代表存储节点,边代表因果依赖,不一致存储节点根据对应的事件分歧点数据构建分支;
具体地,例如,假设存储节点A和存储节点B包含不一致的订单数据。在波动图谱中,创建节点A和节点B,并根据事件分歧点数据构建分支。节点A和节点B之间的边表示了它们之间的因果依赖关系。例如,事件A1和事件A2代表存储节点A上的两个不一致事件,而事件B1和事件B2则代表存储节点B上的两个相应事件。通过连接这些事件,构建了波动图谱,表示了存储节点之间的数据不一致情况。
步骤S32:对分歧波动图谱中每条分支进行期望熵计算,得到若干个分支期望熵数据;
具体地,例如,假设有一条分支包含了存储节点A和存储节点B之间的事件序列。可以通过分析这些事件之间的关系和依赖程度来计算期望熵。期望熵的高低反映了存储节点之间事件序列的复杂度或者不确定性。如果一个分支的期望熵较高,说明其中的事件序列存在较多的不一致性,即存储节点之间的数据不一致或者发生了较多的分歧;相反,如果期望熵较低,则表示节点之间的事件序列较为一致或者稳定,节点之间的数据达成了一致。
步骤S33:根据若干个分支期望熵数据对分歧波动图谱进行最低期望熵路径识别,得到订单一致路径里程碑分支,其中,订单一致路径里程碑分支对应着存储节点集群中大多数节点达成一致的有序事件序列;
具体地,例如,根据若干个分支期望熵数据与其对应的路径分支,从中选择期望熵最低的分支作为订单一致路径里程碑分支。这个分支对应的事件序列在存储节点集群中得到了广泛的认可,因为大多数节点都参与了这个序列的形成,从而使得这个分支代表了最高的一致性水平。举例来说,假设有三条分支,它们分别的期望熵为0.1、0.3和0.2。在这种情况下,选择期望熵为0.1的分支作为订单一致路径里程碑分支,因为它具有最低的期望熵,代表了存储节点集群中最高的一致性水平。
步骤S34:对分歧波动图谱进行共识收敛建模,得到订单共识修剪器;利用订单共识修剪器对分歧波动图谱进行异常分支扫描标识,得到存储节点异常分支图;
具体地,例如,选择拜占庭容错算法作为共识算法,并设计一个修剪策略,要求任何一个存储节点的事件序列都必须与大多数节点的事件序列达成一致,实现了一个共识修剪器,它能够对分歧波动图谱进行扫描,并标识出所有不符合一致性标准的异常分支。例如,如果在分歧波动图谱中发现了一个事件序列,其中节点A和节点B的行为与其他节点不一致,那么这个事件序列就会被标识为异常分支。
步骤S35:根据存储节点异常分支图与订单一致路径里程碑分支利用订单共识修剪器对分歧波动图谱进行异常路径剪枝并植入操作,得到存储节点归一化图谱;
具体地,例如,假设存储节点异常分支图中存在一条异常分支,与订单一致路径里程碑分支不一致。使用订单共识修剪器来剪除这条异常分支。然后,将订单一致路径里程碑分支植入到被剪掉的异常分支位置上,取代原来的不一致分支。最终,得到的修正后的存储节点图谱能够反映出存储节点集群中数据的一致性情况。
步骤S36:基于存储节点归一化图谱进行共识拓扑构建,得到订单一致性事件链;
具体地,例如,根据存储节点归一化图谱中的事件序列构建共识拓扑。遍历图谱中的事件序列,并根据节点之间的协议和共识机制,确定一个所有节点都能达成一致的事件序列。在构建共识拓扑时,确保所有节点都能认可最终的事件序列,以保证订单数据的一致性。构建完共识拓扑后,得到订单一致性事件链,这是一个所有存储节点集群中的节点都认可的有序事件序列。例如,假设存储节点归一化图谱中有三个事件序列:[A,B,C],[A,B,D],和[A,E,F]。通过共识拓扑构建,确定了事件序列[A,B,D],因为所有节点都认可这个序列。因此,[A,B,D]就成为了订单一致性事件链的一部分。推理过程如下:在存储节点归一化图谱中,有三个事件序列:[A,B,C]、[A,B,D]和[A,E,F],分别对应于节点1、节点2和节点3。首先,识别出所有事件序列的公共前缀为[A]和[A,B]。分析各节点的认可情况,节点1认可[A,B,C],节点2认可[A,B,D],节点3认可[A,E,F]。为了达成共识,需要找到被多数节点(超过半数)认同的事件序列。在[A,B]之后,事件序列分叉为[C]、[D]和[E,F]。如果[A,B,C]要被大多数节点认同,则必须有超过半数的节点包含这个序列。然而,只有节点1包含[A,B,C],而节点2和节点3不包含[C],因此[A,B,C]不是大多数节点认同的序列。相反,[A,B,D]出现在节点2中,节点1和节点2对前缀[A,B]达成一致。虽然节点1的完整序列是[A,B,C],但[A,B,D]的序列中包含了更多节点认可的[D]。假设必须选择一个序列来达成全局一致性,虽然[A,B,C]在节点1中存在,但它在节点2和节点3中不存在。而[A,B,D]在节点2中存在,节点1和节点3必须选择一个与其序列更接近的分支以达成一致。节点3的[A,E,F]完全不同于其他两个节点的序列,因此它必须选择与其他节点有公共部分的序列进行一致。因此,通过共识机制和节点认可的分析,[A,B,D]被大多数节点确认,并成为订单一致性事件链的一部分。这解释了为什么[A,B,D]是被大多数节点确认的路径,而[A,B,C]由于没有在超过半数的节点中出现,不能成为一致性事件链的一部分。
步骤S37:根据存储节点映射表对订单一致性事件链进行事件解码还原,得到一致性订单数据块序列,并将一致性订单数据块序列回写至原存储节点集群,完成同步,得到同步总订单数据。
具体地,例如,根据存储节点映射表,对订单一致性事件链进行解码还原。这意味着将事件序列转换回订单数据块序列的过程。解码还原后,得到了一致性的订单数据块序列。接下来,将一致性订单数据块序列回写至原存储节点集群中的对应节点,以完成数据的同步。通过将一致性订单数据块序列回写至存储节点集群,整个存储节点集群就得到了同步的总订单数据。例如,假设存储节点映射表指示某个事件序列[A,B,D]对应的存储节点是节点X。将该事件序列还原为订单数据块序列,并将这些数据块回写到存储节点X中,以完成同步。
本发明通过基于数据不一致检测结果构建了分歧波动图谱。这个波动图谱清晰地展示了存储节点之间的因果依赖关系,以及不一致存储节点的分支情况。这能够准确地定位并描述数据不一致的来源和影响范围。通过对分歧波动图谱中的每条分支进行期望熵计算,得到了若干个分支期望熵数据。这有助于评估不一致分支的重要性和影响程度,为后续的修复提供了重要参考。通过利用期望熵数据识别了订单一致路径里程碑分支。订单一致路径里程碑分支代表着存储节点集群中大多数节点达成一致的有序事件序列,为后续提供了一致性数据修复的方向和路径。通过进行共识收敛建模,得到了订单共识修剪器。这个修剪器能够识别并标识出存储节点异常分支图,有助于进一步分析和处理异常情况。通过订单共识修剪器对分歧波动图谱进行异常路径剪枝,并植入操作,得到了存储节点归一化图谱。这确保了数据修复过程的有效性和准确性,为数据一致性提供了保障。通过基于存储节点归一化图谱构建了共识拓扑,得到了订单一致性事件链。这条一致性事件链代表了订单数据修复的全过程,确保了修复过程的顺利进行和数据一致性的最终实现。通过根据存储节点映射表对订单一致性事件链进行事件解码还原,得到一致性订单数据块序列,并将其回写至原存储节点集群,完成了同步。这确保了订单数据的一致性和完整性,提高了系统的数据管理效率和可靠性。
优选地,步骤S32包括以下步骤:
步骤S321:对分歧波动图谱中每条分支进行存储节点编码,得到存储节点编码序列,其中,每个存储节点按照在分支中的拓扑顺序赋予一个唯一的编号;
具体地,例如,识别出分歧波动图谱中的各个分支,并按照拓扑顺序对每个存储节点进行编码,使每个节点都有一个唯一的编号。例如,假设分歧波动图谱中有以下几条分支:分支1包含节点A、节点B、节点C,分支2包含节点A、节点D、节点E,分支3包含节点F、节点G、节点H。按照拓扑顺序对这些节点进行编码,分支1的存储节点编码序列为[1,2,3],分支2的存储节点编码序列为[1,4,5],分支3的存储节点编码序列为[6,7,8]。
步骤S322:对所述每条分支的存储节点编码序列进行节点信任值提取,得到存储节点信任值集;
具体地,例如,根据每个存储节点的历史行为和性能指标提取其信任值,这些信任值是基于节点的响应时间、数据准确性和一致性因素得到的。例如,假设节点A的信任值为0.9,节点B的信任值为0.85,节点C的信任值为0.8,节点D的信任值为0.75,节点E的信任值为0.7,节点F的信任值为0.95,节点G的信任值为0.9,节点H的信任值为0.85。于是可以得到以下存储节点信任值集:分支1的信任值集为[0.9,0.85,0.8],分支2的信任值集为[0.9,0.75,0.7],分支3的信任值集为[0.95,0.9,0.85]。其中,信任值的具体计算过程如下:信任值的计算基于存储节点的历史行为和性能指标,包括响应时间(RT)、数据准确性(DA)和一致性(C)因素。信任值的计算公式为:信任值=wRT×响应时间评分+wDA×数据准确性评分+wC×一致性评分,其中wRT、wDA和wC分别为响应时间、数据准确性和一致性的权重,总和为1。设置wRT=0.3、wDA=0.4、wC=0.3。
步骤S323:基于存储节点信任值集对所述每条分支进行马尔可夫链式信任传递建模,得到分支信任传递矩阵;
具体地,例如,对于分支1,其初始信任值集为[0.9,0.85,0.8],计算从节点A到节点B的信任传递为0.9×0.85=0.765,从节点B到节点C的信任传递为0.765×0.8=0.612。因此,分支1的信任传递矩阵为:对于分支2,其初始信任值集为[0.9,0.75,0.7],信任传递矩阵为:对于分支3,其初始信任值集为[0.95,0.9,0.85],信任传递矩阵为:通过这些步骤,可以得到每条分支的信任传递矩阵,从而评估各分支的信任水平,为后续的分支分析和选择提供基础数据。
步骤S324:根据分支信任传递矩阵对所述每条分支进行整体信任权重值计算,得到分支信任权重值;
具体地,对分支信任传递矩阵中的信任值进行汇总和归一化处理,计算每条分支的整体信任权重值。例如,对于分支1,其信任传递矩阵为:计算整体信任权重值为各节点信任值的累积值。采用累积信任值的方式,分支1的整体信任权重值为0.9+0.765+0.612=2.277。类似地,对于分支2和分支3,分别计算得到其整体信任权重值。
步骤S325:对所述每条分支进行拓扑长度测算,得到分支长度数据;
具体地,例如,对于分支1,其存储节点编码序列为[1,2,3],节点之间的距离为1个单位距离,则分支1的拓扑长度为2(即节点之间的连接数)。类似地,分支2的拓扑长度为2,分支3的拓扑长度为2。通过这种方式,可以得到每条分支的拓扑长度数据。
步骤S326:基于分支信任权重值与分支长度数据对对应的分支进行期望熵计算,得到分支期望熵数据,待完全遍历分歧波动图谱中每条分支,即得到若干个分支期望熵数据。
具体地,例如,对于分支1,其信任权重值为2.277,拓扑长度为2,使用以下公式计算期望熵:期望熵=信任权重值/拓扑长度。对于分支1,期望熵为2.277/2=1.1385。类似地,计算分支2和分支3的期望熵,分别得到期望熵数据。通过完全遍历分歧波动图谱中的每条分支,可以得到若干个分支期望熵数据。
本发明通过对分歧波动图谱中的每条分支进行了存储节点编码。这个编码序列为每个存储节点赋予了一个唯一的编号,按照它们在分支中的拓扑顺序进行排序。这有助于对存储节点在不同分支中的位置和关系进行准确描述和识别。通过对每条分支的存储节点编码序列进行了节点信任值提取,得到了存储节点信任值集。这可以基于节点的历史行为和数据一致性因素来评估节点的可信度。通过基于存储节点信任值集对每条分支进行了马尔可夫链式信任传递建模,得到了分支信任传递矩阵。这能够有效地描述存储节点之间的信任传递关系,为评估分支的整体可信度提供了方法和手段。通过根据分支信任传递矩阵对每条分支进行了整体信任权重值的计算,得到了分支信任权重值。这一数值表示了每条分支在整体数据修复过程中的重要性和可信度。通过对每条分支进行了拓扑长度的测算,得到了分支长度数据。这一数据反映了每条分支的拓扑结构和复杂程度。通过基于分支信任权重值与分支长度数据对每条分支进行了期望熵的计算,得到了分支期望熵数据。这一数据综合考虑了信任权重和分支长度因素,为评估每条分支的重要性和修复难度提供了全面的信息和指导。
优选地,本发明还提供了一种订单数据的同步系统,用于执行如上所述的订单数据的同步方法,该订单数据的同步系统包括:
订单数据采集模块,用于对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;
分布式数据库构建模块,用于基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列;根据全局有序维护时间戳序列对对应存储节点的订单数据块进行数据一致性检测,得到数据不一致检测结果;
一致性数据处理模块,用于根据数据不一致检测结果对存储节点集群映射表进行多数据投票共识达成,得到一致性订单数据;基于存储节点集群映射表将一致性订单数据回写至原存储节点,得到同步总订单数据,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
本发明中,通过订单数据采集模块实现了对电子商务系统订单数据的实时采集,确保订单数据的及时获取和处理。通过对原始订单数据的分块及哈希映射,将数据精确分配到特定的存储节点,有序地管理订单数据块序列与存储节点集群映射表,提高了数据管理的系统性和效率。通过分布式数据库构建模块基于有序订单数据块序列与存储节点集群映射表,构建高效的分布式数据库,能够有效应对电子商务系统的高并发和大数据量处理需求。通过维护逻辑矢量时钟记录和全局有序维护时间戳序列,实现了对数据的一致性检测和维护,确保系统在高负载环境下依然保持高性能和高效能。通过全局有序维护时间戳序列,能够及时发现并定位数据不一致的问题,确保系统中的数据一致性。通过采用分布式架构,将订单数据分散存储在多个节点中,即使个别节点发生故障,也不会影响系统的整体运行,提高了系统的容错能力和可靠性。通过一致性数据处理模块,将一致性订单数据回写至原存储节点,确保数据的一致性和完整性,即使在复杂网络环境下也能有效运行。
优选地,本发明还提供了一种订单数据的同步设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种订单数据的同步方法。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在申请文件的等同要件的含义和范围内的所有变化涵括在本发明内。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所发明的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种订单数据的同步方法,其特征在于,包括以下步骤:
步骤S1:对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;
步骤S2:基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列;根据全局有序维护时间戳序列对对应存储节点的订单数据块进行数据一致性检测,得到数据不一致检测结果;
步骤S3:根据数据不一致检测结果对存储节点集群映射表进行多数据投票共识达成,得到一致性订单数据;基于存储节点集群映射表将一致性订单数据回写至原存储节点,得到同步总订单数据,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
2.根据权利要求1所述的订单数据的同步方法,其特征在于,步骤S1包括以下步骤:
步骤S11:对电子商务系统进行订单事件探针部署,得到订单事件监控代理;
步骤S12:利用订单事件监控代理对电子商务系统进行订单事务数据流实时捕获,得到原始订单数据;
步骤S13:对原始订单数据进行格式规范化处理,得到规范订单数据;
步骤S14:对规范订单数据进行分块,得到有序订单数据块序列;
步骤S15:基于有序订单数据块序列通过环状虚拟节点映射对每个订单数据块进行存储节点映射,得到存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点。
3.根据权利要求2所述的订单数据的同步方法,其特征在于,步骤S15包括以下步骤:
步骤S151:对电子商务系统进行N维环状虚拟节点空间构建,得到N维环状虚拟节点空间,其中在N维环状虚拟节点空间中物理存储节点按一致性哈希算法映射至N维环上,每个物理存储节点在环上均匀分布有M个虚拟节点;
步骤S152:采用分形哈希编码算法对有序订单数据块序列中每个订单数据块进行编码,得到若干个订单N维哈希向量;
步骤S153:基于N维环状虚拟节点空间对每个订单N维哈希向量进行距离测度,得到最近虚拟节点距离数据;
步骤S154:将最近虚拟节点距离数据对应的虚拟节点映射回物理存储节点,并将订单数据块与对应的物理存储节点记录在存储节点集群映射表中;
步骤S155:重复步骤S153和S154,直至所有订单数据块均完成节点映射,即得到存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点。
4.根据权利要求3所述的订单数据的同步方法,其特征在于,步骤S153包括以下步骤:
步骤S1531:对N维环状虚拟节点空间进行非欧几何空间映射,得到N维非欧空间;
步骤S1532:对订单N维哈希向量进行自相似度量分析,得到订单哈希向量分形维数;
步骤S1533:对N维非欧空间中的每个虚拟节点与订单哈希向量分形维数进行分形相似度测度,得到若干个节点-订单分形距离值;
步骤S1534:根据若干个节点-订单分形距离值对订单哈希向量分形维数进行最临近匹配,得到最近虚拟节点距离数据。
5.根据权利要求1所述的订单数据的同步方法,其特征在于,步骤S2包括以下步骤:
步骤S21:基于有序订单数据块序列与存储节点集群映射表对存储节点集群中每个存储节点进行Gossip数据库实例部署,得到分布式数据库;
步骤S22:对分布式数据库中各Gossip数据库实例进行矢量时钟初始化,得到节点初始矢量时钟状态数据;
步骤S23:基于节点初始矢量时钟状态数据利用分布式数据库中各Gossip数据库实例中的矢量时钟协同器在预设的周期与存储节点集群中的存储节点进行反熵状态交换,得到节点更新矢量时钟状态数据,其中,在反熵状态交换过程中,当接收到其他存储节点的增量状态后,按照因果顺序和节点编号进行递增合并,更新本地矢量时钟;
步骤S24:按照预设的归档周期对各存储节点的节点更新矢量时钟状态数据进行周期性归档,生成有序矢量时钟元组,并广播至整个存储节点集群,得到有序矢量时钟元组数据;
步骤S25:对存储节点集群内各存储节点的有序矢量时钟元组数据进行汇总,得到全局有序维护时间戳序列,其中全局有序维护时间戳序列包括若干个有序矢量时钟元组数据;
步骤S26:根据全局有序维护时间戳序列对各存储节点存储的订单数据块进行数据一致性检测,得到数据不一致检测结果。
6.根据权利要求5所述的订单数据的同步方法,其特征在于,步骤S26包括以下步骤:
步骤S261:基于全局有序维护时间戳序列对全局订单数据事件进行拓扑建模构建,得到全局有序事件图谱,其中每个有序矢量时钟元组数据对应一个事件节点,节点之间的依赖关系由因果顺序和节点编号确定;
步骤S262:基于存储节点集群对各存储节点进行本地订单数据块序列提取,得到本地订单数据块序列;
步骤S263:根据本地订单数据块序列对对应的存储节点进行本地事件拓扑建模,得到本地有序事件图谱;
步骤S264:对本地有序事件图谱和全局有序事件图谱进行拓扑同构性检测,得到一致性检测结果数据;
步骤S265:若一致性检测结果数据显示本地有序事件图谱和全局有序事件图谱存在不等价关系,则基于全局有序维护时间戳序列对本地有序事件图谱进行矢量时钟状态回溯,得到事件分歧点数据;
步骤S266:对事件分歧点数据进行存储节点映射构建,得到数据不一致检测结果,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
7.根据权利要求1所述的订单数据的同步方法,其特征在于,步骤S3包括以下步骤:
步骤S31:基于数据不一致检测结果对订单数据不一致的存储节点进行波动图谱构建,得到分歧波动图谱,其中,分歧波动图谱中的节点代表存储节点,边代表因果依赖,不一致存储节点根据对应的事件分歧点数据构建分支;
步骤S32:对分歧波动图谱中每条分支进行期望熵计算,得到若干个分支期望熵数据;
步骤S33:根据若干个分支期望熵数据对分歧波动图谱进行最低期望熵路径识别,得到订单一致路径里程碑分支,其中,订单一致路径里程碑分支对应着存储节点集群中大多数节点达成一致的有序事件序列;
步骤S34:对分歧波动图谱进行共识收敛建模,得到订单共识修剪器;利用订单共识修剪器对分歧波动图谱进行异常分支扫描标识,得到存储节点异常分支图;
步骤S35:根据存储节点异常分支图与订单一致路径里程碑分支利用订单共识修剪器对分歧波动图谱进行异常路径剪枝并植入操作,得到存储节点归一化图谱;
步骤S36:基于存储节点归一化图谱进行共识拓扑构建,得到订单一致性事件链;
步骤S37:根据存储节点映射表对订单一致性事件链进行事件解码还原,得到一致性订单数据块序列,并将一致性订单数据块序列回写至原存储节点集群,完成同步,得到同步总订单数据。
8.根据权利要求7所述的订单数据的同步方法,其特征在于,步骤S32包括以下步骤:
步骤S321:对分歧波动图谱中每条分支进行存储节点编码,得到存储节点编码序列,其中,每个存储节点按照在分支中的拓扑顺序赋予一个唯一的编号;
步骤S322:对所述每条分支的存储节点编码序列进行节点信任值提取,得到存储节点信任值集;
步骤S323:基于存储节点信任值集对所述每条分支进行马尔可夫链式信任传递建模,得到分支信任传递矩阵;
步骤S324:根据分支信任传递矩阵对所述每条分支进行整体信任权重值计算,得到分支信任权重值;
步骤S325:对所述每条分支进行拓扑长度测算,得到分支长度数据;
步骤S326:基于分支信任权重值与分支长度数据对对应的分支进行期望熵计算,得到分支期望熵数据,待完全遍历分歧波动图谱中每条分支,即得到若干个分支期望熵数据。
9.一种订单数据的同步系统,其特征在于,用于执行如权利要求1所述的订单数据的同步方法,该订单数据的同步系统包括:
订单数据采集模块,用于对电子商务系统进行订单实时采集,得到原始订单数据;对原始订单数据进行分块及哈希映射,得到有序订单数据块序列与存储节点集群映射表,其中有序订单数据块序列与存储节点集群映射表一一对应,每个订单数据块对应唯一的存储节点;
分布式数据库构建模块,用于基于有序订单数据块序列与存储节点集群映射表进行分布式数据库构建,得到分布式数据库;对分布式数据库中每个存储节点进行维护逻辑矢量时钟记录,得到全局有序维护时间戳序列;根据全局有序维护时间戳序列对对应存储节点的订单数据块进行数据一致性检测,得到数据不一致检测结果;
一致性数据处理模块,用于根据数据不一致检测结果对存储节点集群映射表进行多数据投票共识达成,得到一致性订单数据;基于存储节点集群映射表将一致性订单数据回写至原存储节点,得到同步总订单数据,其中数据不一致检测结果包括订单数据不一致的存储节点与其对应的事件分歧点数据。
10.一种订单数据的同步设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至8任一项所述的订单数据的同步方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410648831.3A CN118520045B (zh) | 2024-05-23 | 2024-05-23 | 一种订单数据的同步方法、系统及设备 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410648831.3A CN118520045B (zh) | 2024-05-23 | 2024-05-23 | 一种订单数据的同步方法、系统及设备 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN118520045A true CN118520045A (zh) | 2024-08-20 |
| CN118520045B CN118520045B (zh) | 2024-11-29 |
Family
ID=92282164
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202410648831.3A Active CN118520045B (zh) | 2024-05-23 | 2024-05-23 | 一种订单数据的同步方法、系统及设备 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN118520045B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN121486381A (zh) * | 2026-01-08 | 2026-02-06 | 五凌电力有限公司 | 一种分布式集控数据同步方法及系统 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120017037A1 (en) * | 2010-04-12 | 2012-01-19 | Riddle Thomas A | Cluster of processing nodes with distributed global flash memory using commodity server technology |
| CN114493799A (zh) * | 2022-02-16 | 2022-05-13 | 广州宸祺出行科技有限公司 | 一种分库分表管理专车订单数据的方法及系统 |
| CN114510539A (zh) * | 2022-04-18 | 2022-05-17 | 北京易鲸捷信息技术有限公司 | 分布式数据库一致性检查点的生成及应用方法 |
| CN116431615A (zh) * | 2023-05-19 | 2023-07-14 | 深圳计算科学研究院 | 一种面向复杂业务场景的灵活数据分区路由方法 |
| CN117251887A (zh) * | 2023-09-21 | 2023-12-19 | 浙江毫微米科技有限公司 | 具有人工智能节点的区块链系统 |
| CN117459597A (zh) * | 2023-10-26 | 2024-01-26 | 天翼电子商务有限公司 | 基于哈希环的请求处理方法及装置、电子设备及存储介质 |
-
2024
- 2024-05-23 CN CN202410648831.3A patent/CN118520045B/zh active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120017037A1 (en) * | 2010-04-12 | 2012-01-19 | Riddle Thomas A | Cluster of processing nodes with distributed global flash memory using commodity server technology |
| CN114493799A (zh) * | 2022-02-16 | 2022-05-13 | 广州宸祺出行科技有限公司 | 一种分库分表管理专车订单数据的方法及系统 |
| CN114510539A (zh) * | 2022-04-18 | 2022-05-17 | 北京易鲸捷信息技术有限公司 | 分布式数据库一致性检查点的生成及应用方法 |
| CN116431615A (zh) * | 2023-05-19 | 2023-07-14 | 深圳计算科学研究院 | 一种面向复杂业务场景的灵活数据分区路由方法 |
| CN117251887A (zh) * | 2023-09-21 | 2023-12-19 | 浙江毫微米科技有限公司 | 具有人工智能节点的区块链系统 |
| CN117459597A (zh) * | 2023-10-26 | 2024-01-26 | 天翼电子商务有限公司 | 基于哈希环的请求处理方法及装置、电子设备及存储介质 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN121486381A (zh) * | 2026-01-08 | 2026-02-06 | 五凌电力有限公司 | 一种分布式集控数据同步方法及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118520045B (zh) | 2024-11-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11516072B2 (en) | Hybrid cluster recovery techniques | |
| US7895501B2 (en) | Method for auditing data integrity in a high availability database | |
| US7546333B2 (en) | Methods and systems for predictive change management for access paths in networks | |
| CN111723160A (zh) | 一种多源异构增量数据同步方法及系统 | |
| CN117424794B (zh) | 根因定位方法、通信设备及计算机可读存储介质 | |
| Nikolić et al. | Self-healing dilemmas in distributed systems: Fault correction vs. fault tolerance | |
| CN110740054B (zh) | 一种基于强化学习的数据中心虚拟化网络故障诊断方法 | |
| CN110569142A (zh) | 一种oracle数据增量同步系统及方法 | |
| CN120676067A (zh) | 统一接口标准的多协议可扩展数据采集系统架构及方法 | |
| CN117349083A (zh) | 大数据灾备管理方法、装置、设备及存储介质 | |
| CN118520045A (zh) | 一种订单数据的同步方法、系统及设备 | |
| CN118672874A (zh) | 一种链路追踪和异常捕获的系统 | |
| CN109542781A (zh) | 区块链共识算法测试方法、装置、计算装置和存储介质 | |
| CN120743888B (zh) | 跨平台数据库异构迁移及容错控制方法及系统 | |
| CN119718358B (zh) | 基于服务器集群的多数据库部署方法 | |
| CN115934819A (zh) | 一种工业时序数据库通用分布式扩展方法 | |
| CN120030000A (zh) | 多模态分布式数据库的处理方法、装置、设备、存储介质及程序产品 | |
| CN119520249A (zh) | 一种基于日志埋点的服务集群的链路追踪方法及系统 | |
| EP4722922A1 (en) | State data restoration method and apparatus for blockchain, computer device, and medium | |
| CN118656093A (zh) | 一种软件基础数据升级方法及系统 | |
| US20250168089A1 (en) | Iterative building of incomplete command structures in a fixed-size communication regime | |
| JP2001028594A (ja) | データ複製方法およびデータ複製プログラムを記録した記録媒体 | |
| CN121690997A (zh) | 运营商设备故障定位方法、系统、介质和产品 | |
| CN119003283B (zh) | 云边联合计算的设备开机率汇总算法及系统 | |
| CN119396851B (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 |