当前位置:网站首页>命里有时终须有--记与TiDB的一次次擦肩而过
命里有时终须有--记与TiDB的一次次擦肩而过
2022-08-04 08:58:00 【TiDB社区干货传送门】
作者: 数据小黑 原文来源:https://tidb.net/blog/1ec54d5b
我
我是一个非常有重量的人,买衣服只买迪卡侬,是因为迪卡侬的号大。我曾经崇拜过一个技术大拿,很牛的那种,体重比我还大,所以我很释然,也觉得做技术也许体重大是标配。我是个老头,在社区里面,很自信的说,我的年龄数一数二的大。我也接触过非常多的东西,我曾经搞过ITIL、写过Flex、做过平台架构规划、研究过前端,甚至于现学现卖SEO。最近几年踏踏实实的研究数据,搞搞架构,从Hadoop入门,一直在折腾Spark。
起于2019年的那个夏天
19年我司委托我一个任务,找一个数据库,能够承担起历史数据明细查询,要求有多少数据装多少数据,以较高的并发,以及用户能够忍受的时间(3秒)返回。当时团队里面有个老大哥,对比了几个数据库,有Citus、YugaByteDB、TiDB等等,TiDB是最早开始测试,也是最早放弃的,早期的TiDB部署环境时有个check,会要求磁盘的iops大于1W(randread iops of tikv_data_dir disk is too low: 8207 < 10000),达不到要求就不能安装,我们的破烂开发机,有1K就不错了,然后测试TiDB这事就无疾而终。论坛里面有相似的问答:https://asktug.com/t/topic/2120 。虽然Citeus、YugaByteDB,甚至Cassandra都有过充分的测试、争论,但也因为种种原因没有上线。
召必回,战必胜
21年,我又对TiDB做了一些研究,原来的期望是找一套云原生,兼容Spark计算的数仓View层的数据库,当时期望的架构如下: 但是那一年,我们干了个奇葩事,遇到了一个很难解决的问题。 我们用大数据Hadoop这一套开始给客户算账,地球上绝对有很多人干这事,但是像我们人又少,技术又烂的团队干这事很少。然后我们就遇到了月初月末算账不准的问题。整个同步的链路很长,如下图: 我们研究了两个周,备受折磨,我就想搭建另外一个同步链路,同步数据后作对比,期望发现问题。或者说如果新搭建的同步链路稳定,直接采信新的同步链路的数据。 由于TiDB完全兼容Mysql生态,而且我们集群里面有Otter,于是我有个大胆的想法,用TiDB搭建另外一个数据同步链路,用Spark同步TiDB的数据到大数据产品中进行计算,于是同步链路变成了这样: 新的同步链路,从搭建生产环境,到能够正式处理数据,仅用三天时间。新链路上线后,采用两条链路互补的方式,计算账单,数据再没出过问题。经过两周的跟踪,也逐步发现了以前环境的问题,修正问题后,TiDB的同步链路完成使命。 详情:https://tidb.net/blog/55a8baf9
最接近生产的一次
22年我逐步走进了社区。在公司内部也做了一些培训,搭建了一个测试环境。由于我的布局,我们另外一个团队在需要解决saiku产品的底层查询问题时,想到了TiDB,于是做了一些测试。从结果来看,TiDB比环境里面的其他数据库,更适应saiku的查询方式。于是我们打算在生产上线TiDB,用于解决很多我们生产环境需要解决的问题,不单单是saiku,还有需要分布式关系型数据库的很多地方。但,又双叒叕因为外部环境因素,我们最终部署了Doris,毕竟测试saiku在Doris上有更好的表现。在这个过程中,我们发现了一些问题,因此提了在tidb的第一个issue,并在新版本中得到修复: https://github.com/pingcap/tidb/issues/32626 详情:https://tidb.net/blog/de9bf174
生命不息,折腾不止
随着年龄增大,越来越认识到知识储备的重要性。汲取知识的重要方式是深度参与社区。 于是,我就: 于是,我就: 于是,我就: 还有以下,懂得都懂,hhhhhhhhh:
最后,感谢贵司,让我圆了一个分布式数据库的梦。
边栏推荐
猜你喜欢
从底层看 Redis 的五种数据类型
recursive thinking
YOLOv5应用轻量级通用上采样算子CARAFE
华为设备配置VRRP与路由联动监视上行链路
2022-08-02 分析RK817 输出32k clock PMIC_32KOUT_WIFI给WiFi模块 clock 注册devm_clk_hw_register
[STM32] STM32F103 series name and package, memory
BFM模型和Landmarks可视化
华为设备配置VRRP与NQA联动监视上行链路
【NOI模拟赛】纸老虎博弈(博弈论SG函数,长链剖分)
JMeter 常用的几种断言方法,你会几种呢?
随机推荐
YOLOv5应用轻量级通用上采样算子CARAFE
并查集介绍和基于并查集解决问题——LeetCode 952 按公因数计算最大组件大小
学会 Arthas,让你 3 年经验掌握 5 年功力
.NET深入解析LINQ框架(五:IQueryable、IQueryProvider接口详解)
金仓数据库 KDTS 迁移工具使用指南 (7. 部署常见问题)
inject() can only be used inside setup() or functional components.
2022-08-02 分析RK817 输出32k clock PMIC_32KOUT_WIFI给WiFi模块 clock 注册devm_clk_hw_register
2022年制冷与空调设备运行操作特种作业证考试题库及模拟考试
MATLAB绘图总结
智能健身动作识别:PP-TinyPose打造AI虚拟健身教练!
JMeter 常用的几种断言方法,你会几种呢?
下午14:00面试,14:08低着头出来了 ,问的实在是太...
(三)DDD上下文映射图——老师,我俩可是纯洁的男女关系!
TCP的四次挥手
用OpenGL绘制winXP版扫雷的笑脸表情
推荐几种可以直接翻译PDF英文文献的方法
户外徒步旅行
spark算子讲解
金仓数据库KingbaseES客户端编程接口指南-JDBC(8. JDBC 元数据处理)
How many assertion methods are commonly used in JMeter?