{
    "componentChunkName": "component---src-templates-blog-blog-detail-tsx",
    "path": "/blog/core-competence-of-future-database",
    "result": {"pageContext":{"blog":{"id":"Blogs_71","title":"未来数据库应具备什么核心能力？","tags":["The Future of Database","TiDB"],"category":{"name":"观点洞察"},"summary":"上周六，我们开启了 The Future of Database 系列的第一期直播，我司 CTO 黄东旭及 Engineering VP 申砾畅聊了“未来的数据库会是什么样？”这个颇具想象力的话题。这是第一期直播的部分文字&视频回顾。","body":">上周六，我们开启了 [The Future of Database 系列](https://mp.weixin.qq.com/s/SiAO0_RcKw2edJj-B8Yu6A) 的第一期直播，我司 CTO 黄东旭及 Engineering VP 申砾畅聊了“未来的数据库会是什么样？”这个颇具想象力的话题。\n>\n>以下是第一期直播的部分文字&视频回顾 Enjoy ~\n\n**视频链接**：<https://www.bilibili.com/video/BV1Ji4y1t7io>\n\n## 目前业界数据存储方案存在的问题？\n\n* 受限的 Scale 能力\n\n\t分库分表和一些「伪分库分表」的方案，仍然有天花板，带来了额外的运维和消耗。\n\n* 碎片化\n\n\t回想一下最近几年后端的技术栈，有 NoSQL、缓存、Kafka、 离线数据仓库、Hadoop、HBase……**不同的工具可能面对的是某些特定、甚至「狭窄」的场景，为了应对一个复杂的业务，大家必然就要多种技术方案组合来覆盖所有的应用场景。这个过程中自然会产生「数据孤岛」**，打通孤岛的成本也是巨大的，Kafka 最近几年这么火也是正因为存储方案的多样导致的「数据孤岛」的问题正在显现。\n\t\n* 在线业务与分析脱节\n\n\t现在大家构建存储系统的时候，默认会让在线业务与离线业务是分开的， 在线业务用 MySQL、MongoDB 等等，离线业务（或者分析系统）用 Hadoop 做数据分析，好像大家都是理所当然的认为：在线和离线就该这样，泾渭分明。\n\t\n\t**但目前有个趋势，分析的场景的需求越来越「实时」，或者说高时效的数据分析带来的业务价值受到重视**，这就与大家惯性认知产生了本质的冲突：业务需要当日甚至实时的数据分析结果，但后端只能说今天的数据明天才能导出。还有一个问题是，各个部分维护团队也是分开的，当业务发生变化时，很难灵活地调整和适应。\n\t\n**导致以上这些问题出现的深层共性是：变化永远比计划快**，你永远没法预测未来需要多少机器？业务会膨胀到多大？到底需要多“实时”的数据来做决策？\n\n**有没有可能存在一个应付更多变化、覆盖更多场景的系统**？从前可能是：我的工具箱里装了各种型号的锤子（工具软件），去应对不同场景、形状的钉子，现在可能追求用一个锤子，快速、低成本的解决不同的钉子（问题），**以不变应万变**。\n\n## Real-Time HTAP 是解药吗？\n\n聊到最近几年数据库领域的变化，申砾提到最近两年很多数据库打出了 HTAP 的标签，黄东旭分享了自己对“一个真正的 Real-Time HTAP 数据库”的理解：\n\n![1-real-time-htap](https://img1.www.pingcap.com/prod/1_real_time_htap_0bf2112420.png)\n\n**那么 Real-Time HTAP 价值在何处？应该在于它是一个简单、灵活的方案——能够将各个系统/团队集中在一个 Real-Time HTAP 系统上，节省成本并灵活应对业务变化。**\n\n## Real-Time HTAP 之后?\n\nReal-Time HTAP  可能是当下厂商们能够看得到的努力方向，那么在 Real-Time HTAP 之后的未来是什么呢？\n\n或许五年之后有以下场景：\n\n![2-several-scenes](https://img1.www.pingcap.com/prod/2_several_scenes_6b4d7f2d2f.png)\n\n基于这些场景，**未来数据库绕不开的核心能力应该是：智能、弹性调度能力**。\n\n最近有个新概念是 Serverless，Severless 是伴随云（Cloud）诞生的概念。当然 Severless 不是没有服务器，通俗地说，Serverless 就是会根据你的实际需求情况，调整数据库的形态，例如业务流量峰值的时候快速的采购弹性的计算资源进行扩容，低峰的时候自动的释放多余的资源。所以可以把 Severless 当做智能、弹性调度的落地形式来理解，同时未来的数据库一定是跑在云上的。","date":"2020-04-15","author":"PingCAP","fillInMethod":"writeDirectly","customUrl":"core-competence-of-future-database","file":null,"relatedBlogs":[]}}},
    "staticQueryHashes": ["1327623483","1820662718","3081853212","3430003955","3649515864","4265596160","63159454"]}