会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
BaiCai
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
下一页
2019年8月6日
AppBoxFuture: 123挨个站-数据按序存储
摘要: 最近几天在优化存储的编码规则,顺带把之前设计了但未实现的倒排序一并实现了。由于所有数据(元数据、实体、索引等)都映射至RocksDB的Key Value存储,所以必须扩展RocksDB的自定义比较器(Comparator)来实现自定义Key的排序规则。存储层涉及到需要自定义排
阅读全文
posted @ 2019-08-06 11:03 白菜园
阅读(469)
评论(0)
推荐(1)
2019年7月30日
用ECharts绘制Prometheus图表,实现类似Grafana的自定义Dashboard
摘要: 大家一般都是用Grafana自定义Dashboard来监控Prometheus数据的,作者这次尝试用ECharts来绘制Prometheus数据图表,一方面可以减少依赖,另一方面可以将监控界面灵活的集成进应用系统。至于如何在被监测机器上安装NodeExporter以及如何部署
阅读全文
posted @ 2019-07-30 11:37 白菜园
阅读(6506)
评论(0)
推荐(6)
2019年7月26日
我造了个好大的"轮子",居然还不是"圆"的!
摘要: 我造的这个"轮子"指的是集低代码开发与运维为一体的平台,为什么说它不是"圆"的,因为它有些与众不同,甚至可以说是有些另类。至于为什么造这个"轮子",以及另类在什么地方且听我慢慢道来。 一、痛苦的编码岁月 我是一个70后码农,开发过不计其数的系统,小到进
阅读全文
posted @ 2019-07-26 08:18 白菜园
阅读(995)
评论(0)
推荐(2)
2019年7月24日
AppBoxFuture: 二级索引及索引扫描查询数据
摘要: 数据库索引对于数据查询的重要性不可言喻,因此作者在存储层实现了二级索引,以及利用索引进行扫描的功能。目前仅实现了分区表与非分区表的本地索引(数据与索引共用一个Raft组管理),全局索引及反向索引待以后再实现。 一、存储结构: 在介绍索引前先了解一下数据
阅读全文
posted @ 2019-07-24 17:01 白菜园
阅读(617)
评论(0)
推荐(0)
2019年7月14日
我是如何基于二阶段递交及悲观锁实现分布式事务的
摘要: 由于框架一开始的定位就是需要支持强一致性分布式存储,所以如何实现分布式事务成为一个大挑战。作者学习了CockroachDB及TiDB等数据库的实现方式后,决定参考TiDB的实现方式,但不同于使用乐观方式而是采用悲观锁方式,遇到事务冲突采用排队的方式而不是重启事务。 一、二阶段
阅读全文
posted @ 2019-07-14 13:28 白菜园
阅读(711)
评论(0)
推荐(0)
2019年7月1日
AppBoxFuture: 大数据表分区的3种策略
摘要: 之前的文章“分而治之”在介绍大表分区时,作者尚未实现不同的分区策略,即只能按指定的分区键进行分区。这次作者完善了一下分区策略,在规划大表分区时可以按Hash或者时间范围进行分区,所以本篇介绍不同的分区策略适用的场景,同时介绍一下表扫描时如何指定从特定分区查询数据。 一、分区策
阅读全文
posted @ 2019-07-01 08:33 白菜园
阅读(765)
评论(0)
推荐(0)
2019年6月12日
AppBoxFuture(九): 组织结构与权限体系
摘要: 权限体系是用于约束用户访问或操作资源的权利,这里的“资源”可以指数据,也可以指特定的功能(如审核订单)。通常的权限体系设计是基于角色的访问控制方式,用户通过角色与权限进行关联。作者的实现方式稍微有些不同,通过组织结构树与权限进行关联,这样可以实现子级节点继承上级节点设置的权限
阅读全文
posted @ 2019-06-12 07:31 白菜园
阅读(1294)
评论(0)
推荐(1)
2019年5月31日
AppBoxFuture(八): 另类的ORM实现
摘要: 通常的ORM实现基于配置或注释,由反射或Emit生成相应的Sql语句,然后将Sql发送给数据库解析Sql字符串生成AST再交给优化器处理后执行,返回的数据再经由反射或Emit转换为相应的实体实例。作者认为上述方式主要存在以下两个问题: 1. 实体类代码是硬编码的,如果实体类定
阅读全文
posted @ 2019-05-31 08:10 白菜园
阅读(581)
评论(0)
推荐(1)
2019年5月22日
AppBoxFuture(七): 分布式外键约束
摘要: 关系数据库与NoSql其中的一个主要区别是具备完整的外键约束,虽说现在一些大厂在设计数据存储结构时禁止使用外键约束,靠业务逻辑来保证数据完整性,但考虑到是人就会犯错,为了保证关键业务数据的完整性,所以作者还是决定在存储引擎层面实现外键约束功能。 一、实现思路 &e
阅读全文
posted @ 2019-05-22 14:10 白菜园
阅读(692)
评论(0)
推荐(0)
2019年3月5日
AppBoxFuture(六): 前端组件化开发
摘要: 前面几篇都是在介绍结构化与非结构化的数据存储,本篇换换口味介绍一下框架是如何实现前端组件化开发的。首先得感谢Vue、ElementUI等优秀的前端开源项目,这些项目帮助作者快速实现了框架的两个前端工程(IDE及Web应用)的开发。 当初框架的设计目标是
阅读全文
posted @ 2019-03-05 16:45 白菜园
阅读(715)
评论(0)
推荐(0)
上一页
1
2
3
4
下一页
公告