云数据库SelectDB 产品解析及最佳实践

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 2023年10月31日-11月2日,云栖大会在杭州举办,阿里云正式对外发布了云原生全托管产品——“阿里云数据库 SelectDB 版”,SelectDB 是基于 Apache Doris 内核打造的聚焦于企业大数据实时分析需求的企业级产品,通过深度融合云随需而用的特性,构建起云原生存算分离的全新架构,面向企业海量数据的实时分析需求提供极速实时、融合统一、简单易用的云上数仓服务。

Apache Doris 是全球流行的开源 OLAP 分析引擎,在全球范围内拥有广泛的用户群体。目前,全球中大型企业用户已突破 2000 家 ,覆盖金融、互联网、能源、制造、通信、物流等数十个行业, 赢得了数万名用户的喜爱。在社区活跃度方面,目前项目已在 GitHub 获得近 10000 Star,汇集国内外近 600 名社区开发者,月度活跃贡献者数量连续数月位居全球大数据开源项目榜首,已成长为全球大数据领域最活跃的开源项目之一。

云数据库 SelectDB 版的核心优势

01 极致的查询性能

2022年10月,SelectDB凭借优异的技术表现登顶全球分析型数据库榜单 ClickBench,多项指标世界第一,并在业界最为通用的 c6a.4xlarge、500gb gp2 机型下排行全球第一。除此之外,SelectDB 在宽表聚合、多表关联和高并发点查场景下也表现出优异的性能。

▶︎宽表聚合场景下,使用 SSB-FLAT 测试,SelectDB 是 ClickHouse 的 3.4 倍,是 Presto 的 92 倍,是业界标杆产品 Snowflake 的 6 倍。

▶︎多表关联场景下,使用 TPC-H SF100 测试,SelectDB 的性能可达到 Redshift 的 1.5 倍,ClickHouse 的 49 倍,同时是业界标杆产品 Snowflake 的 2.5 倍。

▶︎高并发点查场景下,使用 YCSB 测试集,SelectDB 在 10 列测试中,主键高并发点查能力提升 20 倍;在 100 列测试中,主键高并发点查吞吐是某云产品 H 的 2.5 倍,非主键高并发点查吞吐是某云产品 H 的 11 倍。

SelectDB如此卓越的性能主要得益于以下“黑科技”的支持:

▶︎更智能的全新查询优化器:SelectDB 采取更先进的 Cascades 框架、基于丰富的统计信息,实现了更智能化的自适应调优,在绝大多数场景无需任何调优和 SQL 改写即可实现极致的查询性能,同时对复杂 SQL 支持得更加完备,可完整支持 TPC-DS 全部 99 个 SQL。

▶︎MPP执行模型和自适应的并行执行引擎:SelectDB 采取 MPP 并行执行模型,可以充分利用节点间和节点内的并行计算能力,同时引入了自适应的 Pipeline 执行模型,由数据驱动控制流变化、减少了线程频繁创建和销毁带来的开销,实现了阻塞操作的异步化和资源池化以及更加系统资源的灵活分配,提升了 SelectDB 对于 CPU 多机多核的资源利用率,在混合负载场景下获得更高效的执行效率。

▶︎向量化执行引擎和执行算子优化:SelectDB 实现了全面向量化,包括查询、导入、Schema Change、Compaction、数据导出、UDF等,通过向量化减少虚函数调用与Cache Miss、进一步利用 SIMD 指令,充分发挥现代 CPU 的计算能力。同时通过对执行算子的优化,在宽表聚合和多表关联场景都获得了更高的查询性能。

▶︎丰富的索引结构和高效的存储引擎: SelectDB 支持前缀索引、ZoneMap、Bitmap、Bloom Filter、倒排索引等多种索引结构进行查询时数据剪枝优化。还引入行列混合存储以及行级 Cache,结合点查询短路径优化,最终实现点查询并发能力提升 20 倍。同时 SelectDB 还支持多种存储模型,可以针对使用场景进一步提升性能。

