高性能利器!华为云MRS ClickHouse重磅推出!
摘要:华为智能数据湖MRS服务即将上线ClickHouse高性能引擎集群,用户只需要几分钟,就可以轻松方便地一键式完成集群部署搭建,快速拥有PB级数据的秒级交互查询分析能力,帮助用户带来极致的性能体验。
前言
高性能引擎简介
ClickHouse是最近这两年非常火的一款开源的分析型数据库,来自俄罗斯的Yandex公司,2016年开源。它独立于Hadoop大数据体系,其最核心的特点是极致压缩率和极速查询性能,能为用户节约大量成本,同时创造更多收益。它提供了兼容标准SQL协议的接口,支持JDBC、ODBC驱动,使用C++语言实现。当然它还有个宏伟的目标:成为世界上最快的分析型数据库,官方测试数据表明,ClickHouse领先Vertica达6倍,领先GreenPlum达到18倍,更是比传统大数据引擎Hive、Spark等快了上百倍!这是它和其他多个开源以及商业数据库的性能比对结果:https://clickhouse.tech/benchmark/dbms。
典型应用场景
ClickHouse是Click Stream + Data WareHouse的缩写,它起初应用于一款Web流量分析工具,基于页面的点击事件流,面向数据仓库进行OLAP分析。现在,ClickHouse被广泛的应用于互联网广告、App和Web流量、电信、金融、物联网等众多领域,非常适用于商业智能化应用场景,在国内外有大量的应用和实践:https://clickhouse.tech/docs/en/introduction/adopters/。
正文
华为智能数据湖MRS服务即将上线ClickHouse高性能引擎集群,用户只需要几分钟,就可以轻松方便地一键式完成集群部署搭建,快速拥有PB级数据的秒级交互查询分析能力,帮助用户带来极致的性能体验。
手动挡集群模式升级
2.1.1模糊的集群
在介绍之前,我们首先要有个思维转变,ClickHouse集群和通常理解的集群是有差异的。比方说Hadoop集群由2个NameNode和多个DataNode组成的完备且独立的集群,业务可以直接交互访问;而对于多个ClickHouse节点组成的集群,它们是没有中心节点,更多的是一个静态资源池的概念,业务要使用ClickHouse集群模式,需要预先在各个节点的配置文件中定义cluster信息,等所有参与的节点达成共识,业务才可以正确的交互访问,也就是说配置文件中的cluster才是我们通常理解的“集群”概念。

2.1.2真实的cluster
常见的数据库系统,隐藏了表级以下的数据分区、副本存储等细节,用户是无感知的,而ClickHouse则要求用户主动来规划和定义数据分片(shard)、分区(partition)、副本(replica)位置等详细配置。它的这种类似“手动挡”的属性,给用户带来及其不友好的体验,所以MRS服务的ClickHouse实例对这些工作做了统一的打包处理,适配成了“自动挡”,实现了统一管理,灵活易用。具体部署形态上,一个ClickHouse实例将包含3个Zookeeper节点和多个ClickHouse节点,采用Dedicated Replica模式,数据双副本高可靠。

平滑的弹性扩容能力
随着业务的快速增长,面对集群存储容量或者CPU计算资源接近极限场景,MRS服务提供了平滑的弹性扩容能力,快速的满足客户业务增长的诉求。在用户进行集群扩容新的ClickHouse节点时,MRS提供了一键式数据Balance均衡工具,并把数据均衡的主动权交给用户,由用户根据业务的特点,自由决定数据均衡的方式和时间点,以便保障业务可用性,实现了更加平滑的扩容能力。
例如:
- 把负载高的节点从ELB中摘除,让负载(新数据)往新节点倾斜;
- 使用MRS提供的专业化工具重新均衡数据;
- 数据双写老化后自动切换;

多元的鲲鹏算力加持
面对鲲鹏生态快速发展,华为云也提供包含X86、ARM鲲鹏、昇腾在内的多样计算能力,支持从IOT、大数据、到AI等多种技术,提供最佳的性能、性价比、能效比。得益于华为云鲲鹏处理器多核优势,MRS的ClickHouse集群也支持华为自研ARM鲲鹏服务器,充分利用鲲鹏多核高并发能力,提供了芯片级的全栈自主优化能力,同时使用华为自研的操作系统EulerOS、华为JDK及数据加速层,充分释放底层硬件算力,实现了高性价比。
灵活易用的配置管理
MRS服务为用户提供了统一的集群管理页面,并将ClickHouse的实例配置向用户完全开放,用户可以根据自定义需求,灵活方便的通过可视化页面修改集群配置参数,包括增删cluster、macros、storage等信息。和其他MRS服务组件的配置一样,ClickHouse配置也分成集群和节点两个层面,考虑到ClickHouse引擎特殊性,需要注意不要被覆盖。另外,需要引起特别注意是,有些高级配置建议只能由“高级”用户使用,否者可能会导致系统异常。

