• [技术干货] [openGauss] 产品特点
    [openGauss] 产品特点openGauss具有高性能、高可用、高安全性和可维护性好的特点。高性能通过列存储、向量化执行引擎、融合引擎等关键技术,实现百亿数据量查询秒级响应。高可用同城跨AZ(Available Zone)容灾,数据不丢失,分钟级恢复。高安全性支持访问控制、加密认证、数据库审计、动态数据脱敏等安全特性,提供全方位端到端的数据安全保护。高可靠闪回和回收站通常在表数据被错误的UPDATE、DELETE、TRUNCATE和DROP时数据难以恢复,即便恢复也仅能通过PITR(Point-in-time recovery,基于时间点恢复)的方式恢复到错误操作前的时刻。这种修复方式会导致整个数据库不可用,并且一些用户不希望“撤销”的表操作也同样会被“撤销”。openGauss对TIMECAPSULE以及RECYCLEBIN的支持,使用户可以通过指定时间戳进行闪回查询,或者指定时间戳对表进行闪回,获取到错误DELETE、UPDATE前的历史数据。通过从RECYCLEBIN中闪回TRUNCATE、以及DROP的表对象,用户可以将表数据恢复到错误操作前,大大提高了用户数据的可靠性。可维护性好支持WDR诊断、慢SQL诊断、Session诊断等多种维护手段,准确快速定位问题。具备AI4DB能力,能够通过AI算法实现数据库自调优、自监控、自诊断等。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] 参数调优与诊断
    [openGauss] 参数调优与诊断可获得性本特性自openGauss 1.0.0版本开始引入特性简介本功能是一款数据库集成的参数调优工具,通过结合深度强化学习和全局搜索算法等AI技术,实现在无需人工干预的情况下,获取最佳数据库参数配置。本功能不强制与数据库环境部署到一起,支持独立部署,脱离数据库安装环境独立运行。客户价值该工具可以在任意场景下,快速给出当前负载的调参配置,减少DBA的人工干预,提升运维效果,满足客户期望。特性描述调优程序包含三种运行模式,分别是:recommend: 通过用户指定的用户名等信息登录到数据库环境中,获取当前正在运行的workload特征信息,根据上述特征信息生成参数推荐报告。报告当前数据库中不合理的参数配置和潜在风险等;输出根据当前正在运行的workload行为和特征;输出推荐的参数配置。该模式是秒级的,不涉及数据库的重启操作,其他模式可能需要反复重启数据库。train: 通过用户提供的benchmark信息,不断地进行参数修改和benchmark的执行。通过反复的迭代过程,训练强化学习模型,以便用户在后面通过tune模式加载该模型进行调优。tune: 使用优化算法进行数据库参数的调优,当前支持两大类算法,一种是深度强化学习,另一种是全局搜索算法(全局优化算法)。深度强化学习模式要求先运行train模式,生成训练后的调优模型,而使用全局搜索算法则不需要提前进行训练,可以直接进行搜索调优。特性增强无特性约束数据库状态正常、客户端能够正常连接、且要求数据库内导入数据,以便调优程序可以执行benchmark测试调优效果。使用本工具需要指定登录到数据库的用户身份,要求该登录到数据库上的用户具有足够的权限,以便可以获得充足的数据库状态信息。使用登录到数据库宿主机上的Linux用户,需要将$GAUSSHOME/bin添加到PATH环境变量中,即能够直接运行gsql、gs_guc、gs_ctl等数据库运维工具。Python版本建议为Python3.6及以上,且运行环境中已经安装相应依赖,并能够正常启动调优程序。您可以独立安装一个python3.6+的环境,无需设置到全局环境变量中。不建议使用root用户权限安装本工具,如果以root身份安装本完毕工具,使用其他用户身份运行本工具时,需要确保配置文件有读取权限。本工具支持以三种模式运行,其中tune和train模式要求用户配置好benchmark运行环境,并导入数据,本工具将会通过迭代运行benchmark来判断修改后的参数是否有性能提升。recommend模式建议在数据库正在执行workload的过程中执行,以便获得更准确的实时workload信息。本工具默认带有TPC-C、TPC-H、TPC-DS以及sysbench的benchmark运行脚本样例,如果用户使用上述benchmark对数据库系统进行压力测试,则可以对上述配置文件进行适度修改或配置。如果需要适配用户自己的业务场景,需要您参照benchmark目录中的template.py文件编写驱动您自定义benchmark的脚本文件。依赖关系无详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] 并行逻辑解码
    [openGauss] 并行逻辑解码可获得性本特性自openGauss 3.0.0版本开始引入。特性简介支持多线程并行解码。客户价值大幅提升逻辑解码性能,解码速度由3~5MBps可提升到标准场景(16核CPU、内存128G、网络带宽 > 200MBps、表的列数为10~100、单行数据量0.1KB~1KB、DML操作以insert为主、不涉及落盘事务即单个事务中语句数量小于4096)下的100MBps。特性描述在使用JDBC或pg_recvlogical解码时,设置配置选项parallel-decode-num为大于1且小于等于20的值,开启并行解码特性,使用一个读取线程、多个解码线程以及一个发送线程协同进行逻辑解码操作,显著提升解码速度。特性增强无。特性约束当前的硬件和网络环境正常;由于逻辑日志一般为xlog的两倍,为保证xlog速度达到100MBps,I/O带宽至少保证200MBps;因为reader、decoder、sender线程均需预留资源,CPU需预留并发数+2的核数,如4并发场景需要预留6核。在实际场景中,使用备机解码即可保证需求,无需进行特殊的资源预留规划。为保证解码性能达标以及尽量降低对业务的影响,一台备机上应尽量仅建立一个并行解码连接,保证CPU、内存、带宽资源充足。日志级别的guc参数wal_level = logical。guc参数max_replication_slots >= 每个DN所需的(物理流复制槽数+备份槽数+逻辑复制槽数)。解码配置选项parallel-decode-num > 1且<= 20,指定并行的解码线程数。不支持DDL语句解码。不支持列存、数据页复制的解码。不支持解码分布式事务,当前机制为从DN解码,无法保证分布式事务一致性解码。单条元组大小不超过1GB,考虑解码结果可能大于插入数据,因此建议单条元组大小不超过500MB。不支持压缩表的DML语句解码。openGauss支持解码的数据类型为:INTEGER、BIGINT、SMALLILNT、TINYINT、SERIAL、SMALLSERIAL、BIGSERIAL、FLOAT、DOUBLE PRECISION、DATE、TIME[WITHOUT TIME ZONE]、TIMESTAMP[WITHOUT TIME ZONE]、CHAR(n)、VARCHAR(n)、TEXT。在需要ssl连接的场景,需要前置条件保证guc参数ssl = on。不支持interval partition表复制。在事务中执行DDL语句后,该DDL语句与之后的语句不会被解码。如需进行备机解码,需在对应主机上设置guc参数enable_slot_log = on。当前不支持超大CLOB解码。不允许主备,多个备机同时使用同一个复制槽解码,否则会产生数据不一致。禁止在使用逻辑复制槽时在其他节点对该复制槽进行操作,删除复制槽的操作需在该复制槽停止解码后执行。依赖关系依赖备机解码。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] 备机增加删除
    [openGauss] 备机增加删除可获得性本特性自openGauss 2.0.0版本开始引入。特性简介支持新增和删除备节点。客户价值当主库的读取压力较大,或者用户想要提升数据库灾难恢复能力,需要新增备节点。当集群中的某些备节点发生故障无法短时间内进行修复时,为保证集群状态正常,用户可以先将故障节点删除。特性描述openGauss支持从单机或者一主多备最多扩容至一主八备,支持新增级联备机,支持在集群中存在故障备机的情况下新增备节点;支持从一主多备删除至单节点,支持备机故障的情况下将其删除。支持在线新增和删除备节点,即可以在不影响主机业务的情况下进行新增和删除备节点。特性增强无。特性约束新增备机的约束:数据库主机上存在openGauss镜像包。在新增的扩容备机上创建好与主机上相同的用户和用户组。已存在的数据库节点和新增的扩容节点之间需要建立好root用户互信以及数据库管理用户的互信。正确配置xml文件,在已安装数据库配置文件的基础上,添加需要扩容的备机信息。只能使用root用户执行扩容命令。不允许同时在主节点上执行gs_dropnode命令删除其他备机。执行扩容命令前需要导入主机数据库的环境变量。扩容备机的操作系统与主机保持一致。操作过程中不允许同时在其他备节点上执行主备倒换或者故障倒换的操作。删除备机的约束:删除备节点的操作只能在主节点上执行。操作过程中不允许同时在其他备节点上执行主备倒换或者故障倒换的操作。不允许同时在主节点上执行gs_expansion命令进行扩容。不允许同时执行2次相同的gs_dropnode命令。执行删除操作前,需要确保主节点和备节点之间建立好数据库管理用户的互信。需要使用数据库管理用户执行该命令。执行命令前需要通过source命令导入主机数据库的环境变量。依赖关系无。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] X-Tuner: 参数调优与诊断
    [openGauss] X-Tuner: 参数调优与诊断可获得性本特性自openGauss 1.0.0版本开始引入。特性简介X-Tuner 是一款数据库集成的参数调优工具,通过结合深度强化学习和全局搜索算法等AI技术,实现在无需人工干预的情况下,获取最佳数据库参数配置。本功能不强制与数据库环境部署到一起,支持独立部署,脱离数据库安装环境独立运行。客户价值该工具可以在任意场景下,快速给出当前负载的调参配置,减少DBA的人工干预,提升运维效果,满足客户期望。特性描述调优程序X-Tuner包含三种运行模式,分别是:recommend:通过用户指定的用户名等信息登录到数据库环境中,获取当前正在运行的workload特征信息,根据上述特征信息生成参数推荐报告。报告当前数据库中不合理的参数配置和潜在风险等;输出根据当前正在运行的workload行为和特征;输出推荐的参数配置。该模式是秒级的,不涉及数据库的重启操作,其他模式可能需要反复重启数据库。train:通过用户提供的benchmark信息,不断地进行参数修改和benchmark的执行。通过反复的迭代过程,训练强化学习模型,以便用户在后面通过tune模式加载该模型进行调优。tune:使用优化算法进行数据库参数的调优,当前支持两大类算法,一种是深度强化学习,另一种是全局搜索算法(全局优化算法)。深度强化学习模式要求先运行train模式,生成训练后的调优模型,而使用全局搜索算法则不需要提前进行训练,可以直接进行搜索调优。特性增强无。特性约束数据库状态正常、客户端能够正常连接、且要求数据库内导入数据,以便调优程序可以执行benchmark测试调优效果。使用本工具需要指定登录到数据库的用户身份,要求该登录到数据库上的用户具有足够的权限,以便可以获得充足的数据库状态信息。使用登录到数据库宿主机上的Linux用户,需要将$GAUSSHOME/bin添加到PATH环境变量中,即能够直接运行gsql、gs_guc、gs_ctl等数据库运维工具。Python版本建议为Python3.6及以上,且运行环境中已经安装相应依赖,并能够正常启动调优程序。您可以独立安装一个python3.6+的环境,无需设置到全局环境变量中。不建议使用root用户权限安装本工具,如果以root身份安装本完毕工具,使用其他用户身份运行本工具时,需要确保配置文件有读取权限。本工具支持以三种模式运行,其中tune和train模式要求用户配置好benchmark运行环境,并导入数据,本工具将会通过迭代运行benchmark来判断修改后的参数是否有性能提升。recommend模式建议在数据库正在执行workload的过程中执行,以便获得更准确的实时workload信息。本工具默认带有TPC-C、TPC-H、TPC-DS以及sysbench的benchmark运行脚本样例,如果用户使用上述benchmark对数据库系统进行压力测试,则可以对上述配置文件进行适度修改或配置。如果需要适配用户自己的业务场景,需要您参照benchmark目录中的template.py文件编写驱动您自定义benchmark的脚本文件。依赖关系无。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] SQLdiag: 慢SQL发现
    [openGauss] SQLdiag: 慢SQL发现可获得性本特性自openGauss1.1.0版本开始引入。特性简介SQLdiag是一个SQL语句执行时间预测工具,通过模板化方法,实现在不获取SQL语句执行计划的前提下,依据语句逻辑相似度与历史执行记录,预测SQL语句的执行时间。客户价值工具不需要用户提供SQL执行计划,对数据库性能不会有任何影响。不同于业内其他算法只局限于OLAP或者OLTP,本工具场景更加广泛。特性描述SQLdiag着眼于数据库的历史SQL语句,通过对历史SQL语句的执行表现进行总结归纳,将之再用于推断新的未知业务上。由于短时间内数据库SQL语句执行时长不会有太大的差距,SQLdiag可以从历史数据中检测出与已执行SQL语句相似的语句结果集,并基于SQL向量化技术和模板化方法预测SQL语句执行时长。特性增强无。特性约束需要保证用户提供的历史日志及待预测负载的格式符合要求,可以使用数据库GUC参数开启收集,也可以通过监控工具采集。为保证预测准确率,用户提供的历史语句日志应尽可能全面并具有代表性。按照要求配置python环境。依赖关系无。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] SCRLock加速分布式锁
    [openGauss] SCRLock加速分布式锁可获得性本特性自openGauss 5.0.0版本开始引入。特性简介在资源池化场景下使用SCRLock提供分布式锁能力,提高分布式锁性能。客户价值随着数据规模和数据节点的增加,节点之间获取分布式锁需要消耗很多事件,影响到客户端到端的数据库体验,利用SCRLock特性,可以大幅度降低分布式锁远端时延,并且提供公平性,防止节点处于永久性等待的现象。特性描述openGauss资源池化使用基于TCP协议的被动模式分布式锁,具有网络时延高,加锁流程复杂等劣势,影响业务获取锁的性能。SCRLock提供基于RDMA协议的主动模式分布式锁,通过RDMA加速网络提高获取锁的效率,主动模式也带来了流程简单的天然优势;SCRLock提供了锁的公平性,可以防止集群中出现永久性等待的现象;SCRLock同时提供本地锁缓存能力,减少远端锁获取频次,从而降低时延。特性增强无。特性约束数据库服务器必须使用Mellanox CX4/CX5网卡。依赖关系SCRLock依赖资源池化特性。当用户设置guc参数“ss_enable_dms“ = “on“、“ss_enable_dss“ = “on“时,打开DMS和DSS组件,方可使用SCRLock分布式锁特性。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] gs_collector适配资源池化
    [openGauss] gs_collector适配资源池化可获得性本特性自openGauss 6.0.0-RC1版本开始引入。特性简介gs_collector支持收集资源池化架构下:DMS、DSS日志,DSS配置文件。xlog、pg_control、复制槽。磁阵LUN/注册信息、磁盘信息。客户价值使用gs_collector,可收集资源池化架构下DMS、DSS、磁阵信息,便于故障定位。特性描述gs_collector支持收集资源池化架构下:DMS、DSS日志及DSS配置文件: 支持收集RUN日志、DEBUG日志、操作日志、黑匣子日志,支持收集dss实例及其卷配置信息、cm配置信息。xlog、pg_control、复制槽: 资源池化架构下,支持收集共享磁阵中xlog、pg_control、复制槽。磁阵LUN/注册信息、磁盘信息。特性增强本特性是对gs_collector收集资源池化架构下DSS、DMS及磁阵信息进行的增强。特性约束无。依赖关系本特性依赖资源池化磁阵设备。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] MySQL兼容性增强
    MySQL兼容性增强可获得性本特性自openGauss 3.0.0版本开始引入。特性简介本特性主要从以下几方面增强openGauss与MySQL的兼容性(只列举部分典型语法,详情请参见《数据迁移指南》中“MySQL兼容性说明”章节):。支持用户锁,允许用户通过sql加自定义的锁,可以让多个程序之间完成加锁相关的交互过程,使得客户端从任何位置访问都可以得到一致性的锁视图。支持建表插入数据时默认记录插入当前时间;更新数据时,如果未指定更新时间,默认显示数据变更的当前时间。支持设置会话级SQL模式,允许运行时变更、全局变更以及会话内变更。支持隐藏索引,隐藏索引不会被优化器使用。支持字段大小写敏感。建表时使用的字段名将保留大小写的信息到系统表中,而真正使用这些列时,忽略大小写。支持schema级、表级、列级设置和修改默认字符集和排序规则。支持rand(N)/random_bytes(N)函数。支持使用ASCII/BINARY作为列属性。支持使用0x的方式作为十六进制数输入。支持MySQL协议兼容,通过MySQL的JDBC driver或者MySQL命令行客户端,直接连接openGauss,通过参数hot_standby、dolphin_hot_standby控制备机的可连接性。支持B库字符序右模糊匹配时走索引扫描。会将匹配条件转换为大于等于和小于等于两个不等式作为索引条件。客户价值通过设置用户锁,对数据、数据结构或者某些字符串进行保护,避免会话之间相互干扰,保证了信息的一致性和安全性。解决了用户业务数据写入与修改时,记录其操作时间戳的问题。通过设置sql模式,可以解决早期版本遗留问题与后期版本的兼容性。通过隐藏索引,可以在不禁用/删除/重建索引的情况下,测试删除某个索引对于查询性能的影响,提升SQL调优的效率。通过支持字段大小写敏感,可以让列名在查询时保持建表时的大小写信息。通过支持schema级、表级、列级设置和修改默认字符集和排序规则,可以让用户根据实际使用场景灵活调整字符集和排序规则。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] MySQL_openGauss迁移工具chameleon
    [openGauss] MySQL->openGauss迁移工具chameleon可获得性本特性自openGauss 3.0.0版本开始引入。特性简介chameleon工具是一个基于Python语言的MySQL到openGauss的实时复制工具。该工具提供了初始全量数据的复制以及增量数据的实时复制能力,可实现数据从MySQL迁移至openGauss。对于数据的全量和增量迁移,支持MySQL中各种数据类型的迁移,同时对于MySQL中的浮点数据类型,包括decimal、dec、numeric、float、float4、float8、real、double、double precision、fixed数据类型,可保证迁移后数据精度不丢失。客户价值通过使用chameleon工具,可完成数据从MySQL搬迁至openGauss数据库。特性描述chameleon工具提供数据全量和增量复制功能,使得数据可以从MySQL迁移至openGauss数据库。对于数据的全量和增量迁移,chameleon工具中存储了MySQL数据类型与openGauss数据类型之间的映射关系,可支持MySQL中各种数据类型的迁移。特别地,对于MySQL中的浮点数据类型,包括decimal、dec、numeric、float、float4、float8、real、double、double precision、fixed数据类型,若数据类型中显示指定或默认含有精度,将转化为openGauss中的numeric[p, s]类型;若数据类型中未显示指定精度,将转化为openGauss中的numeric数据类型,基于此,可保证离线迁移和在线迁移后数据精度不丢失。特性增强无。特性约束支持MySQL 5.7版本。对于数据类型映射后仍存在不兼容的情形,将导致表数据迁移失败,但不会终止后续的数据离线迁移过程。依赖关系无。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] DB4AI: 数据库驱动AI
    [openGauss] DB4AI: 数据库驱动AI可获得性本特性自openGauss 2.1.0版本开始引入。特性简介DB4AI是指利用数据库的能力驱动AI任务,实现数据存储、技术栈的同构。通过在数据库内集成AI算法,令openGauss具备数据库原生AI计算引擎、模型管理、AI算子、AI原生执行计划的能力,为用户提供普惠AI技术。不同于传统的AI建模流程,DB4AI“一站式”建模可以解决数据在各平台的反复流转问题,同时简化开发流程,并可通过数据库规划出最优执行路径,让开发者更专注于具体业务和模型的调优上,具备同类产品不具备的易用性与性能优势。客户价值通过本功能,用户无需手动编写AI模型代码,直接通过开箱即用的SQL语句即可执行机器学习模型的训练和预测,学习和使用成本极低;避免数据碎片化存储和反复搬迁导致的额外开销;更高的执行效率,本功能的AI模型训练效率极高,相比用户自行手动训练模型有数倍性能收益;更严密的安全防护,从而避免训练AI模型导致数据泄露。特性描述openGauss的原生DB4AI能力,通过引入原生AI算子,简化操作流程,充分利用数据库优化器、执行器的优化与执行能力,获得高性能的数据库内模型训练能力。更简化的模型训练与预测流程、更高的性能表现,让开发者在更短时间内能更专注于模型的调优与数据分析上,而避免了碎片化的技术栈与冗余的代码实现。特性增强在openGauss 3.0.0 版本中支持更多算法。特性约束数据库状态正常依赖关系无详情查看:cid:link_1 详情查看:cid:link_0
  • [技术干货] [openGauss] 动态数据脱敏机制
    [openGauss] 动态数据脱敏机制可获得性本特性自openGauss 1.1.0版本开始引入。特性简介数据脱敏是行之有效的数据库隐私保护方案之一,可以在一定程度上限制非授权用户对隐私数据的窥探。动态数据脱敏机制是一种通过定制化制定脱敏策略从而实现对隐私数据保护的一种技术,可以有效地在保留原始数据的前提下解决非授权用户对敏感信息的访问问题。当管理员指定待脱敏对象和定制数据脱敏策略后,用户所查询的数据库资源如果关联到对应的脱敏策略时,则会根据用户身份和脱敏策略进行数据脱敏,从而限制非授权用户对隐私数据的访问。客户价值数据隐私保护是数据库安全所需要具备的安全能力之一,可以在一定程度上限制非授权用户对隐私数据的访问,保证隐私数据安全。动态数据脱敏机制可以通过配置脱敏策略实现对指定数据库资源信息的隐私保护,另一方面,脱敏策略的配置也具有一定的灵活性,可以仅针对特定用户场景实现有针对性的隐私保护能力。特性描述动态数据脱敏机制基于资源标签进行脱敏策略的定制化,可根据实际场景选择特定的脱敏方式,也可以针对某些特定用户制定脱敏策略。一个完整的脱敏策略创建的SQL语法如下所示:CREATE RESOURCE LABEL label_for_creditcard ADD COLUMN(user1.table1.creditcard); CREATE RESOURCE LABEL label_for_name ADD COLUMN(user1.table1.name); CREATE MASKING POLICY msk_creditcard creditcardmasking ON LABEL(label_for_creditcard); CREATE MASKING POLICY msk_name randommasking ON LABEL(label_for_name) FILTER ON IP(local), ROLES(dev);其中,label_for_creditcard和msk_name为本轮计划脱敏的资源标签,分别包含了两个列对象;creditcardmasking、randommasking为预置的脱敏函数;msk_creditcard定义了所有用户对label_for_creditcard标签所包含的资源访问时做creditcardmasking的脱敏策略,不区分访问源;msk_name定义了本地用户dev对label_for_name标签所包含的资源访问时做randommasking的脱敏策略;当不指定FILTER对象时则表示对所有用户生效,否则仅对标识场景的用户生效。当前,预置的脱敏函数包括:每个脱敏函数规格如下:脱敏函数名示例creditcardmasking'4880-9898-4545-2525' 将会被脱敏为 'xxxx-xxxx-xxxx-2525',该函数仅对后4位之前的数字进行脱敏basicemailmasking'abcd@gmail.com' 将会被脱敏为'xxxx@gmail.com', 对出现第一个'@'之前的文本进行脱敏fullemailmasking'abcd@gmail.com' 将会被脱敏为 'xxxx@xxxxx.com',对出现最后一个'.'之前的文本(除'@'符外)进行脱敏alldigitsmasking'alex123alex' 将会被脱敏为 'alex000alex', 仅对文本中的数字进行脱敏shufflemasking'hello word' 将会被随机打乱顺序脱敏为 'hlwoeor dl', 该函数通过字符乱序排列的方式实现,属于弱脱敏函数,语义较强的字符串不建议使用该函数脱敏。randommasking'hello word' 将会被脱敏为 'ad5f5ghdf5',将文本按字符随机脱敏regexpmasking需要用户顺序输入四个参数,reg为被替换的字符串,replace_text为替换后的字符串,pos为目标字符串开始替换的初始位置,为整数类型,reg_len为替换长度,为整数类型。reg、replace_text可以用正则表达,pos如果不指定则默认为0,reg_len如果不指定则默认为-1,即pos后所有字符串。如果用户输入参数与参数类型不一致,则会使用maskall方式脱敏。CREATE MASKING POLICY msk_creditcard regexpmasking('[\d+]', 'x', 5, 9 ) ON LABEL(label_for_creditcard);'4880-9898-4545-2525' 将会被脱敏为 '4880-xxxx-xxxx-2525'maskall'4880-9898-4545-2525' 将会被脱敏为 'xxxxxxxxxxxxxxxxxxx'对于不支持的数据类型,默认使用maskall函数进行数据脱敏,若数据类型不属于maskall支持的数据类型则全部使用数字0进行脱敏,如果脱敏列涉及隐式转换,则结果以隐式转换后的数据类型为基础进行脱敏。另外需要说明的是,如果脱敏策略应用到数据列并生效,此时对该列数据的操作将以脱敏后的结果为基础而进行。动态数据脱敏适用于和实际业务紧密相关的场景,根据业务需要为用户提供合理的脱敏查询接口,以避免通过撞库而获取原始数据。特性增强无。特性约束动态数据脱敏策略需要由具备POLADMIN或SYSADMIN属性的用户或初始用户创建,普通用户没有访问安全策略系统表和系统视图的权限。动态数据脱敏只在配置了脱敏策略的数据表上生效,而审计日志不在脱敏策略的生效范围内。在一个脱敏策略中,对于同一个资源标签仅可指定一种脱敏方式,不可重复指定。不允许多个脱敏策略对同一个资源标签进行脱敏,除以下脱敏场景外:使用FILTER指定策略生效的用户场景,包含相同资源标签的脱敏策略间FILTER生效场景无交集,此时可以根据用户场景明确辨别资源标签被哪种策略脱敏。Filter中的APP项建议仅在同一信任域内使用,由于客户端不可避免的可能出现伪造名称的情况,该选项使用时需要与客户端联合形成一套安全机制,减少误用风险。一般情况下不建议使用,使用时需要注意客户端仿冒的风险。对于带有query子句的INSERT或MERGE INTO操作,如果源表中包含脱敏列,则上述两种操作中插入或更新的结果为脱敏后的值,且不可还原。在内置安全策略开关开启的情况下,执行ALTER TABLE EXCHANGE PARTITION操作的源表若在脱敏列则执行失败。对于设置了动态数据脱敏策略的表,需要谨慎授予其他用户对该表的trigger权限,以免其他用户利用触发器绕过脱敏策略。最多支持创建98个动态数据脱敏策略。仅支持使用上述七种预置脱敏策略。仅支持对只包含COLUMN属性的资源标签做脱敏。仅支持对基本表的列进行数据脱敏。仅支持对SELECT查询到的数据进行脱敏。FILTER中的IP地址以ipv4为例支持如下格式。脱敏函数名支持的数据类型creditcardmaskingBPCHAR, VARCHAR, NVARCHAR, TEXT(注:仅针对信用卡格式的文本类数据)basicemailmaskingBPCHAR, VARCHAR, NVARCHAR, TEXT(注:仅针对email格式的文本类型数据)fullemailmaskingBPCHAR, VARCHAR, NVARCHAR, TEXT(注:仅针对email格式的文本类型数据)alldigitsmaskingBPCHAR, VARCHAR, NVARCHAR, TEXT(注:仅针对包含数字的文本类型数据)shufflemaskingBPCHAR, VARCHAR, NVARCHAR, TEXT(注:仅针对文本类型数据)randommaskingBPCHAR, VARCHAR, NVARCHAR, TEXT(注:仅针对文本类型数据)maskallBOOL, RELTIME, TIME, TIMETZ, INTERVAL, TIMESTAMP, TIMESTAMPTZ, SMALLDATETIME, ABSTIME,TEXT, BPCHAR, VARCHAR, NVARCHAR2, NAME, INT8, INT4, INT2, INT1, NUMRIC, FLOAT4, FLOAT8, CASHip地址格式示例单ip127.0.0.1掩码表示ip127.0.0.1|255.255.255.0cidr表示ip127.0.0.1/24ip区间127.0.0.1-127.0.0.5依赖关系无。详情查看:cid:link_1详情查看:cid:link_0
  • [技术干货] [openGauss] Copy接口支持容错机制
    Copy接口支持容错机制可获得性本特性自openGauss 1.0.0版本开始引入。特性简介支持将Copy过程中的部分错误导入到指定的错误表中,并且保持Copy过程不被中断。客户价值提升Copy功能的可用性和易用性,提升对于源数据格式异常等常见错误的容忍性和鲁棒性。特性描述openGauss提供用于创建函数的封装好的Copy错误表,并允许用户在使用Copy From指令时指定容错选项,使得Copy From语句在执行过程中部分解析、数据格式、字符集等相关的报错不会中断事务,而是被记录至错误表中,使得在Copy From的目标文件即使有少量数据错误也可以完成入库操作。用户随后可以在错误表中对相关的错误进行定位以及进一步排查。特性增强无。特性约束支持容错的具体错误种类请参见《数据库运维指南》中“导入数据 > 使用COPY FROM STDIN导入数据 > 处理错误表”章节。依赖关系无。
  • [热门活动] 【数据库专题直播有奖提问】DTSE Tech Talk 技术直播 NO.59:看直播提问题赢华为云定制按摩颈枕、华为云定制双肩包等好礼!
    中奖结果公示感谢各位小伙伴参与本次活动,欢迎关注华为云DTSE Tech Talk 技术直播更多活动~本次活动获奖名单如下:请于6月6日前在此问卷中反馈您的中奖邮寄信息~直播简介【直播主题】从数据库设计到性能调优,全面掌握openGemini应用开发最佳实践【直播时间】2024年5月29日 16:30-18:00【直播专家】Shawn 华为云开源DTSE技术布道师,openGemini社区发起人【直播简介】数据库是一个复杂的系统,如何用好它,让它在实际应用中充分发挥其作用,这对我们每个开发者来说都至关重要。本期直播将围绕openGemini的应用开发流程,并结合具体案例,详细介绍数据库设计、数据写入、数据查询等场景下的最佳实践,共同探索数据库的奥秘!直播链接:cid:link_1活动介绍【互动方式】直播前您可以在本帖留下您疑惑的问题,专家会在直播时为您解答。直播后您可以继续在本帖留言,与专家互动交流。我们会在全部活动结束后对参与互动的用户进行评选。【活动时间】即日起—2024年5月29日【奖励说明】评奖规则:活动1:直播期间在直播间提出与直播内容相关的问题,对专家评选为优质问题的开发者进行奖励。奖品:华为云定制按摩颈枕活动2:在本帖提出与直播内容相关的问题,由专家在所有互动贴中选出最优问题贴的开发者进行奖励。奖品:华为云定制双肩包​更多直播活动直播互动有礼:官网直播间发口令“华为云 DTSE”抽华为云定制飞盘等好礼。​【注意事项】1、所有参与活动的问题,如发现为复用他人内容或直播间中重复内容,则取消获奖资格。2、为保证您顺利领取活动奖品,请您在活动公示奖项后2个工作日内私信提前填写奖品收货信息,如您没有填写,视为自动放弃奖励。3、活动奖项公示时间截止2024年5月31日,如未反馈邮寄信息视为弃奖。本次活动奖品将于奖项公示后30个工作日内统一发出,请您耐心等待。4、活动期间同类子活动每个ID(同一姓名/电话/收货地址)只能获奖一次,若重复则中奖资格顺延至下一位合格开发者,仅一次顺延。5、如活动奖品出现没有库存的情况,华为云工作人员将会替换等价值的奖品,获奖者不同意此规则视为放弃奖品。6、其他事宜请参考【华为云社区常规活动规则】。
  • [热门活动] 【IoT专题直播有奖提问】DTSE Tech Talk 技术直播 NO.58:看直播提问题赢华为云定制长袖卫衣、华为云云宝手办一套等好礼!
    中奖结果公示感谢各位小伙伴参与本次活动,欢迎关注华为云DTSE Tech Talk 技术直播更多活动~本次活动获奖名单如下:请于5月29日前在此问卷中反馈您的中奖邮寄信息~直播简介【直播主题】华为云IoT开源专家实践分享:开源让物联网平台更开放、易用【直播时间】2024年5月22日 16:30-18:00【直播专家】张俭 华为云IoT DTSE技术布道师【直播简介】作为开发者的你是否也想加入开源社区?本期物联网平台资深“程序猿”,开源专家张俭,为你揭秘华为云IoT如何借助开源构建可靠、开放、易用的物联网平台,并手把手教你玩转开源社区!直播链接:cid:link_1活动介绍【互动方式】直播前您可以在本帖留下您疑惑的问题,专家会在直播时为您解答。直播后您可以继续在本帖留言,与专家互动交流。我们会在全部活动结束后对参与互动的用户进行评选。【活动时间】即日起—2024年5月23日【奖励说明】评奖规则:活动1:直播期间在直播间提出与直播内容相关的问题,对专家评选为优质问题的开发者进行奖励。奖品:华为云定制长袖卫衣活动2:在本帖提出与直播内容相关的问题,由专家在所有互动贴中选出最优问题贴的开发者进行奖励。奖品:华为云云宝手办一套​更多直播活动直播互动有礼:官网直播间发口令“华为云 DTSE”抽华为云定制T恤等好礼。​【注意事项】1、所有参与活动的问题,如发现为复用他人内容或直播间中重复内容,则取消获奖资格。2、为保证您顺利领取活动奖品,请您在活动公示奖项后2个工作日内私信提前填写奖品收货信息,如您没有填写,视为自动放弃奖励。3、活动奖项公示时间截止2024年5月25日,如未反馈邮寄信息视为弃奖。本次活动奖品将于奖项公示后30个工作日内统一发出,请您耐心等待。4、活动期间同类子活动每个ID(同一姓名/电话/收货地址)只能获奖一次,若重复则中奖资格顺延至下一位合格开发者,仅一次顺延。5、如活动奖品出现没有库存的情况,华为云工作人员将会替换等价值的奖品,获奖者不同意此规则视为放弃奖品。6、其他事宜请参考【华为云社区常规活动规则】。
总条数:59 到第
上滑加载中