简介有向无环图DAG

2024-04-08 17:36
文章标签 简介 dag 环图

本文主要是介绍简介有向无环图DAG,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Sui创纪录的每秒交易量部分归功于数学构造,即有向无环图(Directed Acyclic Graph,DAG),该构造通过以最高效的方式处理交易来加速网络交易,而不是按照先来先服务的线性进展。

区块链是设计用于确保数据完整性的分布式账本,将有向无环图的非线性特性与区块链相结合,是将两种技术的优点结合在一起。作为一个区块链网络,Sui保留了数据对象的历史性和监护性,而其基于DAG的共识系统使对这些数据对象的操作变得灵活。

什么是DAG?

DAG是一种不同于传统区块链线性链结构的数据结构。与区块链不同,区块链由以线性方式链接在一起的区块组成,DAG更像是一个互相连接的节点网络。要理解DAG,让我们首先反向分解首字母缩写。

在分布式分类帐本技术的背景下,图形数据库使用类似于关系网的互连结构组织数据。每个个体数据条目(或交易)与其他数据条目的关系被用来形成基于因果关系的信息网络。通过这种方法,复杂的交易关系和依赖关系被捕获在网络中。

在定义中添加无环意味着无法在分类帐本或数据库中创建循环或循环。换句话说,不可能在数据库中创建一条导致早期交易依赖于后期交易的路径。这种特性确保了信息以单向流动,将我们带到缩写的最后一部分,即有向。作为有向图,每个关系都有一个定义的方向,指示数据库内信息的流动。有向性允许清晰且明确的数据流动,这对于维护完整性和促进交易的高效处理至关重要。

DAG中的交易与其他交易具有明确的关系,形成了类似网的结构。请注意,最终每个交易都会被所有节点观察到,并且为简单起见,此图像仅显示了一个交易仅被单个节点观察到的情况。

总之,DAG是一种以信息或交易的相互依赖为基础互连的网络结构数据库,形成一个随着每笔新交易而扩展的图形。

区块链和DAG

区块链通常将一组交易打包成一个区块,然后将其作为单个实体通过共识过程。区块以线性方式相互链接,这要求网络的状态在逐个区块的基础上以逐步方式发生变化。另一方面,DAG中的交易能够独立达成共识,绕过将许多交易分组到一个区块进行共识的过程。

在区块链中,所有网络验证节点都有一个共同的网络状态,他们都从中工作。验证节点同时评估一组交易,并且在超过半数的情况下达成一致意见之前不能继续进行。要使区块被视为有效并被固定到区块链中,该区块中的所有交易都必须有效。如果区块中的单个交易无效,那么整个区块将被丢弃,并且必须在不包括无效交易的情况下重新创建。在区块链中达成共识要求验证节点一起操作,逐个区块地批准交易。

与区块链中如何实现共识类似,DAG中的交易在被网络验证节点的超过半数签署后达成共识。一个关键区别在于DAG中的每个验证节点都有网络状态的不同子集。换句话说,整个网络状态不是存储在每个验证节点中的,而是只能通过累积各个验证节点对网络的理解来观察。

没有一个交易区块是一次由所有验证节点验证的,而是单个交易通过网络传播,获取具有网络状态知识的各个验证节点的签名以验证交易。一旦交易获得了网络验证节点超过半数的签名,它就达成了共识并被视为已最终确定。

由于这种结构,利用DAG进行交易传播和共识使得交易能够以异步和并发的方式进行确认,相比区块链提供了一种更加灵活和可扩展的方法。

从DAG到Sui区块链

Sui利用DAG进行交易传播和共识,然后在一个单独的过程中将交易排序为检查点,这类似于区块。检查点以线性方式相互链接和排序,类似于典型区块链的结构。Sui区块链结构的主要区别在于,分组到检查点中的交易已经最终确定,与典型的区块链结构不同,典型的区块链结构将尚未最终确定的交易分组到区块中。

Sui区块链结构的主要区别在于,分组到检查点中的交易已经最终确定,与典型的区块链结构不同,典型的区块链结构将尚未最终确定的交易分组到区块中。

融会贯通

Sui的创新方法结合了DAG和区块链的最佳特性,创造了一个速度和灵活性无与伦比的网络。通过利用DAG进行交易传播和共识,Sui确保交易可以以异步和并发的方式进行确认,相比传统的区块链系统,这使得系统更具可扩展性和效率。然而,为了维护历史信息的完整性和顺序,Sui采用了一个单独的过程将交易组织成检查点,类似于区块链中的区块。

然后,这些检查点被链接在一起,并以线性方式排序,为存储和访问历史数据提供了熟悉的结构。与传统的区块链不同,在Sui中,包含在检查点中的交易已经最终确定,提供了一种简化和高效的交易验证和存储方法。