高可用HA部署架构
MRS服务为用户提供了基于ELB的HA部署架构,可以将用户访问流量自动分发到多台后端节点,扩展系统对外的服务能力,实现更高水平的应用容错。如下图,客户端应用请求集群时,使用ELB(Elastic Load Balance)来进行流量分发,通过ELB的轮询机制,写不同节点上的本地表(Local Table),读不同节点上的分布式表(Distributed Table),这样,无论集群写入的负载、读的负载以及应用接入的高可用性都具备了有力的保障。

丰富的监控运维能力
MRS提供了丰富的ClickHouse集群监控和告警能力,实时发现系统异常,保障业务稳定运行。用户可以通过集群管理Manager的监控页面实时查看ClickHouse集群的运行概况,如健康、配置及角色实例状态统计等指标信息,同时还可以监控具体实例内部运行状态,包括:实时的读、写、数据库连接等多个维度的信息;此外,MRS还可以与华为云消息通知服务(SMN)的消息服务系统对接,将告警信息通过短信或者邮件等形式推送给用户。用户可以自定义配置监控与告警阈值用于关注各指标的健康情况,当监控数据达到告警阈值,系统将自动触发告警,将异常信息以告警形式及时通知到用户。通过以上能力,MRS可以帮助用户轻松运维,实时监控,实时发送告警,操作灵活,让用户更加省心省力。

