百度智能云 Apache Doris 文档1。因此单元操作符+返回的是未发生变化的值,单元操作符-改变了该值的符号位。用户可以将两个单元操作符叠加起来, 比如++5(返回的是正值),-+2 或者+-2(这两种情况返回的是负值),但是用户不能使用连续的两个-号,因为--被解释为后 面的语句是注释(用户在是可以使用两个-号的,此时需要在两个-号之间加上空格或圆括号,如-(-2)或者- -2,这两个数实际 Baidu 百度智能云文档 SQL手册 7 表达的 值。左值和右值必须都是数字类型。 *和/: 分别代表着乘法和除法。两侧的操作数必须都是数据类型。当两个数相乘时,类型较小的操作数在需要的情况下类 型可能会提升(比如SMALLINT提升到INT或者BIGINT 等),表达式的结果被提升到下一个较大的类型,比如TINYINT 乘以 INT 产生的结果的类型会是BIGINT)。当两个数相乘时,为了避免精度丢失,操作数和表达式结果都会被解释成DOUBLE 型。如果用户想把表达式结果转换成其他类型,需要用CAST 函数转换。 %:取模操作符。返回左操作数除以右操作数的余数。左操作数和右操作数都必须是整型。 &, |和^:按位操作符返回对两个操作数进行按位与,按位或,按位异或操作的结果。两个操作数都要求是一种整型类型。如 果按位操作符的两个操作数的类型不一致,则类型小的操作数会被提升到类型较大的操作数,然后再做相应的按位操作。在 1个表达式中可以出现多个算术操作符,用户可以用小括号0 码力 | 203 页 | 1.75 MB | 1 年前3
Doris的数据导入机制以及原子性保证(Follower,JAVA) FE (Obsever,JAVA) BE (C++) BE (C++) BE (C++) BE (C++) 整体架构简单,产品易用 • 高度兼容MySQL协议 • 主从架构,不依赖任何其他组件 • FE负责解析/生成/调度查询计划 • BE负责执行查询计划、数据存储 • 任何节点都可线性扩展 01 Doris 简介 导入的问题 02 典型应用场景——OLAP分析 Vn • 读取到未生效数据 • 生效的数据未被读取到 读写冲突问题 原始数据 查询导入结果 源 操作1 操作2 处理 失败 失败 源 操作1 操作2 重试成功 额外重试 处理两次 02 导入的问题 At-Most-Once & At-Least-Once 语义 At-Most-Once语义 At-Least-Once语义 失败 源 操作1 操作2 重试成功 重试 • 为了保证At-Most-Once 语意, 用户同一批次数据需要使用相同的Label 03 Doris 中的导入 Prepared 事务和两阶段提交 • FE 充当协调者 • Prepare 阶段下发任务和写入数据 • Submit阶段 • 数据状态改为COMMITED • publish 版本 • 状态改为 VISIBLE Request-to-prepare Commit/Abort0 码力 | 33 页 | 21.95 MB | 1 年前3
SelectDB案例 从 ClickHouse 到 Apache Doris考,希望所有读者从文章中有所启发。 作者:腾讯音乐内容库数据平台 张俊、代凯 腾讯音乐娱乐集团(简称“腾讯音乐娱乐”)是中国在线音乐娱乐服务开拓者,提供在线音乐 和以音乐为核心的社交娱乐两大服务。腾讯音乐娱乐在中国有着广泛的用户基础,拥有目前 国内市场知名的四大移动音乐产品:QQ 音乐、酷狗音乐、酷我音乐和全民 K 歌,总月活用 户数超过 8 亿。 业务需求 腾讯音乐娱乐拥有海量的 应用层:ClickHouse 采用的是计算和存储节点强耦合的架构,架构复杂,组件依赖 严重,牵一发而动全身,容易出现集群稳定性问题,对于我们来说,同时维护 ClickHouse 和 Elasticsearch 两套引擎的连接与查询,成本和难度都比较高。 除此之外,ClickHouse 由国外开源,交流具有一定的语言学习成本,遇到问题无法准确反 馈、无法快速获得解决,与社区沟通上的阻塞也是促进我们进行架构升级的因素之一。 的局限性,我们尝试对架构进行优化升级,将分析 引擎 ClickHouse 切换为 Doris,Doris 具有以下的优势: Apache Doris 的优势: Doris 架构极简易用,部署只需两个进程,不依赖其他系统,运维简单;兼容 MySQL 协议,并且使用标准 SQL。 支持丰富的数据模型,可满足多种数据更新方式,支持部分列更新。 支持对 Hive、Iceberg、Hudi 等数据湖和 MySQL、Elasticsearch0 码力 | 12 页 | 1.55 MB | 1 年前3
Apache Doris 在美团外卖数仓中的应用实践Doris的系统架构如下,主要分为FE和BE两个组件,FE主要负责查询的解析、编译、优化、调度 和元数 据管理;BE主要负责查询的执行和数据存储。关于Doris的更多技术细节,可参考其官方文档。 Doris的特点: 同时支持高并发点查询和高吞吐的Ad-hoc查询。 同时支持离线批量导入和实时数据导入。 同时支持明细和聚合查询。 兼容MySQL协议和标准SQL。 支持Rollup Table和Rollup Colocate Join Colocate Join(Local Join)是和Shuffle Join、Broadcast Join相对的概念,即将两表的数据提前按照Join Key Shard,这样在Join执行时就没有数据网络传输的开销,两表可以直接在本地进行Join。 整个Colocate Join在Doris中实现的关键点如下: 数据导入时保证数据本地性。 查询调度时保证数据本地性。0 码力 | 8 页 | 429.42 KB | 1 年前3
共 4 条
- 1













