-
关系型数据库架构介绍数据库架构特点对比数据库架构发展单机架构早期互联网的LAMP(Linux,Apache,MySQL,PHP)架构的服务器就是最典型的单机架构的使用为了避免应用服务和数据库服务对资源的竞争,单机架构也从早期的单主机模式发展到数据库独立主机模式,把应用和数据服务分开。优点部署集中,运维方便。缺点可扩展性:数据库单机架构扩展性只有纵向扩展 (Scale-up)。通过增加硬件配置来提升性能,但单台主机的硬件可配置的资源会遇到上限。存在单点故障:扩容的时候往往需要停机扩容,服务停止。硬件故障导致整个服务不可用,甚至数据丢失。性能瓶颈。分组架构 - 主备数据库部署在两台服务器,其中承担数据读写服务的服务器称为“主机”。另外一台服务器利用数据同步机制把主机的数据复制过来,称为“备机”。同一时刻,只有一台服务器对外提供数据服务。优点应用不需要针对数据库故障来增加开发量。相对单机架构提升了数据容错性。缺点资源浪费,备机和主机同等配置,但长期范围内基本上资源限制,无法利用。性能压力还是集中在单机上,无法解决性能瓶颈问题。当出现故障时候,主备机切换需要一定的人工干预或者监控。分组架构 - 主从部署模式和主备机模式相似,备机(Backup)上升为从机(Slave),对外提供一定的数据服务。通过读写分离方式分散压力:写入、修改、删除操作,在写库(主机)上完成;把查询请求,分配到读库(从机)。优点提升资源利用率,适合读多写少的应用场景。在大并发读的使用场景,可以使用负载均衡在多个从机间进行平衡。从机的扩展性比较灵活,扩容操作不会影响到业务进行。缺点延迟问题,数据同步到从机数据库时会有延迟,所以应用必须能够容忍短暂的不一致性。对于一致性要求非常高的场景是不适合的。写操作的性能压力还是集中在主机上。主机出现故障,需要实现主从切换,人工干预需要响应时间,自动切换复杂度较高。分组架构 - 多主多主架构(双活,多活架构)数据库服务器互为主从,同时对外提供完整的数据服务。优点资源利用率较高的同时降低了单点故障的风险。缺点双主机都接受写数据,要实现数据双向同步。双向复制同样会带来延迟问题,极端情况下有可能数据丢失。数据库数量增加会导致数据同步问题变得极为复杂,实际应用中多见双机模式。共享存储多活架构(特殊的多主架构)共享存储的多活架构(Shared-Disk)一种特殊的多主架构。解决了主从设备之间数据同步带来的数据一致性问题数据库服务器共享数据存储,而多个服务器实现均衡负载。优点多个计算服务器提供高可用服务,提供了高级别的可用性。可伸缩性,避免了服务器集群的单点故障问题。比较方便的横向扩展能够增加整体系统并行处理能力。缺点实现技术难度大。当存储器接口带宽达到饱和的时候,增加节点并不能获得更高的性能,存储IO容易成为整个系统的性能瓶颈。较为成功的案例:Oracle的RAC(Real Application Cluster), 微软的SQL Server Failover Cluster。GaussDB(for MySQL)采用多节点集群的架构,集群中有一个写节点(主节点)和多个读节点(只读节点),各节点共享底层的存储(DFV)Sharding是Shared-Nothing架构的基础,只有对数据进行分片才可能对实现集群的Shared-Nothing。Shared-Nothing概念是从资源独立性角度来描述架构Sharding则是从数据的独立性角度来描述架构MPP是并行计算的角度来描述架构,是并行计算技术在分布式数据库上的应用和体现。分片(Sharding)架构分片架构主要表现形式就是水平数据分片架构把数据分散在多个节点上的分片方案,每一个分片包括数据库的一部分,称为一个shard。多个节点都拥有相同的数据库结构,但不同分片的数据之间没有交集,所有分区数据的并集构成数据总体。常见的分片算法有:根据列表值,范围取值和Hash值进行数据分片。优点数据分散在集群内的各个节点上,所有节点可以独立性工作。无共享(Shared-Nothing)架构集群中每一个节点(处理单元)都完全拥有自己独立的CPU/内存/存储,不存在共享资源。各节点(处理单元)处理自己本地的数据,处理结果可以向上层汇总或者通过通信协议在节点间流转。节点是相互独立的,扩展能力强。整个集群拥有强大的并行处理能力。MPP架构 (Massively Parallel Processing)MPP:大规模并行处理(Massively Parallel Processing)MPP是将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果。特征任务并行执行,分布式计算。常见的MPP产品无共享Master:Vertica,Teradata。共享Master:Greenplum,Netezza。Teradata,Netezza是软硬件一体机。GaussDB(DWS),Greeplum,Vertica是软件版MPP数据库
-
关系型数据库主流应用场景OLTP和OLAP对比分析来自数据仓库概念创始人 W.H.Inmon《Building the DataWarehouse》联机事务处理 (OnLine Transaction Processing)OLTP是传统关系数据库的主要应用面向基本的,日常的事务处理,例如银行储蓄业务的存取交易,转账交易等。特点大吞吐量:大量的短在线事务(插入、更新、删除),非常快速的查询处理。高并发,(准)实时响应。典型的OLTP场景零售系统金融交易系统火车票销售系统秒杀活动联机分析处理 (OnLine Analytical Processing)OLAP联机分析处理的概念最早是E.F.Codd于1993年相对于OLTP系统而提出的。是指对数据的查询和分析操作,通常对大量的历史数据查询和分析。涉及到的历史周期比较长,数据量大,在不同层级上的汇总,聚合操作使得事务处理操作比较复杂。特点主要面向侧重于复杂查询,回答一些“战略性”的问题。数据处理方面聚焦于数据的聚合,汇总,分组计算,窗口计算等“分析型”数据加工和操作。 从多维度去使用和分析数据。典型的OLAP场景报表系统,CRM系统。金融风险预测预警系统、反洗钱系统。数据集市,数据仓库。报表系统是产生固定周期报表的,或者上报固定格式报表数据的平台或系统,如日报,周报,月报,年报,为经营决策提供电子化报表数据。CRM系统,客户关系管理系统是维护客户,对客户相关信息进行存储,客户行为进行分析, 对客户进行响应,挽留和市场活动管理等综合性业务系统平台。数据集市一般是面向一个组织中某个部门级别需求的应用需要,比如信用卡部门的分析需求。数据仓库是面向企业级别的构建整个企业分析处理环境而产生的分析类平台系统。数据库性能衡量指标TPC(Transaction Processing Performance Council,事务处理性能委员会)职责是制定商务应用基准测试标准(Benchmark)的规范、性能和价格度量,并管理测试结果的发布。制定的是标准规范而不是代码,任何厂家依据规范最优地构造自己系统进行评测。推出了很多基准测试标准,其中针对OLTP和OLAP分别有两个规范。TPC-C规范面向OLTP系统,主要包括两个指标流量指标:tpmC(tpm – transactions per minuete, 即每分钟测试系统处理的事务数量)。性价比指标:Price(测试系统价格)/tpmC。TPC-H规范面向OLAP系统流量指标:qphH – Query per hour,即每小时处理的复杂查询数量。需要考虑测试数据集合大小,分为不同的测试数据集,指定了22个查询语句,可以根据产品微调。测试场景:数据加载,Power能力测试和Througput测试。
-
数据库技术技术发展史人工管理文件系统数据库系统数据早期的计算机系统主要用于科学计算,处理的数据是数值型数据整数: 1,2,3,4,5….浮点数:3.14, 100.34, -25.336…现代计算机系统的数据概念是广义的数字、文字、图形、图像、音频、视频等描述事务的符号记录称为数据记录:在计算机中表示和存储数据的一种格式或一种方法数据的含义称为数据的语义数据库数据库:存放数据的仓库,是大量数据的集合存放在数据库中数据的特点永久存储有组织:按一定的数据模型组织,描述和储存可共享:为各种用户共享使用,而不是某个用户所专有数据库管理系统(Database Management System,DBMS)能够科学地组织和存储数据,高效地获取和维护数据的系统软件,是位于用户与操作系统之间的数据管理软件。主要功能①数据定义语言(DDL)用户可以通过它可以方便地对数据库中的数据对象的组成与结构进行定义②数据组织、存储和管理功能基本目标是提高存储空间利用率和方便存取,提供多种存取方法来提高存取效率③数据操纵语言(DML)用户可以使用它实现对数据库的基本操作,如查询、插入、删除和修改等④数据库的事务管理和运行管理功能数据库在建立、运用和维护时由数据库管理系统统一管理和控制,以保证事务的正确运行,保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复⑤数据库的建立和维护功能数据库初始数据的输入和转换功能;数据库的转储、恢复功能;数据库的重组织功能和性能监视、分析功能等,这些功能通常由一些使用程序或管理工具完成的。⑥与其他软件系统的通信功能等数据库系统(Database System, DBS)数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员组成的存储、管理、处理和维护数据的系统。蓝色框的代表是数据库系统组成部分。操作系统不属于数据库系统。计算机系统层次结构图数据库管理系统调用操作系统
-
华为伙伴暨开发者大会2022终于迎来完美收官~在GaussDB数据库专场大咖们金句频出快来get他们的精彩发言看看是谁的DNA又动了呢?
-
海量数据的聚合分析如何满足业务要求?如何快速构建跨云、跨边、跨集群的云原生应用?如何快速构建兼容多种推理框架的高性能AI应用?2022年6月16日在华为伙伴暨开发者大会上,华为云公布四大重磅开源项目, 旨在帮助开发者解决上述问题。openGemini:openGeminiKurator:kurator-dev · GitHubKappital:Kappital · GitHubModelBox:ModelBox | ModelBox是一套统一的端边云AI应用开发和运行框架的规范,以及在此规范上所实现的运行时框架。...#华为伙伴暨开发者大会2022# #华为云#
-
【中国,2022年6月16日】今天,在华为伙伴暨开发者大会2022,华为云将GaussDB时序时空数据库内核开源,并命名为openGemini。华为云数据库创新Lab主任张文亮在华为云数据库专题论坛对openGemini进行了详细的技术解读,介绍了其创新架构、卓越的读写性能、高效的数据分析和数据压缩等能力,是企业数字化转型升级,海量时序时空数据处理的最佳选择。物联网时代,设备数量激增,数据库面临更大挑战。比如高并发写入大量数据如何保证高性能?每天GB、TB级数据如何降低存储成本?海量数据的聚合分析如何满足业务要求?与此同时,随着企业数字化和云计算技术的发展,企业IT系统数量越来越多,功能也越来越复杂,导致企业在处理数据时存在诸多挑战。首先,数据存在多种模态,分散存储在多套系统中。其次,数据指标类型多,采样频率高,数据增长迅猛。第三,业务种类繁多,对分析的时效性要求越来越高。最后,业务之间存在复杂的关联,故障检测和根因分析很困难。多个系统的运维监控也对数据库提出了新的需求。时序数据库是针对物联网和运维监控等场景,结合业务和数据特点专门设计的一种垂直领域数据库系统,在数据压缩精简、数据分层存储、连续数据查询以及数据分析等方面具有超越传统关系型数据库的明显特点和优势。华为云整合产业和技术优势,打造了业界领先的企业级时序数据库GaussDB(for Influx),并经过外部公有云业务服务化的锤炼以及内部DevOps等业务的长时间打磨,在大规模集群、高性能查询、分级压缩存储等方面都有明显优势。在此次大会上,华为云宣布将GaussDB(for Influx)内核正式对外开源,开源品牌命名为openGemini,它是继openGauss数据库开源之后,华为开源的又一关键数据库系统。openGemini兼容InfluxDB、Prometheus生态API,具有高性能、高扩展、存储-分析一体化、运维成本低、高数据压缩率等5大优势。openGemini数据库全景图高性能,千亿级时序数据全生命周期管理openGemini通过多核并行算法、数据分级存储、向量化、数据预处理、近数据处理等技术,实现极致读写性能。在海量数据场景下,支持每天万亿指标数据写入,万级传感器数据时空聚合查询亚秒级响应,在同类开源产品中性能优势明显。高扩展,满足企业复杂业务处理诉求openGemini由ts-sql, ts-store, ts-meta三个组件组成,每个组件可单独扩展,能够支撑100+节点的扩展,可灵活应对不同时序业务场景。存储-分析一体化,实现数据闭环管理openGemini基于AI技术的强大数据分析能力,提供时序预测、时序异常检测能力,实现了数据从存储到分析完整的闭环管理。运维成本低openGemini架构简单,安装部署灵活,无第三方依赖,大幅减轻了运维的成本。高数据压缩率openGemini采用行列混存方式,数据按列进行压缩,不同数据类型对应不同的数据压缩算法,极大缩减了数据压缩空间。如华为云某服务存储空间从每天1035GB降低到82GB,缩减了12.6倍。技术创新是openGemini开源社区持续、健康发展的推动力,华为云将坚持开放合作的运营理念,期待与开发者、企业一起共建openGemini开源社区,实现开源成果的共享,促进时序数据库产业快速发展,实现技术的商业价值和社会价值。openGemini社区欢迎企业人员、科研工作者、学生等伙伴的加入。让我们携手与共,共创新、赢未来!官网地址:http://www.opengemini.org
-
6月16日,2022年华为伙伴暨开发者大会正在以线上的方式火热进行,会上集结了众多行业专家、合作伙伴和客户,一起共话行业前沿趋势,探索技术新发展。在“探秘GaussDB,打造坚实金融数据新底座”专场,华为云数据库首席架构师冯柯、工商银行软件开发中心高级经理董勇明、上海掌数科技有限公司首席顾问邹昌根和华为云数据库创新LAB主任张文亮以线上的形式现身,与观众分享了GaussDB最新技术趋势,以及华为云GaussDB与伙伴合作背后的故事和实践经验。 华为云GaussDB 技术创新之路永不停歇持续创新是华为云一直以来坚持在做的事。当前,随着5G、IoT、AI、大数据的快速发展,数据量爆发式增长,数据库云化进一步提升,数据库行业也迎来了云原生2.0时代,这对数据库的性能、可靠性、可用性都有了更高的要求。华为云GaussDB多年来持续聚焦技术创新,构建以应用为中心的新型数据库云服务,让客户聚焦业务创新。在此次大会上,华为云数据库首席架构师冯柯重点介绍了刚刚正式商用的GaussDB云原生HTAP,分享如何为业务提供更加及时精准的数据分析,助力商业决策;ALT应用无损透明技术如何在遭遇故障、运维以及实例变更时保持业务不中断,实现真正的业务高可用;创新性地将NDP(Near Data Processing, 近数据处理) 和PQ(Parallel Query, 并行查询)相结合,打造了NDPQ(近数据并行处理),打破复杂查询性能天花板。华为云GaussDB的技术优势正在赋能越来越多的企业客户实现数字化高效转型。 工商银行核心系统转型 聚焦技术硬实力 夯实数据底座“在数字化升级的道路上,我们选择了华为云GaussDB作为优秀的合作伙伴。”工商银行软件开发中心高级经理董勇明在分享中提到,工商银行对自身的核心交易系统的诉求有清晰的认知,自2019年和GaussDB联创以来,已有20多个业务系统相继试点上线。去年,在开放平台大型业务系统传统集中式数据库转型领域,双方持续技术攻关,初步形成了整套的系统性技术资产和解决方案,为金融行业提供了低成本、高效可控的转型借鉴。“这一路的联创实践,充分验证了传统集中式数据库向分布式数据库转型的可行性,为大型商业银行核心系统转型趟出了一条宽阔的道路。未来,工商银行将继续依托产学研联合创新机制,与包括华为在内业界领先企业深入开展联合技术攻关与融合共建,共建金融科技新生态”董勇明说。持续技术攻关,联手共建金融科技新生态 掌数科技&华为云GaussDB 助力证券行业金融创新 打造行业标杆“数据库技术作为根技术,在华为生态体系建设中是非常重要的,这也是我们所看重的。”上海掌数科技有限公司首席顾问邹昌根说到。掌数科技是一家聚焦于证券和大资管行业,面向数据库和大数据技术、智能化场景应用以及行业信息技术应用创新领域的金融科技企业,服务于全国80+大型金融机构客户。掌数科技作为华为在金融证券行业首家数据库技术领域的全面合作伙伴,以法人清算系统为行业典型应用场景,形成了以GaussDB为数据底座的一系列全栈式金融创新方案,并已经在证券行业展开试点应用。该方案不仅规划设计了两地三中心的网络高可用架构,也提供了完善的容灾安全保障,以及一整套、全面的基于GaussDB的技术支撑与服务体系。 联创形成基于法人清算系统的GaussDB全栈式金融创新方案 邹昌根表示:“我们期待通过与华为云GaussDB的合作,能够从多个维度保障创新项目的实施落地,让行业充分感知价值,展现我们优秀的实践经验;我们也将共同推进服务能力与体系建设,从而真正形成完整的GaussDB生态体系。” 探秘openGemini 共建开源时序数据库新生态同时,在GaussDB 数据库专场,华为云数据库创新LAB主任张文亮也对刚刚开源的时序时空数据库做了技术解读。“为了更好地推动数字化产业的创新发展,我们决定把自己的时序数据库GaussDB(for Influx)对外开源,开源社区叫openGemini,这是继openGauss开源之后,华为开源的又一数据库根技术。”张文亮说。openGemini时序时空数据库面向物联网、运维监控等业务场景,具备创新的架构设计、卓越的读写性能、高效的数据分析能力和数据压缩能力,帮助企业经济高效地处理海量时序数据。openGemini开源后将秉持着“基于创新技术、贡献产业发展,开放合作,共建共享”的生态策略,和开发者、企业一起,完善周边工具和南北向的生态,共同繁荣openGemini的技术生态。汇聚各界力量,共建openGemini繁荣生态 展望未来,华为云GaussDB将持续深耕技术创新,继续携手工商银行和掌数科技,以及越来越多的企业伙伴,以技术赋能业务数字化升级,并持续贡献openGauss和openGemini开源生态,为行业发展创造更多价值!
-
华为云GaussDB精彩议程来袭,重磅特性升级,优秀实践,重大产品开源……更多精彩内容,请锁定6月16日10:30GaussDB专场直播~
-
6月8日16:00,华为云快成长直播间-云数据库专场来啦!看华为云大咖架构师费鹏,如何深度解析用户自建数据库的痛点,又是如何对症下药,有针对性地提供华为云数据库解决方案!看直播→https://activity.huaweicloud.com/kuaichengzhang_live/20220608.html
-
华为云618惠上云,更简单!云数据库RDS for MySQL 1年享1.2折起,任意数据库迁移上云买1年送1年。活动期间还有8800元大礼包、满额赠华为笔记本,赢得1元换购万元数据库的机会!更多活动详情→https://activity.huaweicloud.com/dbs_Promotion/index.html
-
1. 背景随着5G和IOT的快速发展,面对爆发式增长的时序数据,如何才能挖掘数据中的潜在价值,为客户的业务运行、商业决策提供精确的指导?在统计学中,直方图作为一种经典的分析工具,可以直观地描述数据分布特征,应用场景极其广泛,例如:在网络监控数据方面,通过直方图可以捕捉异常数据的分布区间,便于网络的自诊断与修复;在时序数据分析方面,通过直方图可以表示数据的分布特征,便于时序数据的特征提取;作为代价评估模型的输入从而指导数据库内部的查询优化;本文带您了解直方图在不同产品中的实现,以及GaussDB(for Influx)中直方图的使用方法。2. 直方图的实现方式时序及分析性数据库大部分都支持了直方图算子,但各个数据库中的直方图实现上也有一定差异,其中几种比较典型的直方图实现有:Druid:Druid-histogram拓展中提供了近似直方图(approximate histogram aggregator)和固定桶直方图(fixed buckets histogram)聚合器。其中近似直方图根据论文《A Streaming Parallel Decision Tree Algorithm》实现,较适用于随机分布的数据。ClickHouse:ClickHouse提供了自适应直方图,查询的结果为近似值。与Druid类似,其实现参考了论文《A Streaming Parallel Decision Tree Algorithm》。当新数据输入到直方图时,直方图中桶的边界会被调整,通常情况下,桶的宽度并不相等。 ElasticSearch:ElasticSearch中支持了HDR Histogram(High Dynamic Range Histogram),HDR Histogram是一种替代实现,在计算网络延迟的百分位数表现良好。同时,当值的范围并不清楚时,官方并不建议使用HDR Histogram,因为此时内存占用会很高。InfluxDB v2.0:InfluxDB同样提供了直方图的实现,与其它直方图略有不同。InfluxDB2.0可以设置直方图的桶的生成方式,linearBins()可以将数据按照线性分割,即桶宽相等,logarithmicBins()则可以将数据按照指数分割,即桶宽呈指数形式增长。GaussDB(for Influx):GaussDB(for Influx)支持两种直方图类型查询,一种确定桶数的等高直方图,另一种确定桶边界的定界直方图。等高直方图指每个桶的高度接近的直方图,而定界直方图指设定桶的上下边界值的直方图。定界直方图支持用户的自定义,更方便用户根据业务特点提取数据的关键分布特征。支持四种数据类型,包括整数、浮点数、字符串与布尔类型,可满足各行各业的数据分析需求。 3. GaussDB(for Influx)直方图使用本章节通过实际的数据样例介绍GaussDB(for Influx)直方图的使用。3.1 数据样例示例采用的数据如下:mst是表名,包含4个field(每个field对应一种数据类型)与2个tag,元数据如下:> show field keys name: mst fieldKey fieldType -------- --------- address string age integer alive boolean height float > show tag keys name: mst tagKey ------ country name原始数据如下:> select * from mst name: mst time address age alive country height name ---- ------- --- ----- ------- ------ ---- 1629129600000000000 shenzhen 12 true china 70 azhu 1629129601000000000 shanghai 20 false american 80 alan 1629129602000000000 beijin 3 true germany 90 alang 1629129603000000000 guangzhou 30 false japan 121 ahui 1629129604000000000 chengdu 35 true ca** 138 aqiu 1629129605000000000 wuhan 48 china 149 agang 1629129606000000000 52 true american 153 agan 1629129607000000000 anhui 28 false germany alin 1629129608000000000 xian true japan 179 ali 1629129609000000000 hangzhou 60 false ca** 180 1629129610000000000 nanjin 102 true 191 ahuang 1629129611000000000 zhengzhou 123 false china 203 ayin3.2 等高直方图查询语法:SELECT HISTOGRAM( [ * | <field_key> | /<regular_expression>/ ] , <N> ) [WINTO_clause] FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] [LIMIT_clause] [OFFSET_clause] [SLIMIT_clause] [SOFFSET_clause]HISTOGRAM(field_key, N)计算指定指标field在各区间的统计值,其中N是要求的。HISTOGRAM(/regular_expression/, N)计算满足正则匹配的field在各区间的统计值。HISTOGRAM(*, N)计算整数与浮点数数据类型的field在各区间的统计值。查询示例1. 查询field_key为age且桶数为5的等高直方图。> select histogram(age, 5) from mst where time >= 1629129600000000000 and time <= 1629129611000000000 name: mst time histogram value ---- --------- ----- 0 20 3 0 30 2 0 48 2 0 60 2 0 9223372036854775807 22. 查询field_key满足正则匹配为/hei/(符合要求的只有height)且桶数为5的等高直方图。# 浮点数类型 > select histogram(/hei/, 5) from mst where time >= 1629129600000000000 and time <= 1629129611000000000 name: mst time histogram_height value ---- ---------------- ----- 0 90 3 0 138 2 0 153 2 0 180 2 0 1.7976931348623157e+308 23. 支持field为字符串类型的address与布尔类型的alive的等高直方图查询。> select histogram(address, 5) from mst where time >= 1629129600000000000 and time <= 1629129611000000000 name: mst time histogram value ---- --------- ----- 1629129600000000000 chengdu 3 1629129600000000000 hangzhou 2 1629129600000000000 shanghai 2 1629129600000000000 wuhan 2 1629129600000000000 zhengzhou 2 > select histogram(alive, 3) from mst where time >= 1629129600000000000 and time <= 1629129611000000000 name: mst time histogram value ---- --------- ----- 1629129600000000000 false 5 1629129600000000000 true 6下图分别表示上述查询的各等高直方图3.3 定界直方图查询语法:SELECT HISTOGRAM( [ * | <field_key> | /<regular_expression>/ ] , ‘specifyBins’, boundary1, boundary2,...,boundaryN) [WINTO_clause] FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] [LIMIT_clause] [OFFSET_clause] [SLIMIT_clause] [SOFFSET_clause]HISTOGRAM(field_key, ‘specifyBins’, boundary1, boundary2,...,boundaryN)计算指定指标field在指定区间的统计值,specifyBins为定界直方图标志,boundaryN表示指定的各边界值,可以是整数、浮点数、字符串与布尔四种数据类型。HISTOGRAM(/regular_expression/, ‘specifyBins’, boundary1, boundary2,...,boundaryN)计算满足正则匹配的field在指定区间的统计值。HISTOGRAM(*, ‘specifyBins’, boundary1, boundary2,...,boundaryN)计算整数与浮点数数据类型的field指定区间的统计值。查询示例:1. 查询field_key为age且指定区间[0, 10), [10, 20), [20, 30), [30, 40), [40, 50)的定界直方图。# 整数类型 > select histogram(age, 'specifyBins', 10,20,30,40,50) from mst name: mst time histogram value ---- --------- ----- 0 10 1 0 20 2 0 30 2 0 40 1 0 50 12. 查询field_key满足正则匹配为/eight/(符合要求的只有height)且指定区间[0, 160), [160, 170), [170, 180), [180, 190), [190, 200)的定界直方图。# 浮点数类型 > select histogram(/eight/, 'specifyBins', 160.0, 170.0, 180.0, 190.0, 200.0) from mst name: mst time histogram value ---- --------- ----- 0 160 7 0 170 0 0 180 2 0 190 0 0 200 13. 支持field为字符串类型的address与布尔类型的alive的定界直方图查询。# 字符串类型 > select histogram(address, 'specifyBins', 'anhui', 'beijin', 'chengdu') from mst name: mst time histogram value ---- --------- ----- 0 anhui 1 0 beijin 1 0 chengdu 1 # 布尔类型 > select histogram(alive, 'specifyBins', false, true) from mst name: mst time histogram value ---- --------- ----- 0 false 5 0 true 6下图分别表示上述查询的各定界直方图。总结直方图作为一种经典的统计分析工具,由于其构建简单高效且能有效地描述数据分布特征,因此它的应用场景极其广泛,特别是在分析型数据库中。GaussDB(for Influx)中不仅支持了两种类型的直方图查询能力(等高与定界直方图),而且支持了四种数据类型(整数、浮点数、字符串与布尔型),能够帮助用户快速构建业务的数据分析能力,助力用户商业成功。另外,GaussDB(for Influx)还在集群化、冷热分级存储、查询、高可用方面也做了深度优化,能更好地满足时序应用的各种场景。结束本文作者:华为云数据库创新Lab & 华为云时空数据库团队 欢迎加入我们! 云数据库创新Lab(成都、北京)简历投递邮箱:xiangyu9@huawei.com 华为云时空数据库团队(西安、深圳)简历投递邮箱:yujiandong@huawei.com
-
近期,华为云GaussDB(for Redis)缓存数据库再次推出全新版本,携新特性重磅来袭!GaussDB(for Redis)是华为云推出的企业级分布式KV数据库,它完全兼容Redis协议,提供丰富的数据类型,基于云原生存储计算分离架构,在成本、可靠性等方面为企业带来全新价值。 本次GaussDB(for Redis)推出的全新特性,不仅对基础性能和连接管理等进行了大幅优化,同时突破开源Redis短板,实现增强版前缀搜索和集群版多租隔离功能,前缀搜索时延较开源Redis降低千倍,为助力企业业务发展带来了更多可能。关键特性1:增强版前缀扫描,千倍性能提升GaussDB(for Redis)推出的增强版前缀扫描功能,优化了String、Hash、Set、Zset四种数据类型scan的前缀搜索。GaussDB(for Redis)的SCAN、HSCAN、SSCAN、ZSCAN命令在使用方法上与开源Redis完全兼容,但前缀匹配模式的性能更为优秀,从开源的耗时O(N)优化到O(logN + M)(其中N是整体数据量,M是匹配的数据量)。下面根据某客户实际场景,对比GaussDB(for Redis)和开源Redis的性能:数据:500w个key,均为String,范围为“1”~“5000000”, value大小为100B。命令:Scan 0 Match 499999* Count 100。在500w个key中搜索11个key。结果:开源Redis为7.67s ,GaussDB(for Redis)仅为2.92ms,快了2600倍,且开源Redis在返回搜索结果前返回了4.98w+次的空结果,而GaussDB(for Redis)第一次就返回了搜索结果。开源Redis:GaussDB(for Redis):在互联网业务中,诸如批量查找/删除一批相同前缀的key是很常见的业务场景,在上百万的数据量下,开源Redis的秒级时延显然是不可接受的。GaussDB(for Redis)针对这一场景进行了有效优化,将时延降低上千倍至毫秒级,带来了极致的性能体验。关键特性2:多租隔离,集群版业务数据隔离能力GaussDB(for Redis) 提供的多租隔离功能,允许用户为不同的业务创建不同的DB,实现不同业务数据隔离。使用方法上,GaussDB(for Redis)的多租隔离功能与开源Redis单机版本的多DB用法保持完全兼容(开源Redis集群版本不支持多DB)。用户可以通过SELECT DB来切换/新建不同的DB给不同的业务使用,通过FLUSHDB删除一个DB中的全部数据而不影响其他DB,从而高效地实现多租隔离效果。GaussDB(for Redis)多DB实现业务多租隔离GaussDB(for Redis)的多DB核心价值在于:集群版多DB:GaussDB(for Redis)集群版本可支持多DB;开源Redis的“多DB”只能用于单机,不支持集群。大规模多DB:GaussDB(for Redis)单实例支持65536个DB,搞定多业务多租隔离。高扩展性:开源Redis单机扩容到64G已经是极限,更不用说fork导致的容量利用率只有50%。GaussDB(for Redis)吞吐可水平扩展至百万QPS,容量支持12TB,解决了扩展性问题。低成本:GaussDB(for Redis)相比开源Redis,成本可降20%~70%。多租隔离是数据库的必备功能,在实际业务场景中,不同模块共享同一Redis实例是很常见的需求。GaussDB(for Redis)超越开源Redis,支持集群版本下的多DB,依托现有的秒级弹性扩缩容能力,在海量业务压力下仍能为客户提供灵活便捷的业务数据访问控制服务。目前,GaussDB(for Redis)已经凭借出色的产品实力在游戏系统、电商平台、推荐系统、社交媒体、物联网等众多企业级应用场景中发挥出巨大作用,而新推出的增强版前缀扫描与多租隔离两大功能特性,将以更优异的能力使企业在降本的同时实现增效,助力企业高效数字化!
-
为深化产教融合,推动校企合作,培养更多数据库人才,华为云GaussDB积极响应教育部号召,在2022年第一批“产学合作协同育人”项目的大框架下,继续设立“基于华为云GaussDB数据库的课程和实验体系”新工科建设项目,将华为多年潜心研发的GaussDB数据库引入高校课程体系,作为高校数据库课程的学习范本和实验平台,为高校提供免费的实验资源。该项目已于日前开始启动报名,时不我待,申报指南已备好,千万别错过!
-
“你们的数据库性能怎么样?” “能不能满足我们的业务?” “和其他数据库对比性能有优势么?” ...... 客户在使用数据库时常有这样的担心和疑问。 本文从测试方案、测试工具、测试场景、测试结果等方面详细介绍了GaussDB(for Influx)和开源InfluxDB集群在X86架构下的性能测试情况。测试结果显示,GaussDB(for Influx)较企业版InfluxDB集群能提供更高的写入性能、更低的访问延迟以及更高的数据压缩率。 01 测试方案1.1 资源配置服务端配置产品名称规格存储架构GaussDB(for Influx)4U16G 2节点100G集群架构开源企业版InfluxDB4U16G 3节点100G集群架构1.2 测试工具测试工具为开源性能工具TS-benchMark。02 测试设计2.1 测试模型本次测试采用风力发电数据模型,每个风场50个设备,每个设备50个传感器,1个风场1个线程,通过load数据的线程数来控制时间线的大小,通过收集时间的长短来控制数据量。模型每条数据大小约为24字节,具体的类型如下:Timestamp | farm | device |sensor | value2.2 测试数据量测试数据分为两个场景,大数据量和小数据量,具体数据量如下:场景时间线数据量小数据量50004亿大数据量250万GaussDB(for Influx) 150亿 企业版InfluxDB 47亿注:企业版InfluxDB在插入到47亿数据时OOM,以下性能对比都基于此数据量。2.3 测试场景2.3.1 数据写入场景batch_size(每个批次写入的数据量) 固定为50,线程数分别从1、2、4、8、16、32、64、128、256、512 递增;线程数(客户端并发请求的连接数)固定为8, batch_size分别从50、100、150、200、250、300 递增。2.3.2 数据查询场景单线程进行不同语句的查询,并统计其时延信息。第一类查询:所有TAG查询select * from sensor where f='f1' and d='d2' and s='s1' and time>=1514768400000000000 and time<=1514772000000000000第二类查询:TAG+ VALUE查询select * from sensor where f='f1' and s='d2' and value>=3.0 and time>=1514768400000000000 and time<1514854800000000000第三类查询:聚合查询select mean(value) from sensor where f='f1' and s='s1' and time>=1514768400000000000 and time<=1514854800000000000 group by f,d,s,time(1h)第四类查询:或条件查询select * from sensor where f='f1' and (s='s1' or s='s2' or s='s3' or s='s4' or s='s5') and time>=1514768400000000000 and time<=1514769150000000000第五类查询:单个TAG查询select * from sensor where f='f1' and time>=1514768400000000000 and time<=151476915000000000003 测试结果分析3.1 写入吞性能比对在小数据量场景下,GaussDB(for Influx)的写入性能是企业版InfluxDB的13倍左右,在大数据量的场景下可以达到1.8倍左右。3.2 查询性能对比1) 第一类查询(所有TAG查询):无论是大数据量还是小数据量场景下,GaussDB(for Influx)的吞吐量是开源InfluxDB企业版的2倍左右。2) 第二类查询(TAG + VALUE查询):在小数据量场景下,开源InfluxDB企业版性能高于GaussDB(for Influx),GaussDB(for Influx)在大数据量和小数据量场景下性能基本持平。3)第三类查询(聚合查询):GaussDB(for Influx)查询性能明显优于开源InfluxDB企业版,在小数据量场景下是开源版本的14倍,大数据量下也是开源版本的8倍左右。4)第四类查询(或条件查询):GaussDB(for Influx)查询性能在两种场景下比较稳定,开源企业版InfluxDB在两种场景下差异较大;GaussDB(for Influx)在小数据量场景下表现优于开源版,在大数据量场景下低于开源版。5)第五类查询(单个TAG查询):GaussDB(for Influx)查询性能在两种场景下比较稳定,在大数据量场景下低于开源版。3.3 数据压缩率对比在250万时间线场景下,GaussDB(for Influx)导入了151亿条数据,导入前数据大小为337.5G,导入后为49.8G,压缩率为6.8;开源企业版导入了47亿条数据,导入前105G,导入后21.3G,压缩率为4.9。GaussDB(for Influx)压缩率是开源企业版的1.4倍左右。Influx引擎采用LSM tree架构,随着后台compaction的进行,压缩率会进一步提升,当前数据对比是数据刚导入时的结果。04 总结在GaussDB(for Influx)2节点对比开源版3节点场景下,GaussDB(for Influx)给客户带来了更高的写入能力、更稳定的查询能力、更高的压缩率。GaussDB(for Influx)写入能力在小数据量场景下是开源企业版的13倍,在大数据量场景下是开源企业版的1.8倍;查询能力在两种场景下表现稳定,在大部分查询场景下优于开源企业版;在压缩率方面,同样数据模型下,高出开源版本40%。除了以上优势外,GaussDB(for Influx)还在集群化、冷热分级存储、高可用方面也做了深度优化,能更好地满足时序应用的各种场景。05 结束本文作者:华为云数据库创新Lab & 华为云时空数据库团队欢迎加入我们!云数据库创新Lab(成都、北京)简历投递邮箱:xiangyu9@huawei.com华为云时空数据库团队(西安、深圳)简历投递邮箱:yujiandong@huawei.com
-
4月23日,中国邮政储蓄银行新一代个人业务分布式核心系统全面投产上线。该系统是大型商业银行中首家同时采用企业级业务建模和分布式微服务架构,基于鲲鹏硬件底座、openGauss开源数据库与GaussDB分布式云数据库共同打造的全新个人业务核心系统,是中国银行业金融科技关键技术可控的重大实践。邮储银行新一代个人业务核心系统 通过企业级业务建模实现化繁为简,重塑核心交易流程;组件化模型驱动业务敏捷,从容应对市场变化与客户需求;分布式单元化部署实现弹性扩展,实时支撑业务变化;在线迁移方式实现客户无感切换,保障业务连续性,降低切换风险。为客户带来3新体验:新感受,更加快速高效。改版界面、优化流程、减少人工依赖,大幅缩短客户业务办理时间;新功能,更加智能强大。依托线上触达渠道,重点着眼于客户需求复杂的查询类业务,满足客户长周期、多元化、个性化需求;新设计,更加安全可靠。完善的实时反欺诈系统,提高操作风险管控能力,同时帮忙客户降低潜在欺诈风险。鲲鹏、openGauss开源数据库与GaussDB分布式云数据库作为邮储银行新一代个人业务核心系统IT数字化底座组成部分,在其中承担了先进算力平台和高性能企业级数据库的重要角色。系统上线后可支撑海量交易、弹性伸缩、金融核心级高可靠和高可用,可具备为全行6.37亿个人客户、4万个网点提供日均20亿笔,峰值6.7万笔/秒的交易处理能力。邮储银行新一代个人业务核心系统全面投产上线,使邮储银行科技金融再添一部新引擎,将为邮储银行提供源源不断的科技动能,加速建设“一流大型零售银行”。同时鲲鹏、openGauss开源数据库与GaussDB分布式云数据库将继续全力支持邮储银行数字化升级,共同为同业积累经验,探明路径,树立标杆。
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签