0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

分析型数据库如何创新

OSC开源社区 来源:OSC开源社区 2023-06-02 16:10 次阅读

在群雄逐鹿的 OLAP 数据库市场,开源引擎 ClickHouse 凭借其出色的性能成为公认的黑马。官方称其性能超过了市场上同类的列式数据库,每台服务器每秒可处理数亿到超过十亿行、体积达数十 GB 的数据,运行速度比传统数据库快 100-1000 倍。
高效运行速度的另一面,还隐含着成本、性能、容量等诸多问题,比如不支持事务,不能够保证数据的一致性和完整性,不存在隔离级别,不支持高并发等等。这导致 2016 年开源的 ClickHouse 难以应对当下更加复杂,数据规模更加巨大的场景需求。

比如在字节内部,从 2018 年引入 ClickHouse,因为业务的发展,要服务于大量的用户,数据规模变得越来越巨大。由于 ClickHouse 是 Shared-Nothing 的架构,每个节点是独立的,不会共享存储资源等,因而计算资源和存储资源是紧耦合的。这导致扩缩容成本变高,且会涉及到数据迁移,不能实时按需的扩缩容,从而导致资源的浪费。此外,ClickHouse 的紧耦合的架构会导致多租户在共享集群相互影响,另外由于读写在一个节点完成,导致读写受到影响,最后 ClickHouse 在复杂查询上例如多表 join 等的性能支持并不是很好。
字节 ClickHouse 使用情况 为了解决这些痛点,字节在 ClickHouse 架构基础上进行了升级,于 2020 年在内部启动了 ByConity 项目,并于 2023 年 1 月发布 Beta 版本,将于 5 月底正式对外开源。

ByConity 是一个开源的云原生数据仓库,采用存储 - 计算分离的架构。它支持多个关键功能特性,如存储计算分离、弹性扩缩容、租户资源隔离和数据读写的强一致性等。通过利用主流的 OLAP 引擎优化,如列存储、向量化执行、MPP 执行、查询优化等,ByConity 可以提供优异的读写性能。

ByConity 的架构分为三层,如下图所示,服务接入层包含负责客户端数据和服务的接入,也就是 ByConity Server;计算组为 ByConity 的计算资源层,每个 Virtual Warehouse 是一个计算组;数据存储层由分布式文件系统,如 HDFS、S3 等构成。
3b7f8892-f653-11ed-90ce-dac502259ad0.jpg ByConity 三层威廉希尔官方网站 架构图 除了兼备 ClickHouse 的一些优点外,ByConity 还实现了了诸多新的功能。

ByConity 的一个重要优势是存储 - 计算分离的架构,它实现了读写分离和弹性扩缩容。它的优势是高弹性和高扩展性。这种架构确保读操作和写操作不会相互影响,使得计算资源和存储资源解耦,两者可以按需的且独立的扩缩容,确保资源高效利用。此外,ByConity 支持多租户资源隔离功能,保证不同租户之间不会互相影响,使 ByConity 适用于多租户环境,如图 2。
3b9776e6-f653-11ed-90ce-dac502259ad0.png ByConity 存储 - 计算分离,实现多租户隔离 ByConity 支持 弹性的扩缩容,能够实时、按需的对计算资源进行扩缩容,保证资源的高效利用。并且它能对不同的租户进行 资源的隔离,租户之间不会受到相互影响。其另一个重要功能是 数据读写的强一致性 ,确保数据始终是最新的,读写之间没有不一致。此外,ByConity 采用了主流的 OLAP 引擎优化,例如列存、向量化执行、MPP 执行、查询优化等,来保证提供了 优异的读写性能。

之所以采用开源的模式,ByConity 项目组是希望能够把项目回馈给社区,同时也希望通过社区的力量加强和完善 ByConity。接下来,ByConity 在 2023 开源社区发展规划中,希望增强 ByConity 的功能、性能和易用性,重点关注开发新的存储引擎、支持更多的数据类型和与其他数据管理工具的集成领域。

责任编辑:彭菁

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储
    +关注

    关注

    13

    文章

    4310

    浏览量

    85837
  • 数据库
    +关注

    关注

    7

    文章

    3799

    浏览量

    64379
  • OLAP
    +关注

    关注

    0

    文章

    24

    浏览量

    10096

