-
我们评估在两个属性列上分布使用IN运算符与OR运算符进行过滤的差异。首先,我们评估当两个属性都是/不是索引列的情况,然后我们评估两个属性中只有一个属性是/不是索引列的情况。OR运算符与IN运算符的执行计划一模一样,可以知道他们的执行性能将一致,这里就进行性能数据比较了。从上述计划可以看到,DWS优化器先将IN语句转换为OR语句,然后针对语句中的每个谓词条件,执行一次索引扫描获取对应的Ctid,并生成位图,然后进行位图OR运行合并,最后进行原表扫描获取所有的查询列。在对单个属性进行过滤时,DWS对带有 IN 查询始终表现出对 OR 查询相当或更好的性能。对于具有大量谓词的查询尤其如此。关于下推到存储层的优化,截止到本文发布时间,只有在IN运算符是除与WHERE语句中才会生效,并且IN查询单一属性的类型有要求,目前支持INT, NUMERIC,DATE,VARCHAR等,对于其他类型则不支持下推。而在执行层使用临时哈希表加速的功能适用于所有类型,并且为了平衡哈希本身带来的消耗与使用哈希获取的性能收益,只有当IN运算符中条件个数较多时才生效,如大于10个。当根据多个属性进行过滤时,IN 和 OR 查询具有相同的性能,DWS优化器为两种查询生成的计划是一致的。因此,尽量使用 IN 子句,以最大化的提升查询的性能。
-
IN运算符首先进行Index Ctid Scan扫描主键索引以获取满足条件的行ctid,索引过滤的条件为IN条件。获取到所有满足的Ctid后,进行Index Heap Scan查询原表,获取并返回所有用户所需列。OR运算符也是首先进行Index Ctid Scan扫描主键索引表,但索引的过滤条件为单个谓词,每个OR条件都需要执行一次查找。查找完成后进行Index OR汇总,最后也是进行Index Heap Scan查询原表。OR运算符性能较差的原因在于需要为每个谓词做一次索引扫描并建立一个位图,即id = 1 为一个位图,id = 2 为一个位图等等。随后进行按位或组合这些位图。在谓词个数为1000时,需要进行1000次索引扫描并生成1000个位图,与只进行一此索引扫描的IN运算符相比,效率大大降低。并且随着谓词个数的增加,性能差别会逐步拉大。IN运算符与OR运算符的执行算子一致,唯一不同的是Predicate Information。IN运算符生成的是CU Predicate Filter, OR运算符生成的是Filter。CU Predicate Filter意味着此过滤条件下推到了存储层过滤,这样的做法可以减少了性能消耗。原因在于其直接在读CU(DWS列存表单列数据的基本存储单位)的时候就将不必要的数据过滤掉,而无需将其先填入Batch(DWS执行引擎中单列数据的基本存储单位)中,然后在执行器中进行过滤。除此以外,可以看到IN运算符的过滤条件为ANY,而OR运算符的过滤条件为OR。当起ANY条件下推到存储层时,存储层会生成一个临时的哈希表,并将条件中的谓词都存入哈希表中。相比多个OR条件,在进行过滤时,只需进行一次哈希比较,而无需逐个谓词比较,算法复杂度由O(N)变成了O(1),大大的提升了执行性能。
-
声明式查询语言(如 SQL)的最初想法是,用户直接要求数据库管理系统 (DBMS) 给出其想要的答案,而无需考虑其计算方式与计算过程。DBMS的查询优化器负责确定查询的最高效执行计划。理想情况下,如果您使用不同的 SQL 命令提出相同的问题,DBMS应该选择相同的最佳计划。遗憾的是,实际情况并非总是如此,查询性能通常取决于用户编写查询的方式。有时对SQL 进行简单的改写即能得到显著的性能提升。在WHERE语句中使用IN和OR运算符对查询的结果做过滤是上述问题的代表场景之一,如下面的查询语句范例,它们产生的查询结果是一致的,使用Hstore OPT列存表,开启Turbo执行引擎。由于Hstore Opt表在单行数据插入时,会先插入delta表,并异步写成CU中。本文为了去除查询delta表对实验数据的影响,手动执行一次merge,保证所有delta表中数据都已写入CU。当单一属性上声明了索引,我们检验在WHERE 子句中使用单个 IN 运算符和使用多个 OR 子句运行相同的查找的性能差异。上诉语句声明中,id列声明为唯一列,DWS会自动为此列创建索引,我们使用此列进行下列的实验。我们首先运行IN语句,然后运行OR语句,并不断的增加条件中需要查找的ID个数。
-
随着智能数据时代的到来,数据量呈爆炸式增长,数据应用也迎来了前所未有的发展机遇。数据已成为驱动决策、优化运营和技术创新的关键资源。在这一背景下,数据仓库作为企业数据管理的重要基础设施,其重要性不言而喻。数据仓库不仅支持高效决策,还能驱动业务创新与增长,保障数据安全与隐私,促进跨部门协作与数据共享。因此,构建一个高效、安全、可靠的数据仓库系统,已成为企业数字化转型的必由之路。严苛考核体系:HCCDE是华为云认证体系中的最高级别,而HCCDE-GaussDB(DWS)则是华为云对数据仓库从业人员的技术、知识及操作技能的最高级别认可。获取此认证需历经严格的理论考试与实战操作双重考验,确保每位持证者都具备深厚的数据仓库架构设计、开发与运维管理实力。持续学习机制:认证体系倡导并鼓励持续的职业成长与终身学习,确保持证者的知识体系始终与最新技术同步,保持行业领先地位。核心技术与架构理念:认证课程深入剖析GaussDB(DWS)数据仓库的核心架构与先进技术,包括系统级数据仓库解决方案的设计原理,让开发者洞悉数据仓库的底层逻辑。业务场景融合:结合多样化的业务场景需求,详细解读数仓安全策略、高可用性设计、容灾备份方案及业务监控系统的构建思路,让开发者能够灵活应对各种复杂挑战。高效数据平台构建指南:通过实战案例分析,传授数据仓库设计与优化的高级技巧,助推开发者打造高效、稳定的数据存储与处理平台。云上实战环境:提供即开即用的云上实验环境,模拟真实、复杂的业务场景,支持在实战中锤炼数据仓库的运维技能。问题解决能力:通过实际操作,让开发者学会如何快速定位并解决数据仓库运行中的各种问题,提升应急响应与故障处理能力。业务洞察与决策支持:在运维实践中,开发者还将学会如何利用数据仓库提供的数据洞察能力,为业务决策提供有力支持,实现数据驱动的业务增长。
-
大数据未来发展趋势大家怎么看
-
云原生架构的优势cid:link_0向量化执行引擎cid:link_1执行器cid:link_2向量化执行引擎的性能cid:link_3GaussDB(DWS)演化cid:link_4数据湖和数据仓库cid:link_5湖仓一体的优势cid:link_6基于DWS的湖仓一体方案构建cid:link_7华为云数仓DWS备份恢复cid:link_8DWS集群架构cid:link_9备份恢复问题定位分析方法cid:link_10华为云数仓DWS三重高可用保障业务不中断cid:link_11GaussDB(DWS),共筑数据高可靠新防线cid:link_12Navicat Premiu工具cid:link_13华为云DataArtshttps://bbs.huaweicloud.com/forum/thread-0201189222493693052-1-1.html
-
华为云DataArts数据治理生产线具备湖仓一体能力并提供完整的数据分析云服务组合:有单集群最大支持6万+节点的MRS云原生数据湖服务、数智融合的全托管Serverless数据湖探索服务DLI、金融行业全球最大的商用部署云数据仓库GaussDB(DWS)服务,DLI/MRS/DWS既可以灵活按需部署,也可以基于HetuEngine提供跨湖跨仓、跨域的协同分析能力,通过数据虚拟化技术融合演进到湖仓一体,减少80%数据搬迁,跨源跨域协同分析提效10倍。华为云湖仓一体架构基于DataArts打造,满足公有云、混合云、边缘等场景灵活部署诉求,架构云原生升级,支持容器部署资源弹性提升5倍,同时公有云提供全托管、Serverless云原生版本,支持用户按需使用、按量计费、免运维,效率提升3倍以上。当前华为云湖仓一体也已经融合了华为云DataArts Studio一站式数据治理开发平台、GES万亿级图引擎、TICS可信数据流通等服务,通过LakeFormation统一元数据和统一数据安全,让数据湖解决方案构建更加容易,数据流动更加高效。在湖仓一体Lakehouse架构基础上,华为云DataArts增强了流批一体能力,即数据秒级实时入湖,实时增量更新,实时数据读取,一份数据在统一的数据格式上支持实时、准实时、离线数据加工,高效支撑业务从T+1到T+0实时化,大大提升用户体验。同时DataArts Studio提供了一键数据入湖工具,一套平台支持批、流、CDC增量等场景数据联动入湖,提供可视化流批一体作业开发调度平台,内置低代码开发能力,集成作业监控,完善的批流全链路数据治理,让流批作业轻松上线。
-
自Navicat Premium 17.1.3版本起,使用Windows平台的用户可通过Navicat Premium更为直观的图形化界面管理GaussDB(DWS)数据仓库,轻松完成从SQL查询编辑、数据操作、数据库设计管理、商业智能BI到协同合作的全过程,极大地降低了数据库操作的复杂度与技术门槛。华为云GaussDB(DWS)一直致力于完善生态体系构建,为用户提供最佳的使用体验。Navicat作为全球领先的数据库管理软件的供应商,因其广泛的数据库兼容、丰富的功能特性以及轻松创建、管理、维护数据库能力,成为数据库开发者的首选。未来,华为云数据仓库GaussDB(DWS)与Navicat将继续深化合作,探索更多实用的功能与技术,为用户带来更加卓越的数据仓库管理体验。华为云数据仓库GaussDB(DWS)是一款基于华为云基础架构和平台的在线数据分析处理数据库,提供即开即用、可扩展且完全托管的分析型数据库服务,兼容ANSI/ISO标准的SQL92、SQL99和SQL 2003语法,同时兼容Oracle/Teradata/MySQL等数据库生态,为各行业PB级海量大数据分析提供有竞争力的解决方案。此次Navicat成功实现对GaussDB(DWS)的原生兼容,众多GaussDB(DWS)开发者功不可没。正是因为大家对GaussDB(DWS)满怀热忱,才促成了这一里程碑式的发布。在此,我们衷心地向每一位参与其中的开发者表达最深切的感激之情!同时,我们欢迎更多开发者加入我们,共同推动Navicat对GaussDB(DWS)支持功能的持续完善。
-
在金融科技日新月异的今天,数据安全与业务连续性成为金融机构面临的重要挑战。温州银行历来重视数据的安全与业务的连续性,持续在积极寻求与业界领先的科技伙伴合作,以加速自身的数字化转型进程。华为云GaussDB(DWS)作为业界领先的数据仓库,凭借其高性能、高扩展性、高可用性的卓越特性,在金融行业赢得了广泛赞誉。在数据安全与业务连续性方面,华为云GaussDB(DWS)更是实现了重大突破,通过三重高可用机制,确保数据不丢失、误删可找回、过载可防控,同时提供细粒度容灾方案,以1/N的成本实现了低成本的透明容灾,极大地降低了灾备集群的投资成本,提高了资源利用效率。通过华为云GaussDB(DWS)的引入,温州银行的数据管理系统可靠性实现了进一步的飞跃,为守护数据安全、释放数据价值提供了多一重的保障。1.智能分析与洞察:华为云GaussDB(DWS)深度融合大数据与AI技术,实现对海量数据的快速处理与智能分析,释放更多数据价值。2.自动化运维管理:华为云GaussDB(DWS)具备智能化的运维管理功能,能够自动完成数据加载、检测、告警等任务,大幅降低运维复杂度与人力成本。用户可以更专注于业务创新,而无需为繁琐的运维工作分心。3.超强安全保障:针对金融行业对数据安全的严格要求,华为云GaussDB(DWS)提供了多层次的安全防护体系。从数据加密、访问控制到安全审计等多个维度保障数据的安全性与合规性,提供坚实的数据保护屏障。
-
DWS的三重高可用保障方案,覆盖AZ内、同Region跨AZ以及跨Region三个关键维度,同时兼顾部署搭建成本,确保在任何极端情况下,企业的业务都能持续运行,数据安全无忧。AZ内高可用方案支持同AZ部署集群,集群故障客户无感。同Region跨AZ高可用方案支持跨AZ部署集群,集群故障客户无感。支持细粒度备份恢复:满足核心数据备份需求,支持单表误删后的表级恢复,支持数据克隆到异构集群,备份范围可灵活选择,灾备成本更低。支持集群级备份恢复:满足全量数据备份需求,全场景覆盖,维护省心。跨Region高可用方案支持细粒度容灾:满足核心数据容灾需求,备集群容灾表持续可读,备集群非容灾表可读可写,支持主备集群DN数N:1部署,支持表级/schema级配置容灾,容灾范围可配置,容灾成本更低。支持集群级容灾:满足全量数据容灾需求,主备集群DN数1:1部署,全场景覆盖,维护省心。DWS的三重高可用保障方案,不仅是对抗机房火灾等物理威胁的利器,更是应对各种复杂数据灾难场景的全面解决方案。在数据为王的时代,业务连续性是发展的基石,因此DWS始终致力于为企业提供最可靠、最高效的数据可靠性保护,让企业在数字化转型的征途中,无惧风雨,稳健前行!
-
备份恢复相关日志日志是查看代码运行状态和错误定位的重要文件,我们可根据报错信息,并在对应日志中找到有关信息,进一步排查故障。HC/HCS/HCSO集群管控面调用日志: 沙箱外 /home/Ruby/log/cloud-dws-deploy.log管控面归档日志:沙箱外 /home/Ruby/archivelog内核日志:沙箱内 /var/chroot/DWS/manager/backup/log。若备份命令中没有直接指定--logging-path参数,则在沙箱内查看$GAUSSLOG/roach/obs日志沙箱内 cd $GAUSSLOG/bin/gs_obsvi gs_obs.run.log查看对应的报错日志,此处注意的是obs日志需要到具体出错节点上查看问题定位STEP1:找到roach日志存放路径STEP2:检查controller日志信息(vim $GAUSSLOG/roach/controller/roach_controller_current.log)STEP3:如果controller日志不包含具体错误信息,检查agent日志可以获得更详细信息STEP4:检查agent日志信息(vim $GAUSSLOG/roach/agent/roach_agent_current.log)STEP5:检查故障节点agent日志信息(vim $GAUSSLOG/roach/agent/roach_agent_current.log)
-
事务一致性:备份集恢复后的事务状态和备份时相同备份恢复保证一致性:离线备份:数据库停止后,对数据进行转储,此时备份集恢复可以恢复到数据库停止的状态;在线备份:使用数据+XLog日志的方法,即基础数据+备份过程中数据的修改(XLOG)生成备份集,恢复到备份结束的时间点。数据转储GaussDB(DWS)数据库提供支持对接多种介质转储数据的备份恢复方案。介质就是备份集存放的位置:DISK:将数据压缩后转储到本地磁盘;OBS: 对象存储系统,HC/HCS/HCSO默认的介质,GaussDB(DWS)支持在管控面备份到OBS;XBSA协议:对于满足XBSA协议的厂商的通称,该协议是通用的备份协议,类似厂家NBU,X8000。集群级全量备份,支持手动创建和自动创建,自动创建根据用户配置的策略自动触发,默认每周日执行一次。以上是手动创建集群级全量备份。集群级增量备份,不支持手动创建,只支持自动创建。根据配置的策略自动触发,默认每8小时触发一次。备份时间、备份周期均支持配置。Schema级备份,只支持手动创建。可选择DB下的指定schema进行备份,可多选。Schema级备份支持全量备份、增量备份两种模式。细粒度表级恢复,根据细粒度备份集中的表列表,可选择单表/多表恢复,支持恢复到当前DB相同schema和相同table,即覆盖原表;也支持恢复到其他表名称。支持从全量备份集恢复单表、支持从schema备份集恢复单表。支持恢复全量备份集、支持恢复增量备份集。
-
在数据为王的大数据时代,企业的核心竞争力日益依赖于数据的完整性与可靠性。然而,面对数据丢失或误操作的潜在风险,如何确保业务连续性,避免经济损失,成为每个企业必须直面的挑战。华为云数仓DWS,提供高可靠的备份容灾解决方案,为企业用数安全保驾护航。因为各类原因,原始数据丢失或由于误操作导致的数据受损的事件时有发生。如果没有数据备份,数据的损坏、丢失将会造成巨大的经济损失。定期将数据进行备份,则当灾难发生时,就可以利用之前的备份数据进行恢复,从而最小化损失。同时数据备份恢复也是国家政策法规的要求,所以数据备份和恢复工作是一项不可忽视的系统工作。备份恢复在保证数据高可用方面起到巨大作用,其具体应用场景有如下几种:(1)数据恢复通过备份和恢复机制,可以在数据丢失或损坏时迅速恢复数据,确保数据的完整性和安全性。这有助于减少数据损失,保护业务连续性,避免因数据丢失或损坏导致的业务中断和客户信任度的下降。(2)数据备份定期备份数据可以防止数据丢失或损坏,无论是由于硬件故障、病毒攻击还是其他不可抗力因素。备份数据还可以用于数据迁移和更换设备,简化数据迁移过程,减少风险和麻烦。(3)故障处理备份和恢复机制可以用于故障处理和错误排查,提高数据库的稳定性和可用性。在发生故障时,可以通过恢复备份数据快速解决问题,恢复正常运行。(4)满足合规要求对于某些行业,如金融、医疗等,备份数据是符合合规要求的一项必要操作。这些行业的合规要求可能规定了数据备份的频率和方法,以确保数据的安全性和可靠性。(5)快速回滚到恢复点备份文件通常包含多个版本的数据,可以选择回滚到之前某个特定时间点的数据,以避免错误操作或数据损坏对业务造成进一步影响。恢复特定文件或数据:数据备份和恢复还可以帮助用户恢复特定的文件或数据,而无需恢复整个系统或数据库。
-
湖仓一体可以定义为由数据湖和数据仓库组合构建的现代数据平台。更具体地说,湖仓一体拥有数据湖的非结构化数据的灵活存储特性,以及数据仓库的管理功能和工具,然后战略性地将两者作为一个更大的系统一起实施。华为云DWS湖仓一体方案通过集成DWS高性能云数据仓库和其他云原生服务,实现了数据的统一存储、管理和分析。该方案旨在帮助企业从传统的大数据和数仓方案向“一湖+多样集市+数据智能”分层建设演进,实现数据的全面整合和价值最大化。DWS凭借优异的架构优势和性能在获得业界的诸多认可,金融、互联网、零售等多个行业的用户已基于DWS构建湖仓一体方案。在技术方面DWS具有以下优势:统一元数据管理,无缝访问数据湖DWS对接元数据服务,Hive MetaStore、Lake Formation元数据管理,可直接访问数据湖的数据表定义,与开源数据无缝对接,无需创建外表,自动感知DLL变化。DWS支持主要的开源数据格式有ORC,、Parquet、Hudi、Carbon、CSV。其中对于Sql on Hudi,可进行增量查询及导入方式,既支持实时链路的增量分析,也可以支持离线链路的批量分析。湖仓融合DWS支持查询数据湖和数据仓库内的任意数据,体验一致。高效获取外表数据,进行批量计算,内外表数据join,可将数据直接写回数据湖,无需额外数据中转拷贝。跨集群数据互访打通不同数据系统、不同集群间的数据共享和跨库分析的能力,支持跨集群互访、集群间数据互联互通、计算下推、协同计算,实现数据多平台之间透明流动。DWS多VW支持基于一份数据的实时、批量、交互式SQL查询,负载完全隔离,并发线性扩展。通过元数据和数据共享,实现一份数据的异构计算引擎的多样计算。具有极致查询性能在对大量数据进行复杂的查询和分析时,通过多种手段提升访问外表性能,多层缓存(内存cache、disk cache)、分区剪枝、多层过滤下推,以及DWS的物化视图功能预先计算和存储这些查询的结果,大幅提高查询性能。
-
数据仓库和数据湖各有其优缺点,企业在选择时应根据自身需求和实际情况进行权衡。对于需要处理大量结构化数据并进行复杂分析的企业来说,数据仓库可能更合适;而对于需要存储大量原始数据并希望灵活地进行数据分析的企业来说,数据湖可能更合适。但数据湖和数据仓库的分离使用在大数据管理和分析中可能带来一系列问题。这些问题主要涉及到数据的整合性、管理复杂性、性能瓶颈以及数据价值的释放等方面。1 数据孤岛当数据湖和数据仓库分离时,不同系统间的数据难以实现无缝集成,形成数据孤岛。这导致企业在进行综合数据分析时,需要跨越多个系统获取数据,增加了数据整合的难度和成本。2 运维难度大, 权限管理困难分离的系统需要分别进行运维和管理,增加了IT团队的工作量和复杂性。同时,不同系统间的依赖关系也可能导致运维过程中的冲突和故障。3 性能瓶颈及其带来的数据价值释放受限问题分离的系统可能无法充分利用彼此的计算和存储资源,导致数据处理效率低下。例如,当数据仓库需要处理大量数据时,可能无法及时从数据湖中获取所需的数据,从而影响分析结果的时效性。分离的系统可能无法提供统一的查询接口和优化策略,导致查询性能受限。用户可能需要在不同的系统间切换以获取完整的数据视图,增加了查询的复杂性和时间成本。由于数据处理和查询性能的限制,企业可能无法及时获取准确的数据分析结果,导致业务决策滞后。在快速变化的市场环境中,这种滞后可能使企业错失商机或面临更大的风险。分离的数据湖与数据仓库无法提供全面的数据分析能力,限制了企业对数据价值的深入挖掘。例如,数据仓库可能擅长处理结构化数据,但无法有效处理数据湖中的非结构化数据。而数据湖虽然能够存储各种类型的数据,但缺乏高效的数据分析工具和算法。那如果融合数据湖和数据仓库的优势,那是不是就可以提供一个更具性价比更有优势的解决方案?基于这个问题,湖仓一体便应运而生。
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签