02 存算分离全新架构

基于阿里云成熟的云基础设施,云数据库 SelectDB 版采用云原生存算分离的架构,全量数据存储于价格低廉的对象存储 OSS 中,大幅降低了存储和计算的成本,经测算,使用云数据库 SelectDB 版所需成本仅是企业自建部署成本的1/5 - 1/2

存储与计算的分离,带来的最大优势是存储和计算可以独立扩缩容、按需扩缩容。其次,为满足用户对同一份数据上的分析负载隔离的需求(例如,导入的工作负载与查询的负载进行隔离,Adhoc 的大查询负载和在线点查询的负载间相互隔离),避免不同负载间相互抢占资源,云数据库 SelectDB 版提供了同一个实例多个物理计算集群(Multi-Cluster)的特性,用户可按需创建多个计算集群但共享同一份数据,同时多集群之间的资源是物理隔离的,这样更好的保证了隔离性

03 融合统一的分析体验

云数据库 SelectDB 版可以提供融合统一的解决方案,可满足用户在多种典型的数据处理与分析场景的需求,在一套系统中即可完成点查询、报表分析、即席查询、ETL/ELT 等多种查询负载。同时,SelectDB在 ETL/ELT 场景性能表现优异,在相同资源下,其速度是 Hive 的 54 倍、Spark 的 12 倍。

与此同时,融合统一的特性离不开联邦查询能力和对半结构化数据的支持:

1. 联邦查询:Multi-Catalog 功能支持多种异构数据源的元数据自动映射与同步,目前已经支持 Hive、Hudi、Iceberg、DLF、MaxCompute、Elasticsearch、Trino、ClickHouse、Oceanbase 等数十种数据源,兼容世面上主流的开放湖仓格式和 Metastore,实现了便捷的元数据管理和数据打通,在此基础上可实现联邦查询。该能力的推出,不仅简化了系统搭建和运维过程,而且为用户提供更加统一的使用体验。

2. 半结构化数据类型的支持:支持 Array、JSON、Map 等复合数据类型和动态 Schema 特性,简化了结构化数据写入流程,降低了写入难度。此外还提供倒排索引、NGram BloomFilter 、BKD 索引等丰富的索引结构,可实现对结构化/半结构化数据的高效分析和处理。该能力使 SelectDB 在日志存储分析场景下比 Elasticsearch 更具优势,性价比较 Elasticsearch 提升 10 倍

云数据库 SelectDB 版可以提供融合统一的解决方案,可满足用户在多种典型的数据处理与分析场景的需求,在一套系统中即可完成点查询、报表分析、即席查询、ETL/ELT 等多种查询负载。同时,SelectDB在 ETL/ELT 场景性能表现优异,在相同资源下,其速度是 Hive 的 54 倍、Spark 的 12 倍。

与此同时,融合统一的特性离不开联邦查询能力和对半结构化数据的支持:

1. 联邦查询:Multi-Catalog 功能支持多种异构数据源的元数据自动映射与同步,目前已经支持 Hive、Hudi、Iceberg、DLF、MaxCompute、Elasticsearch、Trino、ClickHouse、Oceanbase 等数十种数据源,兼容世面上主流的开放湖仓格式和 Metastore,实现了便捷的元数据管理和数据打通,在此基础上可实现联邦查询。该能力的推出,不仅简化了系统搭建和运维过程,而且为用户提供更加统一的使用体验。

2. 半结构化数据类型的支持:支持 Array、JSON、Map 等复合数据类型和动态 Schema 特性,简化了结构化数据写入流程,降低了写入难度。此外还提供倒排索引、NGram BloomFilter 、BKD 索引等丰富的索引结构,可实现对结构化/半结构化数据的高效分析和处理。该能力使 SelectDB 在日志存储分析场景下比 Elasticsearch 更具优势,性价比较 Elasticsearch 提升 10 倍

04 极简易用的使用体验

