2021-09-06


区块链是一种分布式数据存储机制,是使用密码学方法链接的数据块,每一个数据块中记录了一批当时网络交易的信息,包含用于验证其信息的有效性(利用签名防伪)和生成区块的协同信息。它具有分散的、匿名的、透明的和可追踪的的特点。

区块链结构

在这里插入图片描述
一个区块由区块头与块身组成:
块头包含区块编号,前一区块哈希值,随机数,时间戳,当前区块哈希值、哈希指针以及Merkle root组成。
块身中存储交易列表信息,采用Merkle树结构。它是一类基于哈希指针的二叉树或多叉树,其叶子节点上的值通常为数据块的哈希值,而非叶子节点上的值是该节点的所有子节点的组合结果的哈希值。

区块链类型

1、公有链
公共链是最开放的区块链。任何人都可以参与区块链上数据的维护和读取,并可以自由加入和退出区块链。
2、私有链
私有链是最封闭的,分散程度最低。它仅限于在企业或个人成员内部使用。链上内容的查询和阅读权限可以部分向公众开放。
3、联盟链
联盟链是半开放的,只有联盟组织内的成员才能参与。链上的其他节点可以查询联盟链上的内容,但不能参与链中的共识过程。

共识机制

共识机制是区块链系统中维持数据一致性的基础。每个网络节点利用自身计算资源寻找特定前缀的哈希值以竞争区块记账权,只有完成一定计算工作量并提供证明的节点才可以生成区块。常用的有工作量证明PoW,权益证明PoS授权权益证明DPOS实用拜占庭容错PBFT非拜占庭故障的Raft
1、PoW系统的主要特征是计算的不对称性。工作端需要做一定难度的工作得出一个结果,验证方却很容易通过结果来检查出客户端是不是做了相应的工作。但PoW耗能巨大,交易确认时间过长,挖矿活动集中容易形成中心化。
2、PoS要求用户证明拥有某些数量的货币(即对货币的权益),参与者的角色是验证者Validator,只需要投资系统的数字货币并在特定时间内验证自己是否为下一区块创造者,即可完成下一区块的创建。
3、DPOS让每一个持有比特股的人进行投票产生101位代表,这101位代表彼此利益完全相同,若代表不能履行他们的职责(当需要他们时,未能生成区块),这些代表会被除名,网络会选出新的代表来取代他们。
4、PBFT将服务建模为状态机,并在分布式系统的不同节点进行副本复制,每个状态机的副本都保存的服务状态。
5、RAFT中有三个角色,follower,candidata,leader。集群中的一个节点在某一时刻只能是这三种状态中其中一种,三种角色可以随着时间和条件的变化而相互转换。主要有:领导者选举,日志复制这两个过程。
一般来说,PoW,PoS,DPOS比较适合公有链环境,PBFT和RAFT比较适合联盟链和私有链的分布式环境

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用python中的pymsql完成如下:表结构与数据创建 1. 建立 `users` 表和 `orders` 表。 `users` 表有用户ID、用户名、年龄字段,(id,name,age) `orders` 表有订单ID、订单日期、订单金额,用户id字段。(id,order_date,amount,user_id) 2 两表的id作为主键,`orders` 表用户id为users的外键 3 插入数据 `users` (1, '张三', 18), (2, '李四', 20), (3, '王五', 22), (4, '赵六', 25), (5, '钱七', 28); `orders` (1, '2021-09-01', 500, 1), (2, '2021-09-02', 1000, 2), (3, '2021-09-03', 600, 3), (4, '2021-09-04', 800, 4), (5, '2021-09-05', 1500, 5), (6, '2021-09-06', 1200, 3), (7, '2021-09-07', 2000, 1), (8, '2021-09-08', 300, 2), (9, '2021-09-09', 700, 5), (10, '2021-09-10', 900, 4); 查询语句 1. 查询订单总金额 2. 查询所有用户的平均年龄,并将结果四舍五入保留两位小数。 3. 查询订单总数最多的用户的姓名和订单总数。 4. 查询所有不重复的年龄。 5. 查询订单日期在2021年9月1日至9月4日之间的订单总金额。 6. 查询年龄不大于25岁的用户的订单数量,并按照降序排序。 7. 查询订单总金额排名前3的用户的姓名和订单总金额。 8. 查询订单总金额最大的用户的姓名和订单总金额。 9. 查询订单总金额最小的用户的姓名和订单总金额。 10. 查询所有名字中含有“李”的用户,按照名字升序排序。 11. 查询所有年龄大于20岁的用户,按照年龄降序排序,并只显示前5条记录。 12. 查询每个用户的订单数量和订单总金额,并按照总金额降序排序。
06-03

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值