区块链数据库SUNLIGHTDB 架构设计(一)

ChainSQL 基于区块链的数据库应用平台 技术白皮书 本文将结合区块链与传统数据库,设计一种全新的基于区块链技术的数据库应用平台,该技术不仅具 有区块链的分布式、去中心化、可审计的特性,同时兼备传统数据库的快速查询、数据结构优美的特性。 两者的结合使得数据库的恢复变得快速、数据可靠性得到质的飞跃。 立即下载

本文简要介绍 SunlightDB 架构设计,主要受众是想要了解 SunlightDB 内部结构的开发人员和用户。

 

基础模型

SunlightDB 是一个分布式数据库,可以部署到多台服务器中组成一个分布式数据库集群。集群中的每台SunlightDB服务器实例具有同等地位,这些SunlightDB 实例由统一的协调服务(比如 ZooKeeper)链接到一起。

SunlightDB 存储单元是表和行。支持行数据的查询、插入和更新(新版本支持更新不支持删除)操作。每个表都有一个强制主键。该主键用于自动将表拆分为多个大约 500MB 的分区。每个分区存储在集群中的 N 个服务器节点上。SunlightDB 分区的每个副本按照段文件的日志合并树结构,存储在相应服务器上。段文件使用 CSTable文件格式进行编码。CSTable 是一种支持列式存储的容器文件格式。

查询模式

可以通过 SunlightDB 客户端(连接到 SunlightDB 集群)创建和管理表,执行数据查询等操作。当客户端想要对数据执行 SQL 或 MapReduce 查询时,可以将查询语句发送到集群中的任何 SunlightDB 服务器节点。

SunlightDB 首先识别查询语句中引用的所有表,然后识别每个表需要扫描的分区。然后将查询语句重写为分片查询。分片查询中涉及到的所有分片在相应的 SunlightDB 服务器上并行执行,从而最大限度地减少数据传输。

在每个分片上,从服务器上的 CSTable 文件中加载响应查询所需的数据子集(即仅表中实际引用的列)。最后所有分片查询结果合并到一起,返回给客户端。

数据一致性

SunlightDB 支持最终一致性,即更新或插入操作最终是一致的(足够时间范围内所有副本都将同步)。数据写入冲突的解决是自动的(微秒粒度内最新写入胜出)。

数据分片和数据的重新平衡都是自动和透明的。每个表都有一个可配置的复制因子 N,用于控制每个分区存储的服务器节点数量。SunlightDB 最多可以容忍 N-1 次故障,并且仍然为每个分区提供读写服务。默认情况下,N 为 3,可容忍的故障数为2。

每个分区同时由 N 个服务器节点提供服务,其中 N 称为复制因子。从分区的所有副本中,我们选出一个作为领导者Leader,并指定其他副本为追随者Follower。所有分区都可以执行数据的读操作,只有Leader可以执行写入(比如Zookeper Raft算法)。

SunlightDB 2017新型区块链数据库 主要为大家详细介绍了SunlightDB 2017新型区块链数据库的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 立即下载

相关推荐

非结构数据存储和区块链数据库

非结构数据存储和区块链数据库-聚集和并发、去中心化和共识

剖析区块链的数据结构设计

什么是区块链?本文我们暂将它定义为一个去中心化的公开账本。很好,这又引用了2个新的概念,我们对其给出解释:公开账本账本其就是记录数据的,或者说其就是一个记事本,任何参与者都能完全的查看这个记事本的内容,并且要保证每个参与者看到的内容都是完全一致的。去中心化是指该账本不能存在中心集权化的单位,不能是由某个单位就能决策该账本的数据,必须是所有的参与者都能公平的参与到账本的改动,这样,该账本对于每个参与者才是公平的。

黄木木的博客 1888

OTP语音芯片SOP8的前世今生_如九齐_硕呈_钰绅等以及国产方案KT148A

语音芯片ic的其中一个品类,就是SOP8封装的OTP语音芯片,非常的经典和常用。源头的供应商基本都是台系的原厂,比如:九齐、硕呈、佑华等等,其中佑华就算是鼻祖了,早期的4位机也是在语音市场得到了升华。 OTP(One Time Programmable)是单片机的一种存储器类型,意思是一次性可编程:程序烧入单片机后,将不可再次更改和清除。

qyvhome的博客 1873

基于区块链的物流管理系统设计与实现

目录《基于区块链的物流管理系统设计与实现》《基于区块链的物流管理系统设计与实现》 引言 1.1. 背景介绍 随着互联网的飞速发展,物流行业在国民经济中的地位越来越重要,物流系统的安全与效率也成为了企业竞争的关键。传统的物流管理系统在信息传递、数据安全、效率等方面已经无法满足现代物流业的需求。因此,利用区块链技术对物流系统进行升级和改进成为了一项重要任务。 1.2. 文章目的 本文旨在设计并实...

