• GaussDB(DWS) 全节点CPU高且无异常SQL排查方法
    【版本信息】800【问题描述】全节点CPU高【处理方法】首先是按照cpu高的标准处理流程进行:https://bbs.huaweicloud.com/blogs/419012先查看集群基本情况:1.活跃语句100左右2.Stream数最大103.Cpuwatcher脚本占CPU的语句都在40以下4.抓进程也抓不到高CPU的进程ps H -eo pid,tid,pcpu|sort -n -k 3 |grep master5.语句最长执行时间1hr;有线程等待和cpu倾斜:6.并发数60无改动由此可以看出,长SQL,占CPU高的SQL语句都抓不到,但是全节点CPU均超过90%;定位不出具体SQL,则重新回到业务侧确认业务情况(若确认是资源不够导致cpu高的问题则此时可进行资源管控)。7.确认实时业务为短查询高并发语句,且在CPU高时期出现大量超时告警;查询dws的超时告警设置,发现数值为0,说明告警为客户外部程序设置,执行超过时间4s触发告警,与dws无关。因此告警后语句仍然正常执行。8.当前业务影响为实时业务查询感知慢,因此找到与实时业务一起执行的并发业务。活跃语句查询结果只找到一个非实时业务的语句,优化该语句后CPU无变化,且该语句执行时间在20分钟内。9.此时怀疑是短查询语句自身占用的CPU高,需要做优化处理。此时让客户明确提供了实时查询并发语句,优化该表后仍然无明显变化。查询表大小:select count(1) from 表名;查询表数量:select count(1) from pg_class;10. 查询实时查询的业务库的表数量,900+,全部做ANAYLZE后CPU降至20%以下:本问题中导致CPU高的根因为业务库中的900多个表中有个别或者部分表的统计信息不完整,导致执行计划选择了更消耗CPU的执行方式,导致了CPU高;但是由于都是快查询高并发语句(执行4s即为慢语句);因此抓不到异常SQL。【根因分析】实时查询中有部分表统计信息不完整导致执行计划对资源占用更大,由于900+表排查困难,对业务库做统计信息收集后CPU立即恢复。本案例中对于CPU高的现象用常规的查杀语句,资源管控的方式无法解决,因为占用CPU的语句都是短查询语句,活跃数量基本在100以内,一个语句几秒钟就执行完成,这种情况下是无法抓到单独占CPU高的SQL语句的。这种情况下需要从另一个角度解决问题,就是SQL执行慢,SQL慢的常规解决方法就是查询执行计划,收集统计信息,优化语句。本案例中,SQL慢的表象结果仅为CPU高;内存,磁盘等其他指标均正常。
  • [其他] GaussDB(DWS)管控面升级后ServiceOM报集群告警列表接口异常
    【问题描述】     管控面升级后serviceOM数仓服务监控告警模块不显示,报集群告警列表接口异常【问题版本】     HCS820、821、830【问题根因】     dms_endpoint为域名 service om无法解析【分析过程】1、管控面升级后检查发现serviceOM数仓服务监控告警模块不显示,且弹框提示集群告警列表接口异常、请求失败,请稍后重试或联系技术人员;2、界面F12发现/dws/rest/maintain/v1.0/dms/cluster接口报500 Internal Server Error;3、检查发现serviceOM配置管理{region_id}.dms.dms_endpoint的值配置的是域名加端口,导致无法解析,需要配置成IP;【解决方法】     把serviceOM配置管理{region_id}.dms.dms_endpoint域名加端口改成IP加端口即可;     注:(IP可以到节点ping一下域名ping出来,正常是和{region_id}.dws.controller_endpoint、{region_id}.dws.insight_endpoint配置的IP一致)
  • [生态工具] datax慢,急救阿。
    客户反馈问题,datax从dws往外导数据,速度恒定在10mb/s,从gp导可以达到40mb/s,这个是不是dws有什么限制?给出来详细的处理意见好伐,要不要让客户提交case 工单好了
  • [运维管理] job定时任务介绍
    【使用场景】当客户在使用数据库过程中,如果白天执行一些耗时比较长的任务(例如:统计数据汇总之类或从其他数据库同步数据的任务),会对正常的业务有性能影响,所以客户经常选择在晚上执行,无形中增加了客户的工作量。因此数据库兼容Orcale数据库中定时任务的功能,可以由客户创建定时任务,当任务时间点到达后可以自动触发任务的执行,从而可以减少客户运维的工作量。同时当我们执行一些SQL的实时性不是很高,集群资源又比较紧张的情况下,可以使用定时任务的方式下发SQL。【常用视图介绍】811之后的版本,PG_JOB视图用于代替之前版本的PG_JOB系统表,提供对之前版本的前向兼容。原PG_JOB系统表已经变更为PG_JOBS系统表。pg_job中的字段如下:job_id:作业ID。current_postgres_pid:如果当前任务正在执行,那么此处记录运行此任务的postgres线程ID。默认为-1,表示此任务未被执行或已经执行结束。log_user:创建者的UserName。priv_user:作业执行者的UserName。dbname:标识作业执行的数据库名。node_name:标识当前作业是在哪个CN上创建和执行。job_status:当前任务的执行状态,取值范围:('r', 's', 'f', 'd'),默认为's',取值含义:r=runnings=successfully finishedf=job failedd=disableps:当job连续执行失败16次,会将job_status自动设置为失效状态'd',后续不再执行该job。start_date:作业第一次开始执行时间,时间精确到毫秒。next_run_date:下次定时执行任务的时间,时间精确到毫秒。failure_count:失败计数,作业连续执行失败16次,不再继续执行。interval:作业执行的重复时间间隔。last_start_date:上次运行开始时间,时间精确到毫秒。last_end_date:上次运行的结束时间,时间精确到毫秒。last_suc_date:上次成功运行的开始时间,时间精确到毫秒。this_run_date:正在运行任务的开始时间,时间精确到毫秒。nspname:作业运行时所在的命名空间的名称。what:作业内容。【定时任务的创建及管理】可以参考官方文档进行操作:https://support.huaweicloud.com/devg-dws/dws_04_0041.html【任务状态判断】1.当时间到达job任务的next_run_date时间,job任务会进入任务队列,单个cn的job并发上限受到job_queue_processes的 限制,默认为10,超出该限制的任务会进行排队,此时job_status即任务的状态为f,start_date为创建job时传入的开始时间参数,start_date和next_run_date的值都为空,this_run_date的值也为空(当开始执行时该字段会进行刷新),2.当job排到队开始执行时,job_status即任务的状态会刷新为r,current_postgres_pid刷新为运行此任务的postgres线程ID,start_date和this_run_date会刷新为当前时间,若下次不执行next_run_date刷新为'4000-01-01 00:00:00',若下次继续执行则next_run_date刷新为下一次执行的时间。3.当前作业执行成功后若下一次继续执行则,job_status即任务的状态会刷新为s,failure_count连续失败次数置0,this_run_date会刷新为当前时间,若下次不执行next_run_date刷新为'4000-01-01 00:00:00',若下次继续执行则next_run_date刷新为下一次执行的时间。4.当前作业执行失败后后若下一次继续执行则,job_status即任务的状态会刷新为f,failure_count连续失败次数比之前加1,this_run_date会刷新为当前时间,若下次不执行next_run_date刷新为'4000-01-01 00:00:00',若下次继续执行则next_run_date刷新为下一次执行的时间。5.若作业上一次执行完后不继续执行,job_status即任务的状态会刷新为d,next_run_date刷新为'4000-01-01 00:00:00';总体流程如下:【执行定时任务的常见场景】1.若出现如下场景,job_status为f 且last_end_date和last_suc_date为空的情况,可能为该job线程丢失,我们可以登录后台,搜索对应cn日志,zgrep 'job_id: xxx',在该日志文件中若找到如job worker with job id:xxx took too long time to start ,so canceled it,原因:进程启动慢被清理,规避措施:该场景中线程启动慢与集群各种资源都有关,重新调度该定时任务,在821新版本中添加1. 增加超时后重新调度逻辑 2. 增加参数 job_queue_naptime 设置触发任务的时间间隔及超时时间2.若根据job id查看对应cn日志出现如下报错:error msg: canceling statement due to workload manager exception.DETAIL: except rule [except_spill] is meet condition:rule [spillsize] is over limit, current value is:10517.原因:该场景为下盘超过异常规则导致规避措施:需要修改异规则:ALTER EXCEPT RULE 异常规则名 with (spollsize=xxx);3.在客户端设置完任务,使用当前时间后job任务没有立即执行:原因:当定时任务的执行时间设置为当前时间或者过去时间时,任务都会立即执行,这种场景可能是任务在排队等待,或者客户端和后台存在8小时时差,按照当前时间下发的任务需要等8小时后才会执行。判断方法:针对上述场景我们可以通过select * from pg_job进行判断看该任务下次执行时间,和select now();数据库当前时间做比较判断是否在排队还是因为时差导致还没有到执行时间。规避措施:1.若为排队,我们可以根据集群资源使用情况判断是否调大job_queue_processes(需要重启集群)2.若为客户端和后台存在时差,可以调整定时任务开始时间进行规避4.定时任务执行报错:all 32768 jobids have alloc, and there is no free jobid原因:定时任务当前规格为最大32768个,当前已达到上限从而触发报错规避措施:建议客户手动清理部分d状态的作业select * from pg_job where job_status = 'd' and last_start_date < 'xxxxx' and interval = 'null';  --xxx为 清理最后一次执行为某天前的定时任务call dbms_job.remove(xxx);   --xxx 为定时任务的jobid
  • 资讯|【云享问答】第6期:如何筑造数据安全边界?
    当前AI技术的快速发展,大模型、大数据正在加速对海量多样化数据的应用。数据已经成为核心资产,而数据安全和隐私保护的重要性也日益凸显。数据脱敏作为数据安全管控体系的关键环节,能够有效地保护敏感数据的安全。为了满足开发者对于数据脱敏的需求,GaussDB(DWS) 动态脱敏功能应运而生。本期【云享问答】通过这10个问题,带你全方位了解GaussDB(DWS) 动态脱敏功能及效果。什么是数据脱敏?数据脱敏是通过屏蔽敏感数据来保护数据安全的一种方法。它可以将敏感数据变形,例如身份证号、手机号、客户姓名、邮箱地址等。数据脱敏分为静态数据脱敏和动态数据脱敏两种。GaussDB(DWS)提供列级别的数据脱敏(Dynamic Data Masking)功能,GaussDB (DWS)数据脱敏功能,基于SQL引擎既有的实现框架,在受限用户执行查询语句过程中,实现外部不感知的实时脱敏处理。数据脱敏能解决什么问题?数据脱敏能力对于用户具有多重重要价值。它不仅能够消除暴露个人敏感数据的风险,确保个人隐私安全,还能助力企业遵守CPRA、GDPR、HIPAA等隐私法规,避免因违规而引发的法律风险。同时,数据脱敏技术在处理数据时能够保持数据的一致性和可用性,确保脱敏后的数据依然能够支持业务运营和决策分析。此外,通过脱敏处理,还可以降低数据在高效共享过程中的风险,防止敏感信息被恶意利用,从而保护企业免受网络攻击和数据泄露的威胁。脱敏策略是什么?脱敏策略(Redaction Policy)在数据安全管理中扮演着至关重要的角色。脱敏策略是与数据库中表对象是一一对应的。一个完整的脱敏策略通常由三个关键部分组成:表对象、生效条件以及脱敏列与脱敏函数的对应关系。表对象指定了策略应用的数据库表。生效条件则是一个布尔表达式,它决定了何时应用脱敏规则。脱敏列与脱敏函数的对应是脱敏策略的核心。不同的字段根据其存储数据的特性和敏感性可以采用不同的脱敏函数。当且仅当生效条件为真时,查询语句才会触发敏感数据的脱敏,而脱敏过程是内置在SQL引擎内部实现的,对生成环境用户是透明不可见的,既保障了数据安全,又不干扰用户的数据访问。在实际开发过程中,数据脱敏怎么用?以DWS为例,在创建脱敏策略时,需要先确定受限制的用户角色,识别和梳理具体业务场景的敏感字段,然后确定脱敏列需要绑定的脱敏函数,最后构造策略创建的语句并执行,从而预制好脱敏策略。数据脱敏应用过程中,如何做到数据库内可算仅库外不可见?数据库内要求原始的敏感数据能够参与加工计算,仅在出库的时刻敏感数据才会被脱敏处理。例如投影列表达式、投影列函数、聚集函数、过滤条件、分组条件、子查询位置投影列表达式等,需要原敏感数据直接参与加工计算。在表查询、视图查询、COPY查询、GDS外表导出等场景触发时会进行数据脱敏。可算不可见功能有一个前置的条件,需要打开开关enable_redactcol_computable=on!。GaussDB(DWS)的动态脱敏功能是如何进行数据保护的?GaussDB(DWS)的动态脱敏引擎与底层系统紧密配合,高效、安全、可靠地处理数据。其直观的DDL语法界面,使用户能轻松配置、调整脱敏策略,灵活应对不同场景。系统不仅内置多种常见脱敏方法,还支持用户自定义脱敏函数,满足个性化需求。在保障数据安全的基础上,该引擎确保脱敏数据的高可用性,维持业务价值。同时,通过严格的权限和访问控制,仅授权用户可访问敏感数据,全面守护数据的安全与隐私。第三方脱敏工具多为外挂式,仅支持静态脱敏,无法实现实时动态处理。相比之下,GaussDB(DWS)的内置脱敏功能更加透明、高效。在GaussDB(DWS)中,如何快速配置和使用动态脱敏功能,并支持非固定格式的数据脱敏?GaussDB(DWS)提供DDL语法支持用户快速配置脱敏策略,使用无特殊要求,原SELECT语句即可触发。GaussDB(DWS)对于常规数据类型均支持,且提供用户自定义脱敏函数,可以对更多场景支持更灵活脱敏效果。GaussDB(DWS)是否支持跨数据表传递脱敏数据,传递过程中是否继承原脱敏策略?在GaussDB(DWS)的库内可算库外不可见场景下,由于参与数据运算的是原始数据,故DML语句执行过程,写入更新目标表都是原始数据去更新的,故需要引入脱敏策略继承机制,分析语句中子查询的脱敏信息,并继承到目标表中,此场景即涉及脱敏策略的继承。在应用GaussDB(DWS)过程中,如何保证数据脱敏的实时性?为了确保实时性,GaussDB(DWS)采用动态数据脱敏方式。动态数据脱敏,是指数据查询过程边输出边脱敏,策略定制的脱敏函数发生变化,查询的脱敏效果也实时更新。这就意味着DWS在数据查询过程中,数据会边输出边脱敏。这种并行交互的方式最大限度地减少了性能损失,使得实时性得以保证。根据提供的信息,性能劣化在10%以内是可以接受的。因此,各种场景下的实时性需求都能得到满足。针对不同的用户或角色,GaussDB(DWS)能否有不同的脱敏策略?GaussDB(DWS)数据脱敏含有三要素:脱敏策略应用的表对象、脱敏字段-脱敏函数对、脱敏生效条件,此三部分信息通过REDACTION POLICY语法承载。WHEN表达式子句可以传递生效条件,针对不同的用户或角色去判断。转自华为云开发者联盟
  • [其他] GaussDB(DWS)管控面之DWS_10000告警(rms数据库性能慢)
    【问题现象】         OC可见告警ID为DWS_10000的操作告警,定位信息包含HealthController.getLivenessHealth【问题版本】        HCS811、820、821【问题根因】 MySQL rms数据库性能慢【问题分析】1、OC告警DWS_10000系统内部异常操作异常告警,定位信息包含HealthController.getLivenessHealth;2、查controller日志,搜DWS_10000,往上找日志发现报eJobMonitorThread or DBMonitorThread is not working;3、两个线程池检查controller容器状态会连接数据库但是连接慢,怀疑是性能问题;(若无频繁上报,可以先清除告警,观察一段时间无再上报就是偶现;此线程只是探活controller容器状态,告警可以屏蔽);4、在DWS-DB01/02节点手动使用MySQL命令测试连接发现连接数据库也很慢;5、给cloudDB建关联单排查MySQL连接慢:      1)定位到是审计日志较多导致IO持续较高,导致数据库连接慢,cloudDB建议关闭审计日志,关闭后重试连接恢复,不再慢;      2)vdb数据盘读写的IO相比政务区的始终都比较高,怀疑是底层磁盘规格有区别;iostat -x 1 -p vdb6、拉IAAS同时定位,发现是管理节点所在存储池底层CPU资源耗尽(主根因),建议扩容去解决;【处理方法】1、关闭MySQL审计日志;       1)登MySQL数据库:mysql --defaults-file=/data/mysql/etc/my.cnf -uroot -hlocalhost -P7306 -pXXXXXXXXXXXX       2)查询是否开启:show variables like '%audit_log_policy%';       3)执行修改语句(主备节点):set global audit_log_policy = NONE;       4)修改vi /data/mysql/etc/my.cnf文件(主备节点):audit_log_policy = ALL改成NONE;2、扩容管理节点所在存储池底层CPU资源;
  • 【云享问答】第6期:如何筑造数据安全边界
    当前AI技术的快速发展,大模型、大数据正在加速对海量多样化数据的应用。数据已经成为核心资产,而数据安全和隐私保护的重要性也日益凸显。数据脱敏作为数据安全管控体系的关键环节,能够有效地保护敏感数据的安全。为了满足开发者对于数据脱敏的需求,GaussDB(DWS) 动态脱敏功能应运而生。本期【云享问答】通过这10个问题,带你全方位了解GaussDB(DWS) 动态脱敏功能及效果。💬 1、什么是数据脱敏?数据脱敏是通过屏蔽敏感数据来保护数据安全的一种方法。它可以将敏感数据变形,例如身份证号、手机号、客户姓名、邮箱地址等。数据脱敏分为静态数据脱敏和动态数据脱敏两种。GaussDB(DWS)提供列级别的数据脱敏(Dynamic Data Masking)功能,GaussDB (DWS)数据脱敏功能,基于SQL引擎既有的实现框架,在受限用户执行查询语句过程中,实现外部不感知的实时脱敏处理。💬 2、数据脱敏能解决什么问题?数据脱敏能力对于用户具有多重重要价值。它不仅能够消除暴露个人敏感数据的风险,确保个人隐私安全,还能助力企业遵守CPRA、GDPR、HIPAA等隐私法规,避免因违规而引发的法律风险。同时,数据脱敏技术在处理数据时能够保持数据的一致性和可用性,确保脱敏后的数据依然能够支持业务运营和决策分析。此外,通过脱敏处理,还可以降低数据在高效共享过程中的风险,防止敏感信息被恶意利用,从而保护企业免受网络攻击和数据泄露的威胁。💬 3、脱敏策略是什么?脱敏策略(Redaction Policy)在数据安全管理中扮演着至关重要的角色。脱敏策略是与数据库中表对象是一一对应的。一个完整的脱敏策略通常由三个关键部分组成:表对象、生效条件以及脱敏列与脱敏函数的对应关系。表对象指定了策略应用的数据库表。生效条件则是一个布尔表达式,它决定了何时应用脱敏规则。脱敏列与脱敏函数的对应是脱敏策略的核心。不同的字段根据其存储数据的特性和敏感性可以采用不同的脱敏函数。当且仅当生效条件为真时,查询语句才会触发敏感数据的脱敏,而脱敏过程是内置在SQL引擎内部实现的,对生成环境用户是透明不可见的,既保障了数据安全,又不干扰用户的数据访问。💬 4、在实际开发过程中,数据脱敏怎么用?以DWS为例,在创建脱敏策略时,需要先确定受限制的用户角色,识别和梳理具体业务场景的敏感字段,然后确定脱敏列需要绑定的脱敏函数,最后构造策略创建的语句并执行,从而预制好脱敏策略。常见的使用函数语句实现脱敏效果💬 5、数据脱敏应用过程中,如何做到数据库内可算仅库外不可见?数据库内要求原始的敏感数据能够参与加工计算,仅在出库的时刻敏感数据才会被脱敏处理。例如投影列表达式、投影列函数、聚集函数、过滤条件、分组条件、子查询位置投影列表达式等,需要原敏感数据直接参与加工计算。在表查询、视图查询、COPY查询、GDS外表导出等场景触发时会进行数据脱敏。可算不可见功能有一个前置的条件,需要打开开关enable_redactcol_computable=on!。💬 6、GaussDB(DWS)的动态脱敏功能是如何进行数据保护的?GaussDB(DWS)的动态脱敏引擎与底层系统紧密配合,高效、安全、可靠地处理数据。其直观的DDL语法界面,使用户能轻松配置、调整脱敏策略,灵活应对不同场景。系统不仅内置多种常见脱敏方法,还支持用户自定义脱敏函数,满足个性化需求。在保障数据安全的基础上,该引擎确保脱敏数据的高可用性,维持业务价值。同时,通过严格的权限和访问控制,仅授权用户可访问敏感数据,全面守护数据的安全与隐私。第三方脱敏工具多为外挂式,仅支持静态脱敏,无法实现实时动态处理。相比之下,GaussDB(DWS)的内置脱敏功能更加透明、高效。💬 7、在GaussDB(DWS)中,如何快速配置和使用动态脱敏功能,并支持非固定格式的数据脱敏?GaussDB(DWS)提供DDL语法支持用户快速配置脱敏策略,使用无特殊要求,原SELECT语句即可触发。GaussDB(DWS)对于常规数据类型均支持,且提供用户自定义脱敏函数,可以对更多场景支持更灵活脱敏效果。💬 8、GaussDB(DWS)是否支持跨数据表传递脱敏数据,传递过程中是否继承原脱敏策略?在GaussDB(DWS)的库内可算库外不可见场景下,由于参与数据运算的是原始数据,故DML语句执行过程,写入/更新目标表都是原始数据去更新的,故需要引入脱敏策略继承机制,分析语句中子查询的脱敏信息,并继承到目标表中,此场景即涉及脱敏策略的继承。💬 9、在应用GaussDB(DWS)过程中,如何保证数据脱敏的实时性?为了确保实时性,GaussDB(DWS)采用动态数据脱敏方式。动态数据脱敏,是指数据查询过程边输出边脱敏,策略定制的脱敏函数发生变化,查询的脱敏效果也实时更新。这就意味着DWS在数据查询过程中,数据会边输出边脱敏。这种并行交互的方式最大限度地减少了性能损失,使得实时性得以保证。根据提供的信息,性能劣化在10%以内是可以接受的。因此,各种场景下的实时性需求都能得到满足。💬 10、针对不同的用户或角色,GaussDB(DWS)能否有不同的脱敏策略?GaussDB(DWS)数据脱敏含有三要素:脱敏策略应用的表对象、脱敏字段-脱敏函数对、脱敏生效条件,此三部分信息通过REDACTION POLICY语法承载。WHEN表达式子句可以传递生效条件,针对不同的用户或角色去判断。更多关于GaussDB(DWS)产品技术解析、数仓产品新特性的介绍,请关注GaussDB(DWS)论坛,技术博文分享、直播安排将第一时间发布在:GaussDB(DWS)论坛 。
  • [热门活动] 全国高校计算机类课程能力提升高级研修班(2024年第一期)在东莞召开--“云数据仓库GaussDB(DWS)”课程 实验地址分享
    2024年1月23日至24日,全国高校计算机类课程能力提升高级研修班(2024年第一期)在广东省东莞市松山湖召开,来自全国119所高校的200多位教师参加了此次培训。本次研修班由教育部高等学校计算机类专业教学指导委员会和全国高等学校计算机教育研究会主办、清华大学出版社与华为公司共同协办。【全体合影】本期高级研修班师资团队由高校专家及工业软件云专家、华为云GaussDB(DWS)数据仓库专家、华为昇腾CANN生态首席专家、OpenHarmony社区专家、海思高校计划专家进行了详细的课程讲解与实践指导。《云数据仓库GaussDB(DWS)》的课程培训,由华为云数仓GaussDB(DWS)的三位资深专家担任讲师:首席架构师曾凯、架构师周孟韬和SQL优化首席技术专家李茂增。此次培训吸引了来自23所高校的30位教师共同参与学习。【云数据仓库GaussDB(DWS)课程合影留念】曾凯老师从数据仓库发展史及未来趋势出发,展望了数仓发展的未来,介绍了GaussDB(DWS)云原生技术能力及优势。周孟韬老师介绍了存储引擎、事务处理、HStore表原理及应用实践、容灾与细粒度备份技术,通过原理的深度解读和实践演示,帮助各位老师快速入门华为云数仓GaussDB(DWS)。课堂上还为大家提供GaussDB(DWS)的云上实验,通过实践操作引导老师们体验GaussDB(DWS)云原生数仓,体验Serverless架构下湖仓一体、存算分离等高级特性。李茂增老师通过GaussDB(DWS)分布式SQL优化技术及执行引擎课程,向各位老师介绍了数仓的核心技术原理,解读如何通过SQL优化技术提升数仓性能,帮助老师们将GaussDB(DWS)产品技术在理论与实践两个层面融入到课程教学中。本次研修班成为了高校教师与企业间交流的桥梁,突出了校企合作的重要性。众多参会教师一致认为,这是深入了解国家战略和企业需求的宝贵机会,对于提升教学质量和人才培养至关重要。理论与实践的结合,以及来自行业专家的深入讲解,对于日常教学安排和产教融合案例的分享,极大地丰富了参会老师的教学方法和视野。华为致力于继续发掘和释放产业技术的潜力,加速产教融合的协同发展。公司将深耕于高校人才培养领域,通过更开放、多元化的支持方式,帮助高校加强基础教育,扩展技术视野,并培养出更多优秀的专业人才。通过这样的合作和共同努力,期待未来高校能够为社会培育出具有创新精神和实践能力的计算机行业新星。数据仓库GaussDB(DWS)行业人才培养是数据仓库生态建设重要的一环,目前GaussDB(DWS)已上线工作级开发者认证,赋能1500+用户,推出50+场线上培训课程、18个免费沙箱实验,持续为数据仓库行业人才赋能。未来,华为云数据仓库GaussDB(DWS)将继续坚守初心,为数据仓库行业培养更多高质量人才。点击链接,了解数据仓库工作级开发者认证。活动剪影videovideo沙箱实验实验名称链接快速入门数据仓库服务GaussDB(DWS)Link使用DWS导入MRS-Hive数据源实现融合分析Link使用GaussDB(DWS)实现零售业经营状况多维度查询分析Link使用Java开发数据仓库服务GaussDB(DWS)Link数据仓库服务GaussDB(DWS)权限管理Link如何实现GaussDB(DWS)性能调优Link体验GaussDB(DWS)云原生数仓-存算分离Link体验GaussDB(DWS)云原生数仓-湖仓一体Link
  • [迁移系列] 【PG迁移】移动json串累积求和
    示例drop table if exists tmp_ta; create temp table tmp_ta( gender char, type char, price text, number text, sequence int ); insert into tmp_ta values('M','O', 1,20, 1); insert into tmp_ta values('M','M', 2,40, 2); insert into tmp_ta values('F','O', 3,30, 3); insert into tmp_ta values('F','M', 4,50, 4); insert into tmp_ta values('M','M', 4,60, 5); insert into tmp_ta values('F','O',4,40, 6);获得效果gendertypepricenumberjsonb_stringsequenceFO330{"3": "30"}3FM450{"3": "30", "4": "50"}4FO440{"3": "30", "4": "40"}6MO120{"1": "20"}1MM240{"1": "20", "2": "40"}2MM460{"1": "20", "2": "40", "4": "60"}5采用SQL示例select gender, type, price, number ,jsonb_object_agg(price,number) over(partition by gender order by sequence),sequence from tmp_ta;对应效果说明jsonb_object_agg聚合函数配合over进行移动聚合,可以实现相关json的key去重、以及累加聚合;若需要实现机械json聚合(不根据key去重),可以采用jsonb_agg及jsonb_build_object拼接select gender, type, price, number ,jsonb_agg(jsonb_build_object(price,number)) over(partition by gender order by sequence),sequence from tmp_ta;
  • [应用案例] 【案例】gsql指定-h报错:wrong version number,remote datanode
    一、现象1、cn实例目录下cacert.pem、server.crt、server.key、server.key.cipher、server.key.rand的权限被修改过。不是6002、gsql连接指定-h报错wrong version number,remote datanode。二、问题原因由于证书权限的改变导致ssl认证异常三、解决办法将所有cn实例下的cacert.pem、server.crt、server.key、server.key.cipher、server.key.rand文件权限修改回默认权限chmod 600 文件名​
  • [性能调优] 3000万的大表如何分页查询
    我们有一个3000千万的大表,表中没有主键,也没有ID列,每次取100万条,并且不能重复,所以limit 就不能使用。目前的方法是使用开窗口函数row_number() over( order by xxx )生成一个伪列进行数据过滤(where  rownum >xxxxx and rownum <xxxxx),每取一次就重新生成伪列,直到把3000万数据取完,我感觉这样效率比较低,在分布式中没有快速分布的方法。
  • [生态工具] datax同步问题
    通过DataX实现Oracle到dws的数据互相迁移1. 抽取从oracle读数据写进dws.Json文件配置读使用oraclereader,写入使用postgresqlwriter从dws读数据写进oracleJson文件配置读使用postgresqlreader,写入使用oraclewriterDatax任务脚本参数并发数32:2. 迁移速率:迁移过程中datax Speed速率每秒40k~60k,速率太低。客户期望至少每秒2万行,4MB的速率源端 oralce并没有呈现出io,cpu,内存压力。优化:按照常规的datax优化参数方法,进行channel,record,byte参数不同数值设置,进行测试速率,速率没得到提升。问题如何datax的同步速率提升上去?把官方是否提供专门的dws读写插件?
  • [运维管理] dws用pg_relation_filepath只能查到cn的路径,如何查到对应dn里面的数据文件
    dws里面看到协调节点的数据文件如何对应到master里面的数据文件呢。用pg_relation_filepath只能查到cn的路径
  • [全景传送门] GaussDB(DWS)开发者平台 来咯!| 逛逛DWS宝藏库
    GaussDB(DWS)开发者一站式平台,旨在为GaussDB(DWS)的开发者们提供最全面的信息资讯。精品技术文章、最佳实践、直播集锦、热门活动、海量案例、智能机器人,海量资源一站式集成,一起来看看如何用好DWS开发者平台吧!地址:cid:link_0📍第一站:知识happy站台板块:【精品技术博文】【直播公开课】DWS出品,必属精品!这里有海量技术文章、公开课资源,全都免费对您开放。您可按需检索感兴趣的内容,常看常新,还有更多资源持续上新中哦~📍第二站:DWS游园会板块:【数据分析实验】【开发者活动】热门沙箱实验等你体验,在这里您可以一键创建数据仓库,实践和验证典型场景,帮助您快速体验华为云数据仓库服务。DWS活动日历,预约直播、预约参与线上、线下活动,与DWS专家互动,有机会赢惊喜好礼哦~📍第三站:问题百事通板块:【案例库】【智能机器人】【问题求助板块】使用中遇到问题?不用担心~我们准备了超多超实用的故障场景解决方案,包括集群问题、数据库链接问题、权限问题…已覆盖大部分使用场景。还可以一键直达问题求助渠道:智能机器人小D--能处理SQL语法、特性知识、常见Top问题、解决方案需求等咨询问题;论坛问题求助发帖--真人专家在线答疑。
  • [运维管理] 在FM界面创建HDFS用户界面显示为空
    如图,已经创建了20个HDFS用户,再次进行创建的时候页面显示为空,无法继续创建,为什么无法创建,是创建数量有限制还是因为创建过多导致页面刷新失败。