这种混合架构使得Sui能够充分利用DAG和区块链的优势,为去中心化应用和智能合约创造了一个强大而灵活的平台。

注意:此内容仅供一般教育和信息目的使用,并不构成买卖或持有任何资产、投资或金融产品的认可或推荐,并且不构成财务、法律或税务建议。


关于 Sui Network

Sui是基于第一原理重新设计和构建而成的L1公有链,旨在为创作者和开发者提供能够承载Web3中下一个十亿用户的开发平台。Sui上的应用基于Move智能合约语言,并具有水平可扩展性,让开发者能够快速且低成本支持广泛的应用开发。获取更多信息:https://linktr.ee/sui_apac

官网|英文Twitter|中文Twitter|Discord|英文电报群|中文电报群

这篇关于简介有向无环图DAG的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/886168

相关文章

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

业务协同平台--简介

一、使用场景         1.多个系统统一在业务协同平台定义协同策略,由业务协同平台代替人工完成一系列的单据录入         2.同时业务协同平台将执行任务推送给pda、pad等执行终端,通知各人员、设备进行作业执行         3.作业过程中,可设置完成时间预警、作业节点通知,时刻了解作业进程         4.做完再给你做过程分析,给出优化建议         就问你这一套下

容器编排平台Kubernetes简介

目录 什么是K8s 为什么需要K8s 什么是容器(Contianer) K8s能做什么? K8s的架构原理  控制平面(Control plane)         kube-apiserver         etcd         kube-scheduler         kube-controller-manager         cloud-controlle

【Tools】AutoML简介

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样                      🎵 方芳《摇太阳》 AutoML(自动机器学习)是一种使用机器学习技术来自动化机器学习任务的方法。在大模型中的AutoML是指在大型数据集上使用自动化机器学习技术进行模型训练和优化。

SaaS、PaaS、IaaS简介

云计算、云服务、云平台……现在“云”已成了一个家喻户晓的概念,但PaaS, IaaS 和SaaS的区别估计还没有那么多的人分得清,下面就分别向大家普及一下它们的基本概念: SaaS 软件即服务 SaaS是Software-as-a-Service的简称,意思是软件即服务。随着互联网技术的发展和应用软件的成熟, 在21世纪开始兴起的一种完全创新的软件应用模式。 它是一种通过Internet提供

LIBSVM简介

LIBSVM简介 支持向量机所涉及到的数学知识对一般的化学研究者来说是比较难的,自己编程实现该算法难度就更大了。但是现在的网络资源非常发达,而且国际上的科学研究者把他们的研究成果已经放在网络上,免费提供给用于研究目的,这样方便大多数的研究者,不必要花费大量的时间理解SVM算法的深奥数学原理和计算机程序设计。目前有关SVM计算的相关软件有很多,如LIBSVM、mySVM、SVMLight等,这些

urllib与requests爬虫简介

urllib与requests爬虫简介 – 潘登同学的爬虫笔记 文章目录 urllib与requests爬虫简介 -- 潘登同学的爬虫笔记第一个爬虫程序 urllib的基本使用Request对象的使用urllib发送get请求实战-喜马拉雅网站 urllib发送post请求 动态页面获取数据请求 SSL证书验证伪装自己的爬虫-请求头 urllib的底层原理伪装自己的爬虫-设置代理爬虫coo

新一代车载(E/E)架构下的中央计算载体---HPC软件架构简介

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节能减排。 无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事.而不是让内心的烦躁、焦虑、毁掉你本就不多的热情和定力。 时间不知不觉中,快要来到夏末秋初。一年又过去了一大半,成

AI学习指南深度学习篇-带动量的随机梯度下降法简介

AI学习指南深度学习篇 - 带动量的随机梯度下降法简介 引言 在深度学习的广阔领域中,优化算法扮演着至关重要的角色。它们不仅决定了模型训练的效率,还直接影响到模型的最终表现之一。随着神经网络模型的不断深化和复杂化,传统的优化算法在许多领域逐渐暴露出其不足之处。带动量的随机梯度下降法(Momentum SGD)应运而生,并被广泛应用于各类深度学习模型中。 在本篇文章中,我们将深入探讨带动量的随

OpenGL ES学习总结:基础知识简介

什么是OpenGL ES? OpenGL ES (为OpenGL for Embedded System的缩写) 为适用于嵌入式系统的一个免费二维和三维图形库。 为桌面版本OpenGL 的一个子集。 OpenGL ES管道(Pipeline) OpenGL ES 1.x 的工序是固定的,称为Fix-Function Pipeline,可以想象一个带有很多控制开关的机器,尽管加工