StoneDB社区答疑第一期

当然,目前 StoneDB 的社区建设还正处于初启阶段,我们坚信,开源项目的成长,最终还是要靠社区用户一起来共创,因此,StoneDB 开源社区非常重视社区用户的声音,在 7 月份,我们从各个渠道里收集到了用户的反馈,这里做一个汇总,同步给各位关注 StoneDB 的开发者们,无论您是在校学生还是公司后端研发人员,亦或是某数据库厂商的研发人员,相信本期的社区解答会让您对 StoneDB 有一个更深入的了解。

A: 我们还是要区分”自主”、”可控”、”原创”三个词的准确含义,这样能更好地理解 StoneDB 的数据库定位。我们基于 MySQL 的根本原因,是因为目前 MySQL 客户装机量足够多(截至 2022 年它在整个数据库行业的市场占有率达到了 43.04%,来源:Slintel网站),而使用 MySQL 的客户对 AP 能力的需求也在不断增长,我们要做的是一个具有庞大增量的市场,而不是就只盯着 MySQL 生态玩了, 不要误会我们只能做 MySQL,以我们对一体化 HTAP的理解,基于 PostgreSQL 再做一套也是可以的,所以现在的 StoneDB 准确的说法是叫 StoneDB for MySQL。很多人现在被一些极端情绪所影响了,并没有客观的看待”原创”这个事儿,开源世界里,”原创”从来不是最重要的,如果有谁觉得自己做得更好就是可以 Fork 出去做他自己的分支版本,且不说现在有多少优秀的数据库是基于 MySQL 和 PG 做的,很多优秀的操作系统也是基于开源的 Linux 做发行版的,这个无论国内国外,都很常见,也无可厚非。 说到底,一个开源项目到底能不能把控研发方向、解决实际落地问题、对用户有没有实用价值才是最重要的。而且,我们用了 MySQL 就大大方方承认,不藏着掖着,也绝对不是简单的拿来主义,稍微优化魔改一下就放出去的。我们底层确实用了 MySQL 社区版的代码,但是我们的自主原创的代码量也足够庞大,为了提高综合性能,我们还对原本的 MySQL 社区版源码进行了大量的修改和优化。必须强调的是, 我们的 HTAP 内核引擎Tianmu(中文名:天目)完全自主研发,经过了足够时间的测试和打磨,才开源出来给大家使用,这才是我们强调的自主性。

另外,我们内核研发团队对 MySQL 的各个版本代码的熟悉程度一点儿也不亚于 MySQL 原厂团队,我们有超过 10 年内核研发经验的数据库老兵,有 超过七年近 200 万行内核代码的积累,更重要的是,我们对 MySQL 和 HTAP 的理解不单是从工业界上的应用实践,还有学术上的深刻认知,我们对数据库学术界的最新理论保持高度的关注,基本上所有经典的 HTAP 学术论文、国际顶会和期刊,从原始概念的提出到目前最新的研究进展,我们的架构师都深入研究过并从中选择最优可实现的方案落地到我们 StoneDB 的内核设计上——可以说, 工业界的丰富实践和学术上的与时俱进就是我们可控性的来源。

现在我们是在做 5.6 和 5.7 的版本,8.0 也在计划中,不用担心我们跟不上,发行版跟上 Upstream 是我们的基本素养。只不过,我们要做的,是连 Oracle 自己都舍不得开源的发行版,这才叫真的玩开源,我们不是那种随便魔改一下开源项目就拿出来说自己自主创新了, 我们的自主创新是实实在在的,是会对全球几百万依赖 MySQL 生态且有 AP 需求的中小企业产生巨大实用价值的。当然,未来我们还会有 云原生架构,这都是必须会有的, 数据库上云是大势所趋,我们只会顺势而为。可以明确的是,一个成熟的、真正的 HTAP 数据库应该有的功能和架构,StoneDB 都会有。

