SteemLightDB 项目介绍及项目进度 20180515 by ety001

View this thread on steempeak.com
· @ety001 · (edited)
$71.64
SteemLightDB 项目介绍及项目进度 20180515
[SteemLightDB](https://github.com/ety001/steem-lightdb) (以下简称 LightDB ) 是一个基于 Steem 链的 MySQL 数据服务。

在有 SBDS 的情况下,为啥还要在弄一个 SteemLightDB 呢?

由于之前搭建过 SBDS 服务,发现里面有很多的问题,其中稳定性、数据原始性、数据容量这三个问题比较突出。

* SBDS 的稳定性直接依赖于其取数据的节点的稳定性;
* SBDS 的数据太原始,加工度不够,如果应用开发者需要一些数据之间的关系,需要开发者获取后自己加工,增加了开发者的开发工作量和难度;
* SBDS 占用空间太大,对于穷人来说,服务器费用开销太大。

LightDB 主要就是要针对以上三点进行优化,这就是 LightDB 的目的。LightDB 希望最终完成一套基于 Docker 的数据方案,开发者除了可以使用我提供的节点外,还可以自己快速便捷的搭建起来 LightDB。

# 介绍

首先看下 LightDB 大致的结构图:

![](https://steemeditor.com/storage/images/gfxaNli5XeyFmBEm6ZBn801SuZCXFeCjt4xtqCe8.png)

LightDB 主要分为四层。

整体的工作流程就是,有单独的脚本通过数据节点获取 Blockchain Data 然后存入 MySQL,这就是 MySQL Base Data 层。

第二层数据其实就是整个区块链每个块的原始数据。第二层的目的就是让 LightDB 的稳定性不再依托数据节点。通过第一层到第二层的脚本程序,来保证 LightDB 的数据源的稳定性,进而保证 LightDB 的稳定性。

从第二层到第三层由另外一个独立程序对原始数据进行加工,这种加工就是对整个区块数据进行重播。**LightDB 的核心思想就是要建立一个更像是社交网站的数据库。** 通过对整个区块链数据的重播,把所有的原始数据和数据之间的关联都存入数据库,这样第三层的数据其实就是一个初步加工后的数据了。

第四层API层的目的是为开发者提供更便捷的数据服务。这一层会对常用数据进行封装,对更复杂的应用场景下的数据关联进行封装,并且可以缓存的数据将进行缓存。这样对于开发者来说,不必要直接连接 LightDB 的数据库,也可以直接获取到加工后的数据。

这其中还有一部分没有在图中体现出来,就是在第二层和第三层都会有回收程序,对数据进行清理。对于很多工具类应用开发者来说,超过一个月的数据可能就是没有用的了,因此回收程序的目的就是保证数据只留存设置的天数。当然你也可以选择不启动回收程序,而搭建一个全数据量的节点。

整个项目计划将分为三个大部分去完成,第一部分工作是第二层的建立,第二部分工作是第三层建立,第三部分工作是建立第四层。

# 进度 20180515

目前第一阶段暂时不考虑收益计算,那个太复杂了。当前只是针对社交内容进行了设计。

* 目前第二层的代码工作已经完成并开始同步数据,当前同步高度在将近 20000000 的位置。
* 对于第三层的数据结构设计也基本完工,近期将开始编写 Replay 程序。

![](https://steemitimages.com/DQmXFfTDbr4s5wSu5AHuMd6zdHz2gGcMJp2XaTQ1t6GNMfy/image.png)

由于项目比较大,尤其是对于原有的数据结构需要去研究,因此整体进度推进的比较慢。目前已经过去了三周了吧,总体进度不是很乐观。其中第三层的数据库结构设计来来回回了好几遍,也是够折腾。

Over!

![upvote](https://steemit-production-imageproxy-upload.s3.amazonaws.com/DQmb2XLRnqy5netJri1pMXwqxB22MxujE4XakYcHeVUpQqx)

---

欢迎使用 [SteemMention](https://steem-mention.com) 获取最新的 Steem 回复提醒。

---

欢迎使用 [SteemEditor](https://steemeditor.com) 来编写文章,最好用的 Steem 编辑器,没有之一!!!

---

---

**感谢你的阅读,我是中文区见证人之一,欢迎通过 [SteemConnect](https://v2.steemconnect.com/sign/account-witness-vote?witness=ety001&approve=1) 来给我投票,或者打开 [https://steemit.com/~witnesses/](https://steemit.com/~witnesses/) 页面,输入 *ety001* 进行投票。**

![2.gif](https://steemitimages.com/DQmZfJo3F8NXpFx7nenQA3zTU9jg6YoRQvfyeeHgSYpdqr4/2.gif)

**中文区的见证人目前有:**
支持一下他们(按字母顺序),*一人可以有30票*:
- @abit | [投票](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=abit)
- @bobdos| [投票](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=bobdos)
- @ety001| [投票](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=ety001)
- @justyy |[投票](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=justyy)
- @skenan |[投票](https://steemconnect.com/sign/account_witness_vote?approve=1&witness=skenan)

---

**Thank you for reading.  I'm a witness. I would really appreciate your witness vote! You can vote by [SteemConnect](https://v2.steemconnect.com/sign/account-witness-vote?witness=ety001&approve=1). Or open [https://steemit.com/~witnesses](https://steemit.com/~witnesses) page, input *ety001* to vote.**

![2.gif](https://steemitimages.com/DQmZfJo3F8NXpFx7nenQA3zTU9jg6YoRQvfyeeHgSYpdqr4/2.gif)

---

**This post is powered by [SteemEditor](https://steemeditor.com).**
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
post_id48,596,546
authorety001
permlinksteemlightdb-20180515
categorycn-dev
json_metadata"{"links": ["https://github.com/ety001/steem-lightdb", "https://steem-mention.com", "https://steemeditor.com", "https://v2.steemconnect.com/sign/account-witness-vote?witness=ety001&approve=1", "https://steemit.com/~witnesses/", "https://steemconnect.com/sign/account_witness_vote?approve=1&witness=abit", "https://steemconnect.com/sign/account_witness_vote?approve=1&witness=bobdos", "https://steemconnect.com/sign/account_witness_vote?approve=1&witness=ety001", "https://steemconnect.com/sign/account_witness_vote?approve=1&witness=justyy", "https://steemconnect.com/sign/account_witness_vote?approve=1&witness=skenan", "https://steemit.com/~witnesses"], "users": ["abit", "bobdos", "ety001", "justyy", "skenan"], "tags": ["cn-dev", "witness-category", "cn-programming"], "app_url": "https://steemeditor.com", "app": "steemit/0.1", "image": ["https://steemeditor.com/storage/images/gfxaNli5XeyFmBEm6ZBn801SuZCXFeCjt4xtqCe8.png"], "format": "markdown"}"
created2018-05-15 03:02:33
last_update2018-05-21 16:07:24
depth0
children6
net_rshares15,154,684,275,738
last_payout2018-05-22 03:02:33
cashout_time1969-12-31 23:59:59
total_payout_value53.792 SBD
curator_payout_value17.851 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length3,124
author_reputation190,546,071,796,324
root_title"SteemLightDB 项目介绍及项目进度 20180515"
beneficiaries
0.
weight500
accountsteemeditor.bot
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
author_curate_reward""
vote details (33)
@cnbuddy ·
你好cn区点赞机器人 @cnbuddy 很开心你能成为cn区的一员。倘若你不喜欢我的留言,请回复“取消”。
properties (22)
post_id48,599,378
authorcnbuddy
permlinkre-ety001-steemlightdb-20180515-20180515t032840690z
categorycn-dev
json_metadata{}
created2018-05-15 03:28:42
last_update2018-05-15 03:28:42
depth1
children0
net_rshares0
last_payout2018-05-22 03:28:42
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length53
author_reputation-1,405,328,253,928
root_title"SteemLightDB 项目介绍及项目进度 20180515"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
@shine.wong ·
大工程 😲
properties (22)
post_id48,619,242
authorshine.wong
permlinkre-ety001-steemlightdb-20180515-20180515t064051420z
categorycn-dev
json_metadata"{"app": "steemit/0.1", "tags": ["cn-dev"]}"
created2018-05-15 06:41:00
last_update2018-05-15 06:41:00
depth1
children0
net_rshares0
last_payout2018-05-22 06:41:00
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length5
author_reputation1,373,339,077,399
root_title"SteemLightDB 项目介绍及项目进度 20180515"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
@yuxi ·
本来也打算写一个只采集内容/回复的程序。期待lightDB早日上线我就可以偷懒了。顺便问一下,如果只采集内容,大约每天消耗多少存储空间?
properties (22)
post_id48,658,998
authoryuxi
permlinkre-ety001-steemlightdb-20180515-20180515t123306861z
categorycn-dev
json_metadata"{"app": "steemit/0.1", "tags": ["cn-dev"]}"
created2018-05-15 12:33:09
last_update2018-05-15 12:33:09
depth1
children3
net_rshares0
last_payout2018-05-22 12:33:09
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length68
author_reputation11,393,749,492,813
root_title"SteemLightDB 项目介绍及项目进度 20180515"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
@ety001 ·
目前我的第二层的那些block原始数据,已经占用了262G.![](https://steemitimages.com/DQmZu24sEWB1CfehSs3ey7E5CgooZGtYSeBDLidhHvdrKzf/image.png)

在220G的时候,我果断又买了一个2T硬盘的独服来运行这个。

具体纯内容需要多少空间,不清楚,但是不乐观。

建议还是随用随删。
properties (22)
post_id48,662,244
authorety001
permlinkre-yuxi-re-ety001-steemlightdb-20180515-20180515t125926628z
categorycn-dev
json_metadata"{"app": "steemit/0.1", "image": ["https://steemitimages.com/DQmZu24sEWB1CfehSs3ey7E5CgooZGtYSeBDLidhHvdrKzf/image.png"], "tags": ["cn-dev"]}"
created2018-05-15 12:59:27
last_update2018-05-15 12:59:27
depth2
children2
net_rshares0
last_payout2018-05-22 12:59:27
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length185
author_reputation190,546,071,796,324
root_title"SteemLightDB 项目介绍及项目进度 20180515"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
@yuxi ·
谢谢,你给的这个信息非常有用,大大超出了我的预期。
properties (22)
post_id48,687,142
authoryuxi
permlinkre-ety001-re-yuxi-re-ety001-steemlightdb-20180515-20180515t155306931z
categorycn-dev
json_metadata"{"app": "steemit/0.1", "tags": ["cn-dev"]}"
created2018-05-15 15:53:12
last_update2018-05-15 15:53:12
depth3
children1
net_rshares0
last_payout2018-05-22 15:53:12
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length25
author_reputation11,393,749,492,813
root_title"SteemLightDB 项目介绍及项目进度 20180515"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000