登录社区云,与社区用户共同成长
邀请您加入社区
GaussDB 505.2+推出的ugin索引支持ustore引擎的模糊查询(如LIKE '%新年快乐%'),但依赖字符序。默认C字符序下,中文被当作字节处理,无法正确识别,导致查询仍走全表扫描;而使用zh_CN.utf8或en_US.utf8等基于字符的UTF-8排序规则时,ugin索引可生效,实现高效模糊搜索。注意:短于三字符的模式(如'%新年%')仍无法利用索引。建议建库时指定LC_COLL
node evidence/verify.mjs # Ben Nevis 8h: N 3.63 / T 2.74 / B 1.85 (三公式一致低估,Naismith 最接近)做这类带"客观真值"的小项目,最忌讳的是自己跟自己玩。潮汐那篇我差点拿同窗自洽当独立验证,冲奶那篇差点拿同源算法当三路互证,这篇我一开始想把 fixture 改了去凑那个 8 小时。三次都是同一个坑的不同马甲——让 AI 快
本文记录了在「码道」平台完成的纯前端项目《诗句接龙·AI对诗》,使用HTML5、CSS3与原生JavaScript,实现浏览器端直连大模型流式接口。通过将Python的流式调用逻辑迁移至前端,结合ReadableStream与TextDecoder,实现了AI逐字输出的“打字机”效果,并以结构化数据契约确保诗句真实可查。项目支持双通道输入、自动滚动、流式渲染与一键重开,打造了流畅的古风对诗交互体验
「飞花令 AI 对话」项目以纯前端三件套(HTML5+CSS3+JS)实现,打造一款无后端、零依赖的古风诗词互动产品。通过流式接口改造与结构化提示词工程,将大模型输出转化为可解析的诗词卡片数据,结合打字机动画与古风界面,实现“飞花对诗”“即兴吟咏”“诗词求教”三大功能。项目强调极简架构与沉浸体验,以技术还原诗意,探索AI在文化传承中的创造性表达。
本文记录了“猜灯谜AI对话”项目的完整工程实践:通过自定义JSON事件协议,将大模型流式输出与前端结构化渲染解耦,实现“打字机”式实时交互。项目基于SSE流式协议,设计容错解析器,支持多事件连续推送,覆盖欢迎、出题、判答、提示、结算等全流程,最终交付可在线玩的中国风互动网页应用,探索技术与传统文化融合的产品化路径。
在日常学习和工作里,我们经常需要一个"小而美"的后端示例:既有完整的业务逻辑(增删改查),又不过度依赖基础设施(数据库、缓存、消息队列),最好还能有一套自动生成的接口文档,方便前后端联调。这篇文章就来动手实现这样一个项目——基于 FastAPI 的学生信息管理系统。全部代码只有一个是文件main.py,数据用 Python 内置的列表(list)来存储,不需要安装除 FastAPI 和 uvico
回顾整个体验,以前让智能体帮我拆需求,它是洋洋洒洒给我列了一大篇 Markdown,看着挺像那么回事,但最后还是得我一条条往 CodeArts Req 里搬,搬完再手动挂父子关系、排日期,拆需求五分钟,搬运两小时。现在好了,MCP 给智能体接上了"手",Skill 给它装上了"项目经理的脑子",一句话下去,34 个工作项连带排期、层级关系全给我建好了,甘特图一拉,齐刷刷都在两周内,节省了多少工作量
本文深入探讨了GaussDB 507内核PL/SQL字节码功能的约束条件。作者通过实际测试验证了官方文档中列出的黑白名单限制,发现部分场景实际支持情况与文档描述存在差异。测试覆盖了匿名块、触发器、集合函数、子程序、自治事务、RECORD类型等20余项约束条件,并记录了相关字节码日志。结果显示:部分限制场景(如SUBTYPE类型、跨PACKAGE游标)实际支持字节码,而BULK COLLECT等语句
本文介绍了GaussDB数据库中的PL/SQL字节码技术。字节码是一种为PL/SQL专门定义的指令集,通过将PL/SQL语句转化为字节码数组来执行,相比传统的AST解释执行引擎能显著提升性能。文章详细说明了字节码的启用方式(通过plsql_code_type参数)、支持场景和多项约束条件,并通过循环测试和期权定价算法两个案例展示了字节码带来的性能提升(执行时间减少约2/3)。测试结果表明字节码技术
本文介绍了GaussDB数据库的逻辑备份工具gs_dump和gs_restore的使用方法。逻辑备份可备份表、视图、索引等数据库对象,支持纯文本、自定义归档等四种格式。文章详细说明了备份整个库、特定schema或表的命令示例,并演示了如何通过gs_restore恢复数据库、schema或表数据。这些工具在数据迁移、测试环境搭建等场景中非常实用,特别是分布式环境下重新定义分布键时。备份时可通过参数控
GaussDB提供多种锁阻塞排查方法:1.实时诊断推荐使用pgxc_lock_conflicts视图(8.1.x+)或多表关联查询(旧版本);2.历史分析通过gs_asp视图统计高频等待事件;3.检查lockwait_timeout等关键参数;4.紧急处理可用PG_TERMINATE_BACKEND终止阻塞会话。建议结合具体锁冲突场景(如并发更新、DDL冲突)优化事务设计,新版本优先使用专用锁视图
本文介绍了华为GaussDB数据库的多层次数据加密方案。GaussDB作为支持多模态的企业级数据库,在安全方面提供了传输层加密(TLS/SSL)确保通信安全,透明数据加密(TDE)保护存储数据,细粒度的字段级加密针对敏感列,以及动态数据屏蔽(DDM)实现实时数据脱敏。这些功能共同构成了完整的数据安全防护体系,可满足金融、医疗等对数据安全要求严格行业的合规需求,在保障性能的同时实现了从传输到存储的全
摘要:本文介绍了GaussDB数据库性能调优的整体思路,包括单条SQL和并发SQL的优化方法。对于单条SQL,重点在于选择正确的分布列、创建合适索引、调整表分布方式以及优化执行计划;并发场景则需先优化单条SQL,再结合系统资源分析瓶颈。文章还提供了定位性能问题的SQL查询语句,帮助诊断等待事件、耗时SQL和连接分布情况,最后强调调优需从服务器资源分析入手,针对性解决SQL性能问题。
本案例依托华为云码道快速完成商家点餐系统服务端项目开发,此项目是一套前后端分离的餐饮门店管理后端实战项目。项目划分普通顾客、商家管理员两类角色,完整覆盖商品管理、订单流转、用户权限管控、营业数据可视化统计全业务链路;后端提供标准化接口供前台点餐页面、商家管理后台(包含数据大屏)前端调用,依托真实订单数据自动聚合经营指标,形成完整餐饮业务数据闭环。
《GaussDB中实现指定用户操作过滤复制的三种方案对比》 本文针对GaussDB逻辑复制中需要过滤特定用户操作的需求,分析了三种技术方案。首先探讨了基于审计日志提取事务号的方案,但面临日志完整性、逻辑嵌入复杂性和资源消耗等挑战。其次介绍了基于逻辑复制标签的过滤机制,通过事务标记实现过滤,但存在操作遗漏风险。最后推荐了基于历史表归档的策略,通过建立独立schema存放历史表并配置复制规则,虽然会增
摘要:某基金公司在国产化改造过程中,将销售数据中心系统从国外数据库迁移至GaussDB 505.1版本时,发现每日汇总销售数据接口执行耗时达139分钟。通过分析发现性能瓶颈主要存在于219万条记录的分组处理环节,CPU利用率不足5%。调优方案采用SMP并行技术,通过调整GUC参数(如设置query_dop=24、增大内存配置)和SQL改写(将复杂操作拆分为两阶段处理),最终将执行时间从139分钟优
而TCP协议本身只能支持一个流,因此我们需要在这一个流中区分不同逻辑连接的数据,通过在TCP报文的head中写入逻辑连接id及后续data的长度来区分,这样虽然TCP只有一个数据包组成,但每个数据包包含多个块,实现了TCP的多流。TCP代理在现有的逻辑连接、代理分发、quota流控等实现的基础上,将数据通道从SCTP协议替换成TCP协议,TCP代理逻辑连接的实现基于head+data的数据包收发模
openGauss触发器应用指南 摘要:openGauss作为开源关系型数据库管理系统,其触发器功能能显著提升数据库自动化管理能力。本文详细介绍了触发器的概念与特点,包括自动执行、灵活性和实时性等优势。通过创建日志表、触发器函数和触发器的完整示例,演示了如何实现对员工表增删改操作的自动日志记录。文章还展示了触发器的高级应用场景,如数据完整性维护(部门薪资限制)、审计日志记录和库存自动更新等,均配有
摘要:TopSQL是GaussDB(DWS)数据库资源监控工具,分为实时和历史视图,记录SQL语句的资源消耗和执行状态。主要应用场景包括性能问题定位、SQL调优和资源配置参考。实时TopSQL监控运行中SQL的资源使用,历史TopSQL记录已完成SQL的执行信息。数据流向从内存临时表转存到持久化表,可通过参数控制数据保留时间。系统提供query和算子级别的监控视图,并给出推荐配置参数,建议全开监控
摘要:本文总结了GaussDB(DWS)中SQL语句执行慢的常见问题及解决方法。重点分析了9个典型案例,包括函数不下推、索引未生效、模糊匹配优化、复合索引顺序、分区剪枝失效、数据倾斜、自定义函数性能、视图查询效率以及并行查询优化等。建议通过explain分析执行计划,针对不同场景采取相应优化措施,如更新统计信息、调整索引设计、修改查询条件或参数配置等,以提升SQL执行效率。
本文提出了一种从Oracle到DWS的数据迁移方案,包含全量和增量迁移两个阶段。增量迁移通过DRS模块捕获Oracle数据变更,由Spark程序实现数据回放。方案基于Kafka Topic实现异构数据库间的数据同步,具体流程包括:1)增量数据处理,通过内存数据结构整合插入、更新和删除操作;2)数据存入临时表;3)通过merge和delete语法将临时表数据回放至正式表。该方案支持批量处理和标记删除
本文介绍了如何在SpringBoot项目中集成MyBatisPlus实现对华为云GaussDB(DWS)数据库的增删改查操作。GaussDB(DWS)是基于Shared-nothing架构的云原生数据仓库服务,兼容PostgreSQL生态。文章详细说明了项目搭建步骤:包括添加JDBC驱动、配置数据源、创建实体类和Mapper接口,并通过测试代码演示了使用原生JDBC和MyBatisPlus两种方式
本文汇总了GaussDB数据库使用中的常见问题及解决方案,主要内容包括:1)连接工具推荐DBeaver或华为云DAS;2)数据类型处理建议,如空字符串转NULL、varchar长度限制等;3)SQL语法特性,包括分区表、索引创建、中文排序等;4)性能优化方法,如统计信息更新、临时文件限制调整;5)主备切换机制及故障处理;6)开发接口使用示例,包括Java连接代码和API开发注意事项;7)常见错误解
摘要:本文介绍了GaussDB(DWS)中的OLAP分组函数ROLLUP、CUBE和GROUPINGSETS的应用场景。ROLLUP在分组统计基础上增加合计功能,CUBE计算所有字段组合的分组统计,GROUPINGSETS则提取部分记录。通过客户表示例展示了三种函数的等价SQL实现和执行原理,指出当前版本存在排序操作导致效率不高,未来将通过mixagg优化执行效率。这些高级分组函数为复杂报表统计提
本文介绍了GaussDB DWS中时间操作的常用函数和格式化模式。主要内容包括:1.时间格式化字符串模式详解,涵盖年、月、日、时、分、秒等格式;2.时间加减操作示例,展示日期与整数、间隔的运算;3.字符串与日期/时间戳的相互转换方法;4.日期筛选技巧,包括字符串和时间戳格式的筛选;5.时间截断函数date_trunc的使用;6.时间差计算方法;7.日期序列生成函数generate_series的应
本案例使用技能一键配置Java、Python、Node.js开发环境,帮助开发者快速搭建高效编程环境,适合初学者和团队统一技术栈使用。
【摘要】 ustore属于In-place Update更新模式,中文意思为:原地更新,是openGauss内核新增的一种存储模式。openGauss内核当前使用的行引擎采用的是Append Update(追加更新)模式,该模式在INSERT、DELETE、HOT UPDATE(页面内更新)的场景下有较好的表现。但对于非HOT UPDATE场景,垃圾回收不够高效。In-place Update存储
GaussDB的Ustore存储引擎是一种面向OLTP场景的行存储引擎,采用原地更新(In-place Update)机制,通过分离存储最新数据和历史版本数据,有效解决频繁更新导致的空间膨胀问题。相比传统Astore引擎,Ustore具有三大优势:性能提升10%且更稳定,存储空间节约15%-20%,支持细粒度资源控制。其创新设计包括多版本索引Ubtree、自治式空间管理、NUMA-aware架构,
本文介绍了GaussDB数据库中PL/SQL编程的关键技术,包括匿名块、存储过程和函数的创建与调用方法。详细说明了PL/SQL代码块结构、变量声明、控制语句(IF、LOOP)、游标操作(显式/隐式)、错误处理机制(EXCEPTION)、事务管理(COMMIT/ROLLBACK)以及动态SQL语句的使用。通过具体示例演示了如何实现数据操作、流程控制和异常处理,为GaussDB分布式数据库的存储过程开
本案例基于华为开发者空间开发平台-云开发环境(容器),完成JavaWeb商城开发。
本案例基于云主机环境讲述项目Docker容器化的操作流程,帮助读者快速上手和理解Docker容器化技术。
在“应用沙箱目录”中,应用能看到自己的应用文件以及应用运行必需的系统文件,因此,本应用的文件不为其他应用可见,反之亦然。因为安全访问机制的限制,应用A作为文件最初的拥有者和流出方,必须主动动作,其他应用才可能有权限分享到应用A内的文件;因为安全访问机制的限制,应用A作为文件最初的拥有者和流出方,必须主动动作,其他应用才可能有权限分享到应用A内的文件;在应用A内操作,将应用文件转换为用户文件,应用B