阿里云云数据库 SelectDB 版为用户提供了极简易用的使用体验,具体表现在以下几个方面:

1. 提供丰富的导入方式:云数据库 SelectDB 版提供了丰富易用的数据导入方式,包括Stream Load、OSS Load 以及为打通周边大数据生态进行连接导入的 Connector插件等,可以满足用户实时小批量数据导入和批量数据导入和集成的需求。

2. 高效的数据更新能力:支持主键表(Unique Key)进行高效的数据更新,并对 Upsert、条件更新/条件删除、部分列更新、分区覆盖等各类更新提供了完备的支持,不仅满足高效灵活的数据更新需求,还可以对海量可变的数据更新提供支持。

3. 支持MySQL连接协议:云数据库 SelectDB 版支持MySQL连接协议。用户可以使用MySQL Client、JDBC 和 DBeaver来连接使用阿里云数据库SelectDB版,对于用户来说节省了很多学习成本,简单易用。

4. 可视化控制台:云数据库 SelectDB 版提供了可视化控制台,方便管理者及开发者对大量任务进行管理。

云数据库 SelectDB 版四大解决方案

01 在线高并发报表与分析

典型场景:

主要服务在线业务、大量用户实时访问的在线高并发报表与分析,典型场景包括广告营销报表、保险客户分析、物流实时看板、交易明细查询等。

现状分析:

传统解决方案面临的挑战包括数据从产生到可见的延时高(小时级),查询响应速度慢并发低(仅支持数十并发),同时易发生数据丢失或重复,服务可用性差等问题。

如何解决:

▶︎支持通过 HTTP / JDBC 实时导入、内置数据库 CDC 同步、数据流式导入等方式导入数据,可有效缩短数据延时。

▶︎利用行列混存、向量化执行引擎、预聚合模型等技术,结合分区分桶裁剪、索引裁剪、执行计划短路等手段,可大幅提升查询速度及并发度。

▶︎支持事务性两阶段导入,基于云的对象存储进行数据持久化,可实现数据不丢不重。

▶︎支持在线扩容、升级自动副本均衡,支持多集群互备容灾,可实现服务高可用。

方案收益:

▶︎可达到 100 万行/秒的实时写入,数据可见性最快可以做到秒级别。

▶︎可支撑单机 3 万 QPS 的高并发,查询延时 99 分位 200ms 以内。

02 用户画像与行为分析

典型场景:

通过用户画像分析,可以洞察用户的行为、兴趣、需求等信息,更好地把握用户的生命周期,为企业提供精细化的营销和服务;通过用户行为分析,可以实现个性化、精细化的运营,以更加灵活的方式触达用户,提升用户的体验。

现状分析:

传统解决方案面临的挑战包括计算分析过程复杂,难以实时响应查询;表结构不灵活,不适应灵活的业务变化(如添加或删除列);同时,当用户数据发生变化时,原有数据无法实时更新。

如何解决:

▶︎支持丰富高效的行为分析、画像分析函数,可简化开发流程、提升开发效率。

▶︎支持高表正交位图技术,可实现画像场景的秒级圈人。

▶︎通过轻量级加减列以及动态表等技术,可支持行为分析业务属性频繁变动。

▶︎通过写时合并技术(MOW),可支持画像场景的宽表列实时更新。

方案收益:

▶︎在3000亿行为数据分析场景下,可实现平均延迟小于10s,P95延迟小于20s。

▶︎在千亿数据的用户画像分析场景下,可实现秒级人群预估、秒级10标签圈人和秒级100标签人群圈选。

03 日志存储与分析

典型场景:

日志对于保障系统、业务稳定性至关重要,常用于故障排查、监控告警等,企业需要构建统一的日志存储与分析平台。常见的日志种类有服务器日志、业务日志、网络设备日志、物联网日志等。

现状分析:

面对庞大的日志数量,日志场景需要同时实现高吞吐写入和实时可见性。且随着时间的推移,日志的规模不断增长,因此降低存储成本成为一个挑战。此外,日志场景往往还需要快速的文本检索能力,以便按关键字进行匹配查询,以满足故障排查等场景的快速响应需求。