AI天才研究院 2645

linux 驱动 - pinctrl子系统

分析总结 pinctrl 子系统框架结构,平台 mtk6771 内核版本 kernel-4.4 , 本文所有的分析均基于此版本。

sty01z的博客 1557

手把手教你用Simulink搭建单相全桥逆变器(附单电流闭环控制仿真文件)

本文详细介绍了如何在Simulink中搭建单相全桥逆变器并实现单电流闭环控制。从功率主电路建模、核心器件参数设置,到控制系统的PI调节与前馈补偿,提供了完整的仿真步骤与调试技巧。文章旨在通过动手实践,帮助读者跨越理论与仿真的鸿沟,深入理解电力电子闭环控制的核心原理。

d6e7f8g9h的博客 316

区块链数据分析:从零开始建立一个分布式数据库

1.背景介绍 区块链技术是一种分布式、去中心化的数据存储和传输方式,它的核心概念是将数据以块(Block)的形式存储,每个块之间通过链(Chain)相互连接。这种结构使得区块链具有高度的安全性、可靠性和透明度。在这篇文章中,我们将从零开始介绍如何建立一个区块链数据分析的分布式数据库,包括核心概念、算法原理、代码实例等。 1.1 区块链的基本概念 区块链是一种新型的分布式数据存储结构,其核心特...

AI天才研究院 1993

2026年经典爬虫案例专栏|第17篇:学术论文爬虫实战——知网与万方数据采集

字段名说明数据类型title论文标题字符串authors作者列表列表abstract摘要字符串keywords关键词列表列表journal发表期刊字符串year发表年份整数volume卷号字符串issue期号字符串pages页码范围字符串citations引用次数整数downloads下载次数整数doiDOI编号字符串url论文链接字符串学术论文爬虫是科研工作的重要辅助工具,可以帮助研究人员高效地收集和管理论文数据。

2201_76125261的博客 1062

Blockchain DB,区块链数据库

