ASM 与 Presto 动态代码生成简介
代码生成是很多计算引擎中常用的执行优化技术,比如我们熟悉的ApacheSpark和Presto在表达式等地方就使用到代码生成技术。这两个计算引擎虽然都用到了代码生成技术,但是实现方式完全不一样。在Spark中,代码生成其实就是在SQL运行的时候根据相关算子动态拼接Java代码,然后使用Janino来
【2022/2/9】ITPUB新闻早报
今日热点:1.美国近日决定对台售武,国台办回应,民进党当局把台湾老百姓血汗钱用来购买武器,只会加剧台海紧张动荡,一步步把台湾推向灾难;2.北京冬奥组委8日回应,新春特别版冰墩墩即将上线,北京冬奥会特许商品将至少持续销售到今年6月底;3.上海近日施行新规,明确禁止在公交车厢内使用电子设备时外放声音。
一文理解 Presto 两种 JOIN 算法实现
我们在《Presto中支持的七种Join类型》这篇文章中介绍了Presto可用的JOIN操作的基础知识,以及如何在SQL查询中使用它们。有了这些知识,我们现在可以了解Presto的内部结构以及它如何在内部执行JOIN操作。本文将介绍Presto如何执行JOIN操作以及用于JOIN的算法。JOIN的实
RaptorX: 将 Presto 性能提升十倍
存储计算分离是整个行业的发展趋势,这种架构的存储和计算可以各自独立发展,它帮助云提供商降低成本。Presto原生就支持这样的架构,数据可以从Presto服务器之外的远程存储节点传输过来。然而,存储计算分解也为查询延迟带来了新的挑战,因为当网络饱和时,通过网络扫描大量数据将受到IO限制。此外,元数据的
Presto on Spark:通过 Spark 来扩展 Presto
概述Presto最初设计是对数据仓库中的数据运行交互式查询,但现在它已经发展成为一个位于开放数据湖分析之上的统一SQL引擎,用于交互式和批处理工作负载,数据湖上的流行工作负载包括:•报告和仪表盘:这包括为内部和外部开发人员提供自定义报告以获取业务洞察力,以及许多使用Presto进行交互式A/B测试分
Presto 中支持的七种 Join 类型
Join操作是最重要和最昂贵的SQL操作之一,需要数据库工程师深入理解才能编写高效的SQL查询。从数据库工程师的角度来看,了解JOIN操作的工作原理有助于他们优化JOIN以实现高效执行。我们在《ApacheSpark中支持的七种Join类型简介》这边文章中介绍了Spark相关的JOIN支持;这边文章
Presto高性能引擎在美图的实践
导读:本文的主题是Presto高性能引擎在美图的实践,首先将介绍美图在处理ad-hoc场景下为何选择Presto,其次我们如何通过外部组件对Presto高可用与稳定性的增强。然后介绍在美图业务中如何做到合理与高效的利用集群资源,最后如何利用Presto应用于部分离线计算场景中。使大家了解Presto
Prestissimo:使 Presto 性能提升三倍
这篇分享将给大家概述代号为Prestissimo项目的相关最新进展。Prestissimo是新的PrestoDBC++执行引擎,其使用Velox库使其能够以良好的性能运行TPC-H基准测试。这项工作是Prestissimo和Velox的几个PrestoDB基金会成员公司之间的合作,包括Ahana、字
Presto 在腾讯的应用
本文资料来自2021年12月09日举办的PrestoCon2021,议题为《PrestoatTencentatScaleUsabilityExtensionStabilityImprovement》,分享者JunyiHuang和PanLiu,均为腾讯软件工程师。Presto已被腾讯采用为不同业务部门
Presto在字节跳动的内部实践与优化
在字节跳动内部,Presto主要支撑了Ad-hoc查询、BI可视化分析、近实时查询分析等场景,日查询量接近100万条。功能性方面完全兼容SparkSQL语法,可以实现用户从SparkSQL到Presto的无感迁移;性能方面实现JoinReorder,RuntimeFilter等优化,在TPCDS1T
唯品会王玉:老司机教你如何调教Presto和ClickHouse,应对业务难题!
分享嘉宾:王玉唯品会编辑整理:刘鹏鹏滴滴出行出品平台:DataFunTalk导读:大家好,我是来自唯品会实时平台OLAP团队的王玉,主要负责唯品会这边Presto、Kylin、ClickHouse、Kudu,这些在OLAP比较常用组件的开源修改、组件优化还有维护的工作,并且我们还负责一些为业务指导、
【2022/2/8】ITPUB新闻早报
今日热点:1.短道速滑男子1000米:任子威李文龙包揽金银牌;2.技术泄露事件频发,消息称韩国政府将追踪芯片工程师行程;3.针对美通过“2022年美国竞争法案”,外交部7日表示该法案涉华内容充斥冷战思维和零和理念,中方对此坚决反对。
Redis 日志篇:无畏宕机快速恢复的杀手锏
作者|MageByte技术团队来源|码哥字节(ID:MageByte)我们通常将Redis作为缓存使用,提高读取响应性能,一旦Redis宕机,内存中的数据全部丢失,假如现在直接访问数据库大量流量打到MySQL可能会带来更加严重的问题。另外慢慢的从数据库读取放到Redis性能必然比不过从Redis获取
Redis 五大数据类型使用场景
Redis是一种基于键值对的NoSQL数据库,它的值主要由string(字符串),hash(哈希),list(列表),set(集合),zset(有序集合)五种基本数据结构构成,除此之外还支持一些其他的数据结构和算法。key都是由字符串构成的,那么这五种数据结构的使用场景有哪些?一起来看看!一字符串字
通篇干货!纵观 PolarDB-X 并行计算框架
PolarDB-X面向HTAP的混合执行器一文详细说明了PolarDB-X执行器设计的初衷,其初衷一直是致力于为PolarDB-X注入并行计算的能力,兼顾TP和AP场景,逐渐为其打造一款具备TB级数据处理能力的数据库。为了做到这一点,借鉴了各种数据库和大数据库产品,包括分析型数据库,实时数仓等,吸取
PolarDB-X 让“Online DDL”更Online
数据库的用户对数据库都有一个很简单的要求:“我能不能随时随地做DDL,不要让我守到半夜再搞了。”为了这个目标,各种各样的数据库采用了不同的方法来优化DDL这件事,MySQL也从5.6开始逐渐支持“OnlineDDL”。但问题是,为何已经到了MySQL8.0的时代,你能看到的各种MySQL最佳实践\开
HTAP 数据库“必修课”:PolarDB-X Online Schema Change
引言关系型数据库,随着业务发展,经常需要加表加列来满足新的业务需求,或者增加索引以提升查询性能,这些操作都需要通过数据定义语言(DataDefinitionLanguage,DDL)来完成。DDL是结构化查询语言(StructuredQueryLanguage,SQL)的一部分,1974年IBM研究
PolarDB-X 面向 HTAP 的混合执行器
早期数据库受限于硬件水平,IO、内存和CPU资源都非常昂贵,比如计算层的数据一多,内存容易爆掉;且只做单核计算,更谈不上用分布式去解决计算加速问题。可见在当时背景下执行器能够做的加速优化微乎其微。但今时不同往日,由于硬件水平的高速发展,分布式技术的日益成熟,执行器在大数据量的加速优化也越来越被重视,
PolarDB-X 面向 HTAP 的 CBO 优化器
优化器技术被公认为数据库领域中最有挑战性的技术之一,同时也是对数据库性能影响最大的一个模块。优化器直接影响SQL具体如何运行的执行计划,好的执行计划可以在毫秒内完成计算,而坏的执行计划则可能是分钟级或小时级别,两者性能可以相差成千上百倍。这篇文章将会为大家介绍PolarDB-X优化器的技术选型理由、
PolarDB-X 存储架构之“基于Paxos的最佳生产实践”
背景MySQL数据库从诞生以来就以其简单开放、易用、开源为其主打的特点,成为不少开发者首选的数据库系统。阿里在09年开始提出去IOE的口号,也选择基于开源MySQL进行深度发展,结合TDDL的技术完成了去IOE的工作,这也是早期的PolarDB-X发展的技术栈。2014年开始,随着业务高速的增长,以