A: StoneDB 与 TiDB 采用了完全不同的技术架构,TiDB 使用松耦合系统架构,StoneDB 采用单系统双引擎架构,单系统架构集成性更高,实时性更强,对用户更加友好,用户完全无需关注和维护类似 Tikv/Tiflash/TiDB 这么多的底层组件。

从硬件要求方面,单系统架构所需的硬件更少、要求也更低,TiDB 最少需要 3~5 个节点才能完成最小化部署, StoneDB 仅需单节点即可,不像 TiDB 那样对硬件配置有严苛要求,在正常情况下采用”与运行MySQL 相同的硬件配置”就可以感受到 StoneDB 飞一般的性能体验,当然配置越高,性能越好。除此以外StoneDB是完全兼容MySQL的( 准确的说,我们不需要 Compatible,因为我们就是 Native),可实现对 MySQL 的无缝切换,业务侧无需做一行代码修改。

另外,TiDB 的开源社区做的确实不错,值得我们学习,不过我们从技术理念上一直不太认可 TiDB 属于 HTAP,他们并不符合真正的 HTAP 数据库定义,还是有一定距离的,或许叫分布式数据库是对的。当然,想必他们也知道自己不是真正的 HTAP,因为他们肯定也对 HTAP 的定义有过研究,只不过可能当年做底层架构时工程实现上没有很好的思路,觉得一体化的路线实现太难了,才做了这么一个杂糅架构的 伪HTAP数据库出来。我们知道现在出来打破一些人的认知还是要耗费些精力的,毕竟让他们意识到在国内最早推广 HTAP 概念的团队自己做的却是不符合真实 HTAP 定义的数据库,多少会有些打击到他们,也希望相关同学可以看看我们对真正 HTAP 标准的思考。

A: StoneDB 与 StarRocks 产品定位不同,StarRocks 定位 OLAP 数据仓库,进行数据分析时需要从 TP 类数据库通过 ETL 导入数据。StoneDB 定位 HTAP 数据库,可以同时支持 OLTP 和 OLAP 。如果非要一较高下的话,那就是 StarRocks 不支持 OLTP。

A: 在 TP 能力方面,StoneDB 目前与 MySQL 持平。在 AP 能力方面,StoneDB 最高可实现 100 倍性能的提升,StoneDB 产品设计的初衷就是解决 MySQL 本身不具备分析能力的问题。

A: StoneDB V2.0会支持 MySQL8.0 的新特性,新版本的具体时间以社区正式发文为准。

A: 是的,向量化相关内容规划在后续 Roadmap,具体时间以官方正式发布为准。

A: 支持,但是在生产环境不建议采用 K8S 部署方式。K8S 其他服务会抢占磁盘 IO,带来性能下降。

A: StoneDB 是行列混合架构,不是单纯的列式存储。StoneDB 支持多表关联,其优化器采用了知识网格技术,在进行多表关联时,两个列之间的等值映射关系会被自动创建。

A: StoneDB集群版仍在开发过程中,开发完成后会进行开源,具体时间以官方正式发布为准。

A: 我们推荐使用主从架构:主节点使用 InnoDB 引擎,可读写,支持 OLTP 业务负载;从节点使用 StoneDB 引擎,只读,支持 OLAP 查询负载。

A: 暂时还没有。