如何解决:

▶︎采用客户端实时小批量写入、服务端内存攒批写入、时序 Compaction 机制等,可以优化写入吞度及实时性。

▶︎利用存储计算分离、列式存储、高压缩比算法等能力,可节约海量数据的存储成本。

▶︎利用倒排索引快速精准定位匹配的数据,结合时序存储模型特点和 TopN 查询的动态剪枝算法,显著提升日志检索与分析性能。

方案收益:

云数据库 SelectDB 版相较于传统方案,能够实现 4.2 倍的写入性能提升和 2.3 倍的查询性能提升,同时磁盘资源占用显著下降,空间占用仅是传统方案 1/5。

04 统一数据分析平台

典型场景:

大数据分析平台可以帮助企业有效地收集内部各种数据,为企业的各个领域(销售、营销、客户服务、运营、财务等)提供数据支持,促进企业决策的科学化和精细化。

现状分析:

传统的大数据平台解决方案包含多种组件,以及多个数据湖查询引擎和数据仓库系统。这些组件的组合可以满足客户的复杂大数据分析需求,包括 ETL、在线报表、即席分析和日志分析等。然而,这种解决方案存在复杂性高、性价比低、实时性差和开放性弱等问题。

如何解决:

▶︎可以通过 SQL 请求实现增量式导入数据湖中的数据,同时通过一套数据仓库系统即可满足 ETL、在线报表、日志分析等多种场景需求。

▶︎通过云数据库 SelectDB 版的联邦查询能力,实现统一的数据湖查询加速方案,可跨多个数据源进行数据查询,满足用户更高效、更灵活的数据处理需求。

▶︎兼容开源 Apache Doris,保证开放性,用户可以继续使用 Apache Doris,并且无缝衔接到云数据库 SelectDB 版。

方案收益:

▶︎可大幅降低计算存储冗余和架构复杂性,同时运维成本非常低、几乎不需要运维投入,不仅如此,使用成本也大幅降低,仅是原方案的 1/5。

▶︎在查询性能方面,相比 Presto 有 3~5 倍的速度提升;在数据 ETL 方面,性能相比 Spark 有 8+ 倍的速度提升。

快来关注

了解更多SelectDB:

https://www.aliyun.com/product/selectdb

加入钉钉群:

