更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群

近日,《火山引擎云原生数据仓库 ByteHouse 技术白皮书》正式发布。白皮书简述了 ByteHouse 基于 ClickHouse 引擎的发展历程,首次详细展现 ByteHouse 的整体架构设计及自研核心技术,为云原生数据仓库发展,及企业数字化转型实战运用提供最新的参考和启迪。

以下为 ByteHouse 技术白皮书【核心技术解析——元数据】版块摘录。

技术白皮书(Ⅰ)(Ⅱ)(Ⅲ)(Ⅳ)(Ⅴ)精彩回顾:

https://xie.infoq.cn/article/5c9471c7adb58e4bb43b69c4d

https://xie.infoq.cn/article/086b4e706965a6bd81f6a6ff2

https://xie.infoq.cn/article/a0dceef1588fe6c58247d3b37

https://xie.infoq.cn/article/9802a36beb0e82fd989991011

https://xie.infoq.cn/article/af5fc530f0d2ce7cbb8cefe5f

核心技术解析

元数据管理

元数据管理(Catalog Service)的功能主要是对读写请求的元数据进行读写操作。元数据服务是一个非常关键的服务,需要保证其自身的高可用和元数据的一致性,元数据服务的扩展性影响整个平台的扩展性,此外元数据读写的性能也影响整个读写过程的性能。

元数据管理需要重点考虑下面几个方面的问题,元数据的持久化,和利用缓存对元数据层的加速。

元数据持久化

元数据的持久化,可以有很多不同的存储后端可供选择,例如 KV 型数据库,传统数据库,New SQL。经过综合考虑,最后决定选择 KV 数据库,目前采用字节内部产品 ByteKV,外部开源的 FoundationDB 也是其他产品常见选择。

对于 KV 数据库里面需要存储的元数据信息主要有版本、统计信息、事务信息、数据的 Schema、Partition 信息、Part 的信息等。

元数据缓存

由于我们将 Part 级元数据存储在 ByteKV 中,因此在查询大数据范围时,是 KV 数据库的 Scan 操作,获取 Part 元数据的时间较长,且给 ByteKV 带来很重的负担。因此通过增加一个缓存层提高性能、降低负载。

因为 Insert/Select 语句会在任意的 Coordinator 节点上执行,为保证 Read-Commited 语义,需要确保不同 Coordinator 进程间一致的 元数据读取,采用

  1. Leader Selection 机制保证唯一的 Master

  2. Master 维护全局一致的拓扑图

  3. 所有 Coordinator 采用相同的选主机制保证每一张表有唯一的主节点

  4. 表的主节点维持 Cache 的有效性

点击链接,立即下载完整版白皮书

https://www.wjx.cn/vm/Ot0YJFq.aspx#

点击跳转 云原生数据仓库ByteHouse 了解更多