Original: https://www.cnblogs.com/yangwilly/p/16613035.html
Author: 来来士
Title: StoneDB社区答疑第一期

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/504968/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • (面试)大型网站应用之海量数据、高并发解决方案

    面试时会遇到这样的提问,就记录下来,加深印象;以后工作中也可以用到。 海量数据的解决方案: 网站访问数据的特点大多数呈现为”二八定律”:80%的业务访问集中…

    数据库 2023年6月11日
    046
  • Linux定时任务调度

    任务调度是指系统在某个时间执行特定的命令或程序,任务调度主要有两种,第一种是系统工作,需要周而复始的执行,比如病毒扫描。第二种是个人用户工作,用户需要在某个特定的事件执行某些程序,…

    数据库 2023年6月16日
    079
  • 【黄啊码】MySQL入门—1、SQL 的执行流程

    大家好!我是黄啊码,鉴于大家对于学习的热情,从今天起,将连载mysql的相关知识,需要学习的可以注意我的更新学习,后期估计会开启付费专栏,但当前完全可以白嫖,希望大家珍惜! 首先我…

    数据库 2023年6月16日
    074
  • Linux网络配置

    Linux网络配置 NAT网络配置 查看网络IP和网关 可以在 编辑->虚拟网络编辑器中 查看网络IP和网关 说明:1.什么是IP协议/地址?即”网络之间能相互连…

    数据库 2023年6月16日
    078
  • 2022-8-11 网络编程(网络通信)

    网络协议 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这…

    数据库 2023年6月14日
    095
  • 接口测试

    :配置windows中特定应用的抓包(默认抓取不到) :添加备注信息 :重新发起指定请求 :清空指定会话内容 :断点放行 :模式切换 :相应数据解码 :抓取指定进程发出的请求 :关…

    数据库 2023年6月16日
    0100
  • 【Java代码之美】 — Java17新特性初探

    1.背景 Oracle与9月中旬正式宣布推出Java17,正如官方所说: JDK17是最新的长期稳定支持的版本作为JDK11之后的下一个长期支持的版本; 也是Spring Fram…

    数据库 2023年6月6日
    087
  • 打破千篇一律,DIY属于自己独一无二的商城

    随着线上购物成为了人们的主要消费之一,搭建商城系统也成为一大热门的发展方向,在现在的电商市场中,经营的主体规模非常庞大,各种各样的电商系统琳琅满目,但是只要仔细观察就会发现,有很大…

    数据库 2023年6月14日
    090
  • MySQL8.0解决“MySQL 服务无法启动。 服务没有报告任何错误。”

    TL;NRs 初始化服务时最好使用 mysqld –initialized –console命令; MySQL8.0的配置变量与MySQL5.7不同, [mysqld]下面设置…

    数据库 2023年5月24日
    0124
  • Cookie和Session的关系和区别

    4.请简述Cookie和Session的区别 4.1什么是Cookie HTTP是无状态协议,他不能以状态来区分和管理请求和响应。也就是说服务器但从网络连接上无从知道客户身份。所以…

    数据库 2023年6月14日
    076
  • IO模型

    Unix IO模型 对于一个套接字上的输入操作,分为两步: 等待数据准备好(从网络中到达,到内核缓冲区) 将数据从内核缓冲区复制到应用进程缓冲区 I/O模型主要为以下五种: 阻塞I…

    数据库 2023年6月11日
    072
  • MySQL金额数字转为大写中文

    MySQL版本:5.7.34-log通过创建函数的方法,目前可以实现整数金额的转换,网上暂未找到MySQL版本的故自己参照其他数据库版本的改编了一下, 仅供参考!!!使用方法:se…

    数据库 2023年5月24日
    063
  • MySQL函数1(单行函数)

    单行函数 函数的理解 分类 数值函数 基本函数 PI()无参数 CETL \ CETLING()天花板函数(取比自己大的相邻的数) FLOOR()地板函数(取比自己小的相邻的数) …

    数据库 2023年5月24日
    088
  • JUC并发编程进阶!!

    1.知识点回顾及延伸 2.生产者消费者问题 3. 八锁问题 4.集合类线程不安全解决 5.Callable再理解 6.三大常用辅助类 6.1、 CountDownLatch 6.2…

    数据库 2023年6月16日
    084
  • 推荐系统!基于tensorflow搭建混合神经网络精准推荐! ⛵

    💡 作者:韩信子@ShowMeAI📘 深度学习实战系列:https://www.showmeai.tech/tutorials/42📘 TensorFlow 实战系列:https:…

    数据库 2023年6月14日
    070
  • 多态:向上转型和向下转型

    1)本质:父类的引用指向了子类的对象 2)语法:父类类型 引用名 = new 子类类型(); 3)特点:编译类型看左边,运行类型看右边。 可以调用父类中的所有成员(需遵守访问权限)…

    数据库 2023年6月11日
    080
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球