相关文章
|
19天前
|
机器学习/深度学习 安全 大数据
揭秘!企业级大模型如何安全高效私有化部署?全面解析最佳实践,助你打造智能业务新引擎!
【10月更文挑战第24天】本文详细探讨了企业级大模型私有化部署的最佳实践,涵盖数据隐私与安全、定制化配置、部署流程、性能优化及安全措施。通过私有化部署,企业能够完全控制数据,确保敏感信息的安全,同时根据自身需求进行优化,提升计算性能和处理效率。示例代码展示了如何利用Python和TensorFlow进行文本分类任务的模型训练。
58 6
|
1月前
|
SQL 开发框架 .NET
ASP.NET连接SQL数据库:详细步骤与最佳实践指南ali01n.xinmi1009fan.com
随着Web开发技术的不断进步,ASP.NET已成为一种非常流行的Web应用程序开发框架。在ASP.NET项目中,我们经常需要与数据库进行交互,特别是SQL数据库。本文将详细介绍如何在ASP.NET项目中连接SQL数据库,并提供最佳实践指南以确保开发过程的稳定性和效率。一、准备工作在开始之前,请确保您
160 3
|
2月前
|
消息中间件 缓存 监控
优化微服务架构中的数据库访问:策略与最佳实践
在微服务架构中,数据库访问的效率直接影响到系统的性能和可扩展性。本文探讨了优化微服务架构中数据库访问的策略与最佳实践,包括数据分片、缓存策略、异步处理和服务间通信优化。通过具体的技术方案和实例分析,提供了一系列实用的建议,以帮助开发团队提升微服务系统的响应速度和稳定性。
|
2月前
|
存储 Cloud Native 关系型数据库
Ganos实时热力聚合查询能力解析与最佳实践
Ganos是由阿里云数据库产品事业部与飞天实验室共同研发的新一代云原生位置智能引擎,集成于PolarDB-PG、Lindorm、AnalyticDB-PG和RDS-PG等核心产品中。Ganos拥有十大核心引擎,涵盖几何、栅格、轨迹等多种数据处理能力,实现了多模多态数据的一体化存储、查询与分析。本文重点介绍了Ganos的热力瓦片(HMT)技术,通过实时热力聚合查询与动态输出热力瓦片,无需预处理即可实现大规模数据秒级聚合与渲染,适用于交通、城市管理、共享出行等多个领域。HMT相比传统网格聚合技术具有高效、易用的优势,并已在多个真实场景中验证其卓越性能。
51 0
|
13天前
|
PHP 开发者 容器
PHP命名空间深度解析与最佳实践####
本文深入探讨了PHP中命名空间(namespace)的机制、应用场景及最佳实践,旨在帮助开发者有效避免命名冲突,提升代码的组织性和可维护性。通过实例讲解,本文将引导您理解如何在实际项目中灵活运用命名空间,以及如何遵循业界公认的最佳实践来优化您的PHP代码结构。 ####
|
12天前
|
PHP 开发者
PHP 7新特性深度解析及其最佳实践
【10月更文挑战第31天】本文将深入探讨PHP 7带来的革新,从性能提升到语法改进,再到错误处理机制的变革。我们将通过实际代码示例,展示如何高效利用这些新特性来编写更加健壮和高效的PHP应用。无论你是PHP新手还是资深开发者,这篇文章都将为你打开一扇窗,让你看到PHP 7的强大之处。
|
17天前
|
存储 Java 关系型数据库
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践,包括连接创建、分配、复用和释放等操作,并通过电商应用实例展示了如何选择合适的连接池库(如HikariCP)和配置参数,实现高效、稳定的数据库连接管理。
34 2
|
20天前
|
监控 安全 Serverless
"揭秘D2终端大会热点技术:Serverless架构最佳实践全解析,让你的开发效率翻倍,迈向技术新高峰!"
【10月更文挑战第23天】D2终端大会汇聚了众多前沿技术,其中Serverless架构备受瞩目。它让开发者无需关注服务器管理,专注于业务逻辑,提高开发效率。本文介绍了选择合适平台、设计合理函数架构、优化性能及安全监控的最佳实践,助力开发者充分挖掘Serverless潜力,推动技术发展。
49 1
|
24天前
|
监控 安全 Java
构建高效后端服务:微服务架构深度解析与最佳实践###
【10月更文挑战第19天】 在数字化转型加速的今天,企业对后端服务的响应速度、可扩展性和灵活性提出了更高要求。本文探讨了微服务架构作为解决方案,通过分析传统单体架构面临的挑战,深入剖析微服务的核心优势、关键组件及设计原则。我们将从实际案例入手,揭示成功实施微服务的策略与常见陷阱,为开发者和企业提供可操作的指导建议。本文目的是帮助读者理解如何利用微服务架构提升后端服务的整体效能,实现业务快速迭代与创新。 ###
57 2
|
1月前
|
存储 缓存 监控
深入解析:Elasticsearch集群性能调优策略与最佳实践
【10月更文挑战第8天】Elasticsearch 是一个分布式的、基于 RESTful 风格的搜索和数据分析引擎,它能够快速地存储、搜索和分析大量数据。随着企业对实时数据处理需求的增长,Elasticsearch 被广泛应用于日志分析、全文搜索、安全信息和事件管理(SIEM)等领域。然而,为了确保 Elasticsearch 集群能够高效运行并满足业务需求,需要进行一系列的性能调优工作。
83 3

热门文章

最新文章