作者:谭磊,NABA北美区块链协会联合创始人。 责编:仲培艺,关注数据库领域,寻求报道或者投稿请发邮件zhongpy@youkuaiyun.com,微信:zhongpy_0921。 本文为《程序员》原创文章,未经允许不得转载,更多精彩文章请订阅2017年《程序员》 区块链是互联网未来十年中举足轻重的技术区块链(Blockchain),或者说分布式账本(DLT, Distributed Led...

Joy0921的博客 7313

【CAN总线测试】——通讯相关诊断测试

本章主要介绍通讯相关诊断测试用例设计

LOVE135149的博客 1813

如何对EMB电子机械制动器的热衰退问题进行优化

摘要 电子机械制动器(EMB)在新能源汽车和自动驾驶中具有重要应用价值,但其在高强度工况下会出现热衰退现象。本文分析了EMB热衰退的五大机理:摩擦副热效应、电机热衰退、减速机构热失效、温度对控制策略干扰以及结构设计导致的热积累。针对这些问题,提出了从材料、结构、控制三个维度的优化措施:升级耐高温材料、改进散热设计、优化控制算法等。通过"热生成抑制-热传导优化-热失效补偿"的系统方案,可有效改善EMB的热衰退问题,为智能汽车提供更可靠的制动保障。

m0_59012156的博客 342

区块链3——数据库与区块链的区别

数据库与区块链的区别:数据库基础,区块链基础,数据存储方式,数据一致性与事务处理,数据访问控制与隐私,数据的安全性和加密,数据的可扩展性与性能,智能合约与业务逻辑

风不归的乐园 3106

8.19华为OD机试真题 新系统 - 基站低能耗时段统计 (Java/Py/C/C++/Js/Go)

8.19华为OD机试真题 新系统 - 基站低能耗时段统计 (Java/Py/C/C++/Js/Go)

算法大师! 1142

区块链+产品溯源落地方案——基于SunlightDB数据库

SunlightDB区块链数据库,是一个全新的数据共享解决方案,让企业间数据共享更简单。 经济全球化使得企业的生产和人们的消费都分散在全球各地,所以数据的远程沟通与分享,以及对于生产过程的远程检测,也就是我们经常说的”产品溯源”,都变得越发重要。 面对消费者越来越高,甚至是苛刻的需求,如果企业能够保证产品在不断创新的同时兼顾自身产品品质的优良,不仅可以为企业塑造良好的口碑,还会对产品的二次销售...

Dreamcode ~ All in AI 1387

工业预测性维护实战:振动分析+Transformer预警系统构建指南

摘要:本文聚焦工业设备预测性维护难题,提出基于振动分析与Transformer模型的全栈解决方案。通过低成本硬件选型(单传感器¥380)实现设备振动信号实时采集,利用边缘计算单元完成特征工程(RMS、峰度、峰值频率提取),并在云端部署Transformer时序模型进行异常预警。某风电龙头企业实践显示,系统将故障误报率从38%降至6%,维护成本降低58%,非计划停机时长减少87%。文中提供完整的边缘端特征提取代码、云端模型架构及实施流程,适配ISO 13373振动分析标准,为制造业设备健康管理提供可复用的工程

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 625

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Blockchain Product Traceability Solution - Based on SunlightDB Database

Hi...I’m RUI NI from China, co-founder of SunlightChain and I am pleased and honored to be here to present our product - the SunlightDB blockchain database. SunlightDB is not just a database, but als...

Dreamcode ~ All in AI 4897

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

新版SunlightDB发布: 当区块链遇到数据库

2016年6月5日今天,SunlightDB2017正式发布。

Dreamcode ~ All in AI 3551

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

SunlightDB 2017 新型区块链数据库

SunlightDB 2017 新型区块链数据库是对于像以太坊这样的去中心处理平台和Inter Planetary File System(IPFS)这样的去中心文件系统的补充。

Dreamcode ~ All in AI 4058

『区块链+TR069协议』打造全球通用区块链物联网

通过区块链技术与TR069协议的完美结合,即可在分布式智能设备之间建立互相信任,安全可靠的通信桥梁。同时,又可对海量的,来自全球不同厂商,不同类型的物联网智能设备,进行有效的集中管理。

Dreamcode ~ All in AI 3052

SunlightDB区块链3.0技术架构简介

从可编程(以太坊为代表的区块链2.0)到可计算(区块链3.0),《区块链:新经济蓝图及导读》的作者 MelanieSwan 把超越货币和金融的区块链应用归为3.0,特别是在政府、医疗、工业、文化和艺术领域的应用。举例如下:

应用1:智能化物联网应用:可以在分布式物联网建立信用机制,利用区块链记录,监控智能设备,同时利用智能合约来规范智能设备的行为;

应用2:商品追踪溯源:采用区块链方案,可以登...

zhangyke的博客 610

SunlightDB区块链共识机制与SunlightCoin预告

大部分区块链商业应用并不需要网络代币,常见的代币类型的共识算法并不适合商业应用。

Dreamcode ~ All in AI 2778

利用区块链技术解决传统物流贸易金融诸多痛点

传统贸易金融存在诸多痛点,目前贸易金融的处理流程主要包含销售、运输和交货,都记录在提单中。提单为发货者收到的凭证,证明 货物已经发出以及发货者在货物海运过程中对货物的所有权。一旦货物到达目的地,发货人会将提单原件发给收汇人,收货人凭提单提货,提单一般通过隔夜速递方式送达。

Dreamcode ~ All in AI 4850

区块链电子签章系统

自2004年《中华人民共和国电子签名法》制定之日起,中国电子签名服务行业已走过了十多年的时间。不过直到近年来,随着互联网金融以及区块链技术的快速发展,这个行业才真正迎来起飞。 利用SUNLIGHTDB区块链数据库技术,将数据同步传送给司法鉴定中心、公证处,保全中心、合同方,多方共同组织形成一条签章联盟链,同时在线出具司法鉴定证书、公证书。当债务人未履行合同义务时,可凭公证机构签发的执行证书,直接...

Dreamcode ~ All in AI 7003

区块链数据库SunlightDB BI智能标签

系统开发中,比较困难的就是数据分析可视化统计图的开发,基于SunlightDB BI智能标签,可以快速构建各类数据分析统计图,同时直接生成可执行的HTML5代码,大大提高软件开发生产力。   SunlightDB BI智能标签 演示视频: https://v.qq.com/x/page/u0749f8wiqx.html  ...

Dreamcode ~ All in AI 1292

福布斯:首个1000亿美元区块链公司可能成为下一个SAP

转发自福布斯,原文地址如下: https://www.forbes.com/sites/sparklabs/2017/12/15/the-first-100-billion-dollar-blockchain-company-could-be-the-next-sap/#443321811948

Dreamcode ~ All in AI 1556

自己动手做数据库客户端: BashSQL开源数据库客户端

BashSQL是一个非常方便小巧的开源数据库命令行工具,完全使用Bash脚本开发,其主要目的是帮助程序员快速了解学习Bash脚本编程。BashSQL可以支持MySQL(默认)、Oracle、Redis、MongoDB、SunlightDB、TiDB、GBase、Mycat等各类通用型数据库及数据库中间件系统。与常用的命令行工具相比,不必每次输入烦琐的字符串登陆数据库,拥有更清楚的命令提示信息。当然你也可以定制关键字,帮助你快速查询、检索、更新数据。在图形界面无法使用的环境下,BashSQL是一个不错的替代工

Dreamcode ~ All in AI 2716
上一篇: 基于区块链的供应链金融系统解决方案—我的程序员学院课程
下一篇: 去吧,成为张无忌
dreamcode
博客等级 码龄20年 866粉丝 165原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dreamcode

你的鼓励是我创作的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值