• [技术干货] DWS事务隔离性问题分析和数据库并发场景 
    1.华为云数仓DWS的概念 数据仓库服务,Data Warehouse Service,简称GaussDB(DWS),是一种基于公有云基础架构和平台的在线数据处理数据库,提供即开即用、可扩展且完全托管的分析型数据库服务。GaussDB(DWS)是基于华为云原生融合数据仓库GaussDB产品的服务,兼容标准ANSI SQL 99和SQL 2003,为各行业PB级海量大数据分析提供有竞争力的解决方案。  2.事务隔离性问题分析 事务隔离性问题:如果不考虑事务的隔离性,会出现以下问题:  脏读:指一个线程中的事务读取到了另外一个线程中未提交的数据。 不可重复读:指一个线程中的事务读取到了另外一个线程中提交的update的数据。 幻读:指一个线程中的事务读取到了另外一个线程中提交的insert的数据。在一次的事务操作中,先读取了几行数据后,另一个事务又增加或删除了数据,在此之后,此事务又去读取数据,发现数据凭空生成或消失,跟幻觉一样,即幻读。 3.数据库并发场景 数据库并发场景有三种,分别为:  读-读:不存在任何问题,也不需要并发控制,因为读数据并不影响其他业务操作。 读-写:有线程安全问题,可能会造成事务隔离性问题,可能遇到脏读,幻读,不可重复读。 写-写:有线程安全问题,可能会存在更新丢失问题,比如库存业务,两个业务查询数据相同,一个库存加一,另一个库存加二,这样双写只能有一方成功,另外一个会被覆盖。 
  • [技术干货] GaussDB(DWS)实时数仓的特点和形态
     GaussDB(DWS)实时数仓的特点主要有: 快:实时数仓时序数据单机入库性能支持每秒10万条数据、每秒60万条流数据持续计算入库,并可线性扩展。 易:支持基于SQL完成复杂流式计算语义定义,简化开发。以Druid监控的一个场景为例,仅用150行SQL代码实现了原有1900行Druid脚本同样的功能。 简:实现了1 = N。在一个平台内,同时实现Flink/Spark Streaming(流数据处理)+Druid(流数据预聚合)+InfluxDB(时序数据处理),简化了开发和运维工作。 省:时序数据经过实时数仓的自适应压缩算法,可达40:1的压缩比,将多维度行列存储优化,数据冷热温自动分区,极大地减少存储空间,节省用户成本。 GaussDB(DWS)的形态主要有: 云数仓:高性价比,支持冷热数据分析,存储、计算弹性伸缩,无限算力、无限容量,并按需、按量计价。适用于“库、仓、市、湖”一体化的融合分析业务,是OLAP分析场景的首选。 IoT数仓:在云数仓基础上,提供高效的时序计算和IoT分析能力,支持实时和历史数据关联,内置时序算子,最高40x压缩。适用于物联网IoT等实时分析场景。 实时数仓:在大规模数据查询和分析能力基础上,提供高并发、高性能、低时延、低成本的事务处理能力。适用于HTAP混合负载场景,“一库两用,生产即分析”,支持单机部署和集群部署两种部署方式。 
  • [技术干货] GaussDB(DWS)模式空间管理介绍与使用
     GaussDB(DWS)存储资源管理上还提供了Schema级别的空间管控能力,一方面可以实现单实例上的空间管控,避免数据库只读和磁盘满的情况出现;另一方面将空间管控和用户、队列解耦,实现了空间管控和权限的分离,降低用户使用空间管控的难度。当一个Schema存在空间限制时,在业务执行过程中,如果该Schema下的表数据之和超过空间限制,则会导致业务报错"out of schemas' perm space limit"。 1.修改Schema空间限额
  • [技术干货] GaussDB(DWS)工作负载计划介绍与使用
     1.工作负载计划适用场景 工作负载计划用于自动化的、周期性的对工作负载队列中的资源进行变更,以便实现灵活的负载管理,适应不同的业务需求;以queue_simple和queue_complex为例,每天的0:00-06:00之间交易量大大降低,开始进行批量分析,此时需要重新配置队列的资源占比。 2.启动工作负载计划 3.导入导出工作负载计划 对于有多套集群或者有镜像测试环境的集群,可以在在一套集群中进行配置和测试后将配置导出,然后再导入生产集群或其他集群使用 
  • [技术干货] GaussDB(DWS)工作负载队列介绍与使用
    1.工作负载队列机制介绍 2.并发管控能力 全局并发量:是指GaussDB(DWS)上允许同时运行的作业数量。 局部并发量:又称队列并发量,是指各个队列上允许运行的最大作业并发量。 短查询并发:简单作业并发数,可以通过短查询开关进行控制,默认不限制。  3.CPU管控 GaussDB的CPU资源管理通过控制组(cgroup)实现,cgroup是Linux内核提供的一种可以限制单个进程或者多个进程所使用资源的机制, 可以对CPU,内存等资源实现精细化的控制。 GaussDB支持两层的cgroup架构,包含Class控制组和Workload控制组,支持四个维度隔离: GaussDB与其他程序之间隔离 后台线程与作业线程之间隔离 多租户之间隔离 作业之间隔离 GaussDB支持CPU核数隔离,通过指定cgroup能够使用的CPU核,实现控制组CPU核的隔离。  4.内存管控 默认GaussDB(DWS)使用的内存占主机Linux系统可用内存的80%。 DN实例最大可用内存:max_process_memoryDN=(RAM*0.8)*0.7/(DN_CNT+1) CN实例最大可用内存:max_process_memoryCN = max_process_memoryDN/2 实例动态内存:max_dynamic _memory = max_process_memory- cstore_used_memory-max_shared_memory-udf_reserved_memory 5.空间管控 集群磁盘空间管控 CM检查数据盘空间占用率,超过阈值后设置集群只读default_transaction_read_only=on 只读情况下仅允许只读作业运行,发生写入操作即报错退出 用户空间管控 支持永久/临时/算子三个维度表空间管理 采用单实例空间管控(CN/DN实例各自管控自身磁盘空间),防止空间倾斜 语法:CREATE/ALTER USER…PERM/TEMP/SPILL SPACE schema空间管控 支持schema空间管理 语法:CREATE/ALTER SCHEMA…PERMSPACE 单DN单SQL空间管控 避免单SQL在单DN上插入数据过大,引发DN数据倾斜 6.异常规则 异常动作: Abort:退出操作。 7.工作负载队列案例 8.创建工作负载队列 9.并发管控测试 1、创建测试用户  2、用户队列绑定  3、模拟耗时队列  10.存储空间管控测试 
  • [技术干货] GaussDB(DWS)工作负载管理介绍
     GaussDB(DWS)是一款具备分析及混合负载能力的分布式数据库,支持x86和Kunpeng硬件架构,支持行存储与列存储,提供GB~PB级数据分析能力、多模分析和实时处理能力,用于数据仓库、数据集市、实时分析、实时决策和混合负载等场景,广泛应用于汽车、制造、零售、物流、互联网、金融、政府、电信等行业分析决策系统。 1.工作负载管理满足的主要业务场景1、数据库多用户间的资源隔离通过资源隔离达成多用户间执行业务不干扰2、集群的负载控制资源(CPU、内存、空间、并发)可控,保证集群不过载2.工作负载管理概览
  • [技术干货] .NET Core程序连接集群
    1.创建控制台应用程序 2.添加相关ODBC包  3.创建实体模型 4.初始化ORM 5.CRUD的使用 5.1 插入数据 5.2 查询数据 5.3 更新数据 5.4 删除数据 
  • [技术干货] 本地客户端Data Studio(windows)连接集群
     1.驱动下载 Data Studio是一款运行在Windows操作系统上的SQL客户端工具,有着丰富的GUI界面,能够管理数据库和数据库对象,编辑、运行、调试SQL脚本,查看执行计划等。在GaussDB(DWS) 管理控制台下载Data Studio软件包,解压后免安装即可使用。 因为是.Net 在window上开发所以下载JDBC驱动,进行安装就好了,完成后安装文件夹如下2.在Windows环境使用ODBC连接参考网站:cid:link_0按官方文档配置好后测试连接 
  • [技术干货] GaussDB(DWS)的部署
    GaussDB(DWS)是一款具备分析及混合负载能力的分布式数据库,支持x86和Kunpeng硬件架构,支持行存储与列存储,提供GB~PB级数据分析能力、多模分析和实时处理能力,用于数据仓库、数据集市、实时分析、实时决策和混合负载等场景,广泛应用于汽车、制造、零售、物流、互联网、金融、政府、电信等行业分析决策系统。  1.购买GaussDB(DWS) 1、华为云官网:http://bbs.huaweicloud.com/ 2、搜索DWS 3、点击立即购买 4、选择购买数据仓库集群 5、进行支付 6、数仓初始化 刚买的数据仓库初始化大概需要半小时 7、进绑定IP地址 点击绑定IP 无公网ip可自行购买  完成后如下,如果不使用记得进行删除哦 至此我们就可以通过外网访问数据库了 。
  • [分享交流] 【分享交流】2024年大家对GaussDB(DWS)有哪些期待?
    GaussDB(DWS)开发者一站式平台,旨在为GaussDB(DWS)的开发者们提供最全面的信息资讯。精品技术文章、最佳实践、直播集锦、热门活动、海量案例、智能机器人,海量资源一站式集成,2024年大家对GaussDB(DWS)有哪些期待?
  • [集群购买/创建] GaussDB(DWS)console界面下载客户端失败(国网OBS)
    【问题版本】 HCS821【问题描述】 国网管控面升级后下载客户端失败,报NoSuchBucket【问题影响】 无【问题根因】 国网部署形态,下载客户端都是使用的总部的桶,下载链接中写入了regionId【定位过程】1、console界面点击下载客户端按钮后,报NoSuchBucket和Thespecified bucket does not exist;2、国网局点都是统一用的总部的桶去下载,需要检查hosts配置是否正确;3、若配置正确,本地ping域名和TelnetIP加443端口测试是否通;注意:(若还是无法下载,可能需要清浏览器缓存、更换浏览器、更换电脑尝试)【规避措施1】(一劳永逸)1、国网部署形态,下载客户端都是使用的总部的桶,下载链接中写入了regionId,需要如下操作后才能下载;2、本地hosts文件配置:(注:IP使用总部的OBS桶IP;域名使用网省带自己regionId的域名)XX.XX.XX.XX obs.{regionId}.sgic.sgcc.com.cn2、本地ping域名和TelnetIP加443端口测试通,就可以登录console界面下载;注意:(若修改后无法下载,需要清浏览器缓存、更换浏览器、更换电脑尝试)【规避措施2】(升级console会更换js文件,只适合短期规避)1、修改Console-Static-01/02两节点上的/opt/cloud/static/private/dws/config.js配置文件中的OBS url对应字段dwsMaintenabceBucketURL的值去掉regionId;具体修改为:"dwsMaintenabceBucketURL": "https://obs.sgic.sgcc.com.cn/dws-tool"2、本地hosts文件配置:(注:IP使用总部的OBS桶IP;域名使用总部不带regionId的域名)XX.XX.XX.XX obs.sgic.sgcc.com.cn3、本地ping域名和TelnetIP加443端口测试通,就可以登录console界面下载;注意:(若修改后无法下载,需要清浏览器缓存、更换浏览器、更换电脑尝试)
  • [存储] GaussDB(DWS)告警:创建表失败
    问题背景:在实际生产环境中,遇到“创建表失败”该怎么排查?原理是什么,通过以下内容我们可以有一定的了解检测原理: cm_agent进程会按照默认周期150s的间隔,在集群的CN实例去创建临时表,如果建表失败6次,则会上报创建表失败的告警。 功能实际作用:创建表的DDL正常执行能准确反馈当前集群并无故障,失败告警能反馈一定程度上集群存在瓶颈或者异常。告警ID:1078919300 告警名称:创建表失败 配置信息: 配置文件:cm.conf abnormal_check_create_table = '{ "_name" : "libac_create_table.so", "check_interval" : "150", "check_count" : "6" }' 参数说明: _name 参数说明:异常检测插件的名字CreateTable插件 check_interval 参数说明:cm_agent进行create table检测的时间间隔。 取值范围:非负整型,单位为秒。 默认取值:150 check_count 参数说明:cm_agent触发create table异常告警的create table连续异常次数的阈值。 取值范围:非负整型。 默认取值:6 日志打印: 日志路径:$GAUSSLOG/cm/cm_agent/ 以下日志信息来源实验室环境(不涉及外部IP和主机名称):2023-02-19 10:32:39.303 tid=44230 Ac-create_table-5001 ERROR: Failed to create tmp table (task failed count 3). 2023-02-19 10:32:39.306 tid=44230 Ac-create_table-5001 ERROR: Failed to run the abnormal check handler: plugin="create_table", interval=150, instanceId=5001. 2023-02-19 10:35:10.914 tid=44230 Ac-create_table-5001 ERROR: Execute sql "BEGIN;SET STATEMENT_TIMEOUT = 120000;CREATE TABLE IF NOT EXISTS sys.cm_agent_abnormal_check_tmp_tablen_5001(a int);DROP TABLE IF EXISTS sys.cm_agent_abnormal_check_tmp_table_on_5001;END;" failed with error message: ERROR: dn_6015_6016: canceling statement due to statement timeout 2023-02-19 10:35:10.915 tid=44230 Ac-create_table-5001 ERROR: Failed to create tmp table (task failed count 4). 2023-02-19 10:35:10.917 tid=44230 Ac-create_table-5001 ERROR: Failed to run the abnormal check handler: plugin="create_table", interval=150, instanceId=5001. 2023-02-19 10:37:41.750 tid=44230 Ac-create_table-5001 ERROR: Execute sql "BEGIN;SET STATEMENT_TIMEOUT = 120000;CREATE TABLE IF NOT EXISTS sys.cm_agent_abnormal_check_tmp_tablen_5001(a int);DROP TABLE IF EXISTS sys.cm_agent_abnormal_check_tmp_table_on_5001;END;" failed with error message: ERROR: dn_6003_6004: canceling statement due to statement timeout 2023-02-19 10:37:41.750 tid=44230 Ac-create_table-5001 ERROR: Failed to create tmp table (task failed count 5). 2023-02-19 10:37:41.753 tid=44230 Ac-create_table-5001 ERROR: Failed to run the abnormal check handler: plugin="create_table", interval=150, instanceId=5001. 2023-02-19 10:40:11.961 tid=44230 Ac-create_table-5001 ERROR: Execute sql "BEGIN;SET STATEMENT_TIMEOUT = 120000;CREATE TABLE IF NOT EXISTS sys.cm_agent_abnormal_check_tmp_tablen_5001(a int);DROP TABLE IF EXISTS sys.cm_agent_abnormal_check_tmp_table_on_5001;END;" failed with error message: ERROR: dn_6003_6004: canceling statement due to statement timeout 2023-02-19 10:40:11.961 tid=44230 Ac-create_table-5001 ERROR: Failed to create tmp table (task failed count 6). 2023-02-19 10:40:11.965 tid=44230 Ac-create_table-5001 LOG: [Alarm Module]Component alarm report succeed! Cmd: /opt/huawei/Bigdata/mppdb/snas_cm_cmd alarm 1078919300 0 00080000000011000800060033FI-MPPDB192.168.253.53test-1Cn5001Failed#to#create#table#on#CN#5001, retCmd: 0. 异常原因: 1、集群压力过载。一般来说cm_agent如果30s内没有收到cn的回复,那么创建表就会失败。常见于集群压力比较大,创建表30s内没有执行完,可搜索cma日志关键字recv timeout expired。 2、实例发生异常。如上日志打印信息dn实例异常。 解决方案: 1、因集群压力导致的告警,需要排查具体过载场景,比如长时间CPU高,需要优化业务,咱们DWS有性能监控工具如CPU内存IO和dbmonitor工具可具体作为排查的手段。 2、因实例长时间故障导致的告警,需要及时排查原因和修复实例故障。 调整参数: 说明 不建议调整参数,不建议调整参数,不建议调整参数。因当前参数容忍度评估在合理范围,如实在需调整请参考命令。 gs_guc reload -Z cm -c "abnormal_check_create_table = '{ \"_name\" : \"libac_create_table.so\", \"check_interval\" : \"180\", \"check_count\" : \"10\" }'"
  • [问题求助] explain analyze 在执行查询时,除了显示查询计划外,还会提供哪些额外的信息?
    explain analyze 在执行查询时,除了显示查询计划外,还会提供哪些额外的信息?
  • [问题求助] 在 dws 中,explain verbose 与 explain 有什么不同?
    在 dws 中,explain verbose 与 explain 有什么不同?
  • [问题求助] EXPLAIN 命令在 DWS 中如何帮助用户理解查询的性能?
    EXPLAIN 命令在 DWS 中如何帮助用户理解查询的性能?
总条数:2746 到第
上滑加载中