可靠的安全防护能力
MRS提供了VPC网络隔离、专属资源隔离、主机安全等完备的安全保障机制,保障了用户ClickHouse集群数据访问的安全可靠。具体如下:
- VPC网络隔离:在公有云部署环境中,MRS通过VPC提供隔离的网络环境,保证集群的业务、管理的安全性。用户可以结合虚拟私有云VPC的子网划分、路由控制、安全组等功能,为用户提供高安全、高可靠的网络隔离环境。
- 专属资源隔离:在面向企业、政府、金融等客户,MRS提供了计算、存储资源池以及网络、管控多级隔离的资源隔离部署方案,为客户打造了安全可靠、便捷的云上“头等舱”。具体模式包括:专属计算资源+共享存储资源、共享计算资源+专属存储资源、专属计算资源+专属存储资源等三种模式。
- 主机安全服务:MRS支持与云上的安全服务集成,针对主机安全服务,做了兼容性测试,保证功能和性能不受影响的情况下,增强服务的安全能力,如支持漏洞扫描、安全防护、应用防火墙、堡垒机、网页防篡改等能力。
结尾
总结展望
MRS隆重推出的ClickHouse引擎,快速补齐了MRS服务在大数据实时分析领域的能力。同时相对用户自建集群,MRS ClickHouse具备平滑扩容、HA、鲲鹏加持、灵活配置、简单运维、安全可靠等优势能力,将会成为用户在云上构建高性能海量数据分析仓库的首选。
同时作为一款新的重量级数据库引擎,我们还在持续学习和探索过程中,MRS后面会持续从内核、服务化、生态端多个角度进行优化和改进,包括:鲲鹏指令集加速、安全鉴权、SQL诊断、BI工具集成、AI融合高级特性等。
案例分享
- 前段时间我们在华为云MRS服务上测试了ClickHouse官网的Star Schema Benchmark测试套,硬件配置:3台32 vCPU * 128GB的虚机,1TB的数据集,13个查询6个在1秒以内返回,10个在5秒内返回,全部查询10秒以内返回,性能表现非常突出。
- 海量数据分析的低成本案例:https://altinity.com/blog/2020/1/1/clickhouse-cost-efficiency-in-action-analyzing-500-billion-rows-on-an-intel-nuc
高性能利器!华为云MRS ClickHouse重磅推出!的更多相关文章
- 华为云MRS支持lakeformation能力,打造一站式湖仓,释放数据价值
摘要:对云端用户而言,业务价值发现是最重要的,华为MRS支持LakeFormation后,成功降低了数据应用的成本,帮助客户落地"存"与"算"的管理,加快推进了 ...
- 华为云 MRS 基于 Apache Hudi 极致查询优化的探索实践
背景 湖仓一体(LakeHouse)是一种新的开放式架构,它结合了数据湖和数据仓库的最佳元素,是当下大数据领域的重要发展方向. 华为云早在2020年就开始着手相关技术的预研,并落地在华为云 Fusio ...
- ServerlessBench 2.0:华为云联合上海交大发布Serverless基准测试平台
摘要:华为云联合上海交大重磅推出ServerlessBench 2.0,为社区提供涵盖12类基准测试用例.新增5大类跨平台测试用例.4大类关键特性指标.且多平台兼容的Serverless开放基准测试集 ...
- 产品质量管理利器,华为云发布CodeArts Defect缺陷管理服务
摘要:近日,华为云CodeArts Defect缺陷管理服务正式上线,提供结构化缺陷跟踪流程和标准化的质量度量模型. 本文分享自华为云社区<产品质量管理利器,华为云发布CodeArts Defe ...
- 华为云ModelArts图深度学习,学习知识还能考取微认证
作为人工智能最前沿的技术之一,图深度学习被公认是人工智能认识世界实现因果推理的关键,也是深度学习未来发展的方向.但深度学习对图数据模型的支持性差一直是众多研究者难以攻克的难点,因此图深度学习在实际生产 ...
- 华为云PaaS首席科学家:Cloud Native +AI,企业数字化转型的最佳拍档
近日,在2019华为全球分析师大会期间,华为云PaaS首席科学家熊英博士在+智能,见未来(华为云&大数据)的分论坛上,从云计算行业发展谈起,深入云原生发展趋势,对华为云智能应用平台做了深度解读 ...
- 【华为云技术分享】智能诊断和优化,华为云DAS服务云DBA平台让您无忧运维
摘要:随着时代的发展,传统的“人工”运维方式,已经逐渐跟不上企业业务发展的需要.如何更好的保证数据库系统的稳定性.安全性.完整性和高性能,实现运维工具化.产品化.自助化.自动化,是当前数据管理和运维面 ...
- 顶会两篇论文连发,华为云医疗AI低调中崭露头角
摘要:2020年国际医学图像计算和计算机辅助干预会议(MICCAI 2020),论文接收结果已经公布.华为云医疗AI团队和华中科技大学合作的2篇研究成果入选. 同时两篇研究成果被行业顶会收录,华为云医 ...
- 解密华为云FusionInsight MRS新特性:一架构三湖
摘要:华为云安全网关产品总监郭冕在"华为云TechWave云原生2.0专题日"上发表<华为云FusionInsight MRS,一个架构实现三种数据湖>的主题演讲,分享 ...
- 华为云FusionInsight MRS:助力企业构建“一企一湖,一城一湖”
摘要:华为云FusionInsight MRS新一代的数据湖,让大数据越用越快.越用越易.越用越稳.越用越省!让数据价值近在眼前! 10月30日,以"携手共赢·数创未来"为主题的第 ...
随机推荐
- [数据分析与可视化] 基于Python绘制简单动图
动画是一种高效的可视化工具,能够提升用户的吸引力和视觉体验,有助于以富有意义的方式呈现数据可视化.本文的主要介绍在Python中两种简单制作动图的方法.其中一种方法是使用matplotlib的Anim ...
- CSP 2022 游记
赛前占坑. 由于不知是 \(Day ?\) 故采用日期方式记录. 文笔所限,闲话较多,略显杂乱. 09.?? 接到通知,LN 初赛线上.面基环节无了/kk 09.17 翘 whk 和数学统练参加多校联 ...
- YXの每日挂分记录
7.11 T1 不开两倍数组 100->60. 7.18 T2 dp+矩乘 转移不判边界 100->10. 7.20 T2 人类智慧 1e6 n log n 100->10,求前 5 ...
- [Python急救站课程]叠加等边三角形的绘制
叠加等边三角形的绘制 from turtle import * penup() fd(-100) pendown() pensize(10) seth(60) fd(200) seth(-60) fd ...
- AtCoder Beginner Contest 237 G - Range Sort Query
原题链接 G - Range Sort Query 思路: \(x\)是固定的,所以考虑将排序维护成0 1串,为\(p_i < x\)为\(0\),那么\(p_i \geq x\)为\(1\), ...
- python 数据可视化:直方图、核密度估计图、箱线图、累积分布函数图
本文使用数据来源自2023年数学建模国赛C题,以附件1.附件2数据为基础,通过excel的数据透视表等功能重新汇总了一份新的数据表,从中截取了一部分数据为例用于绘制图表.绘制的图表包括一维直方图.一维 ...
- 使用Spring Cache高效处理缓存数据
Spring Cache是Spring框架提供的一种缓存抽象,可以有效地处理缓存数据.使用Spring Cache可以简化开发过程,提高应用程序的性能和可扩展性. 本文将详细介绍如何使用Spring ...
- Go笔记(4)-流程控制
5.Go语言流程控制 程序流程的控制结构一般有三种,顺序结构,选择结构,循环结构 (1)选择结构 if语句 if流程控制与其他语言的if流程控制基本相同 package main import &qu ...
- MongoDB是一个NoSQL数据库,有着多种不同的命令和操作。以下是一些常见的MongoDB命令:
show dbs:列出所有数据库 use db_name:切换到指定的数据库 db.dropDatabase():删除当前数据库 db.createCollection("collectio ...
- [ABC263F] Tournament
Problem Statement $2^N$ people, numbered $1$ to $2^N$, will participate in a rock-paper-scissors tou ...