火山引擎云原生数据仓库 ByteHouse 技术白皮书 V1.0 (Ⅵ)的更多相关文章

  1. OpenFlow技术白皮书-V1.0

    1.  概述 OpenFlow是由斯坦福大学的Nick McKeown教授在2008年4月ACM Communications Review上发表的一篇论文OpenFlow: enabling inn ...

  2. 灵雀云CTO陈恺:从“鸿沟理论”看云原生,哪些技术能够跨越鸿沟?

    灵雀云CTO陈恺:从“鸿沟理论”看云原生,哪些技术能够跨越鸿沟? 历史进入2019年,放眼望去,今天的整个技术大环境和生态都发生了很大的变化.在己亥猪年春节刚刚过去的早春时节,我们来梳理和展望一下整个 ...

  3. 混部之殇-论云原生资源隔离技术之CPU隔离(一)

    作者 蒋彪,腾讯云高级工程师,10+年专注于操作系统相关技术,Linux内核资深发烧友.目前负责腾讯云原生OS的研发,以及OS/虚拟化的性能优化工作. 导语 混部,通常指在离线混部(也有离在线混部之说 ...

  4. [华三] IPv6技术白皮书(V1.00)

    IPv6技术白皮书(V1.00) http://www.h3c.com/cn/d_200802/605649_30003_0.htm H3C S7500E IPv6技术白皮书 关键词:IPv6,隧道 ...

  5. waf 引擎 云原生平台tproxy 实现调研

    了解了基本 云原生架构,不清楚的查看之前的文章:https://www.cnblogs.com/codestack/p/13914134.html 现在来看看云原生平台tproxy waf引擎串联实现 ...

  6. waf 引擎云原生调研---扫盲

    概念: lstio Istio是一个用于服务治理的开放平台 Istio是一个Service Mesh形态的用于服务治理的开放平台 Istio是一个与Kubernetes紧密结合的适用于云原生场景的Se ...

  7. NodeJS 基于 Dapr 构建云原生微服务应用,从 0 到 1 快速上手指南

    Dapr 是一个可移植的.事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的.无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言和开发框架.Dapr 确保开发人员专注 ...

  8. 接口性能测试方案 白皮书 V1.0

    一. 性能测试术语解释 1. 响应时间 响应时间即从应用系统发出请求开始,到客户端接收到最后一个字节数据为止所消耗的时间.响应时间按软件的特点再可以细分,如对于一个 C/S 软件的响应时间可以细分为网 ...

  9. 高性能、快响应!火山引擎 ByteHouse 物化视图功能及入门介绍

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 物化视图是指将视图的计算结果存储在数据库中的一种技术.当用户执行查询时,数据库会直接从已经预计算好的结果中获取数据 ...

  10. 技术分享 | 云原生多模型 NoSQL 概述

    作者 朱建平,TEG/云架构平台部/块与表格存储中心副总监.08年加入腾讯后,承担过对象存储.键值存储,先后负责过KV存储-TSSD.对象存储-TFS等多个存储平台. NoSQL 技术和行业背景 No ...

随机推荐

  1. arm架构docker安装nacos

    前言 搞了个hk1box,装了armbian系统,想用这个当服务器调试微服务,需要安装nacos.尝试安装非docker版本的nacos,去github下载arm版本的并且放到linux下面,运行的时 ...

  2. [C++]P5024 树形DP 保卫王国

    树形DP 保卫王国P5024 前置知识 1.邻接表 + Dfs(深度优先搜索) 2.基础DP(如 01背包 ) 3.最小公共祖先(LCA) LCA我有写过Blog 首先解读一下题意 城市即为节点 每个 ...

  3. Python 异常处理:try、except、else 和 finally 的使用指南

    异常处理 当发生错误(或我们称之为异常)时,Python 通常会停止执行并生成错误消息. try 块用于测试一段代码是否存在错误. except 块用于处理错误. else 块用于在没有错误时执行代码 ...

  4. 基于.NET、Uni-App开发支持多平台的小程序商城系统 - CoreShop

    前言 小程序商城系统是当前备受追捧的开发领域,它可以为用户提供一个更加便捷.流畅.直观的购物体验,无需下载和安装,随时随地轻松使用.今天给大家推荐一个基于.NET.Uni-App开发支持多平台的小程序 ...

  5. Qt+FFmpeg播放mp4文件视频

    关键词:Qt FFmpeg C++ MP4 视频 源码下载在系列原文地址. 先看效果. 这是一个很简单的mp4文件播放demo,为了简化,没有加入音频数据解析,即只有图像没有声音. 音视频源的播放可以 ...

  6. JS 树形结构 根据子节点找到所有上级

    需求:是根据子菜单找到所有他上级菜单 进行面包屑的回显 要求子节点里包含父级id 代码如下:     parentTree(arr, id) {   //arr 所有的树数据 id 某个子节点的id  ...

  7. 自实现string类

    一. 环境 Linux x86_64,g++ 8.5.0 二. 实现 自实现 string 之前一直想写来着,一直拖着,现在把它完稿.这个版本是比较简单的版本,有一些可能有不同的或者更好的实现方式,后 ...

  8. JAVAweek4

    本周学习: 1.JAVA环境的搭建,包括JDK的下载,和classpath环境设置 2.*.java和*.class程序的运行 class Demo {public static void main( ...

  9. 【外包杯】【报错】微信小程序 “[app.json 文件内容错误]app.json:未找到[“pages”][0]对应 pages/xx/xx.wxml(或其他)文件” 报错 的简单解决方案(已解决)

    问题的解决方案 删除components目录下的uni-link文件夹

  10. 数字孪生结合GIS会为智慧农业带来怎样的改变?

    数字孪生是一种创新的技术,它通过将现实世界的物理实体与数字模型相结合,实现了实时.动态的仿真和预测.而地理信息系统(GIS)则是一种用于收集.管理.分析和展示地理数据的工具.当这两种技术相互融合时,将 ...