原文标题:分析型数据库如何创新?

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    关系数据库与非关系数据库的区别浅析

    关系数据库的一个劣势就是 阻抗失谐(impedance mismatch):关系模型和内存中的数据结构之间存在差异关系数据库中不可以含有
    发表于 06-03 06:03

    什么是层次数据库

    什么是层次数据库 层次数据库管理系统是紧随网状数据库而出现的。现实世界中很多事物是按层次组织起来的。层次
    发表于 06-17 07:37 3104次阅读

    什么是关系数据库

    什么是关系数据库 关系数据库简介   关系数据库以行和列的形式存储
    发表于 06-17 07:38 9123次阅读

    什么是非关系数据库

    什么是非关系数据库 谈到非关系数据库设计的难点,朱海峰说:“我们可以从一些场景来看这个问题。一般数据库设计人员以前更多的是处理
    发表于 06-17 15:49 3135次阅读

    数据库教程之如何进行数据库设计

    本文档的主要内容详细介绍的是数据库教程之如何进行数据库设计内容包括了:1 数据库设计概述 ,2 数据库需求分析 ,3
    发表于 10-19 10:41 21次下载
    <b class='flag-5'>数据库</b>教程之如何进行<b class='flag-5'>数据库</b>设计

    数据库不使用外键这是为什么?

    当我们想要持久化地存储数据时,使用关系数据库往往都是最稳妥的选择,这不仅因为今天的关系数据库种类非常丰富并且稳定,还因为不同社区对关系
    的头像 发表于 09-01 10:00 5096次阅读

    动力环境监控数据库的简单分析

    浅析各种数据库的关系及区别。 数据库常见和类型有层次式数据库、网络式数据库、关系数据库。然尔今
    发表于 12-19 20:59 415次阅读

    华为云数据库\-GaussDB for MySQL数据库

    华为云数据库-GaussDB for MySQL数据库 GaussDB是华为云自主研发的一款高性能关系数据库,它完全兼容了MySQL,而且它是华为云最新的一代企业级分布式关系
    的头像 发表于 10-27 14:56 1263次阅读

    数据库数据恢复】MySQL数据库Delete误删除的数据恢复案例

    MySQL数据库属于关系数据库。SQL是一种用于操作关系数据库的结构化语言。关系
    的头像 发表于 12-07 11:49 3377次阅读
    【<b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复】MySQL<b class='flag-5'>数据库</b>Delete误删除的<b class='flag-5'>数据</b>恢复案例

    OpenHarmony关系数据库概述

    关系数据库(Relational Database, 以下简称RDB)是一种基于关系模型来管理数据数据库,是在SQLite基础上提供一套完整的对本地
    的头像 发表于 03-28 18:08 1054次阅读
    OpenHarmony关系<b class='flag-5'>型</b><b class='flag-5'>数据库</b>概述

    分析数据库如何创新?GOTC 2023议题揭秘

    在群雄逐鹿的 OLAP 数据库市场,开源引擎 ClickHouse 凭借其出色的性能成为公认的黑马。官方称其性能超过了市场上同类的列式数据库,每台服务器每秒可处理数亿到超过十亿行、体积达数十 GB
    的头像 发表于 05-19 09:03 419次阅读
    <b class='flag-5'>分析</b><b class='flag-5'>型</b><b class='flag-5'>数据库</b>如何<b class='flag-5'>创新</b>?GOTC 2023议题揭秘

    数据库知识

    数据时代的数据库 --数据采集、数据清洗和分析数据可视化:提供决策依据 openGaus
    发表于 06-09 16:10 0次下载

    关系数据库的基本原理(什么是关系数据库

    什么是关系数据库?关系数据库,简称 RDBMS是由许多数据表(Table)所组成,资料表又是由许多笔记录(Row 或Record)所组成
    的头像 发表于 07-10 09:06 1421次阅读

    MySQL数据库管理与应用

    MySQL数据库管理与应用 MySQL是一种广泛使用的关系数据库管理系统,被认为是最流行和最常见的开源数据库之一。它可以被用于多种不同的应用程序,包括网站开发、
    的头像 发表于 08-28 17:15 975次阅读

    NoSQL 数据库如何选型

    什么是NoSQL数据库?为什么要使用NoSQL数据库?键值数据库内存键值数据库文档数据库列式数据库
    的头像 发表于 11-26 08:05 473次阅读
    NoSQL <b class='flag-5'>数据库</b>如何选型