华为云用户手册

  • 计费说明 GeminiDB Influx的计费项由实例规格费用、存储空间费用、备份空间费用和公网流量费用组成。具体内容如表1所示。 标 * 的计费项为必选计费项。 表1 GeminiDB Influx实例计费项 计费项 计费项说明 适用的计费模式 计费公式 * 实例规格 计费因子:vCPU和内存,不同规格的实例类型提供不同的计算和存储能力。 包年/包月、按需计费 实例规格单价 * 购买时长 实例规格单价请参见云数据库 GeminiDB价格详情中的“集群-规格费用”。 * 存储空间 计费因子:存储空间,按统一标准进行计费。 包年/包月、按需计费 存储空间单价 * 存储容量 * 购买时长 请参见云数据库 GeminiDB价格详情中的“集群磁盘空间计费信息”。 备份空间 计费因子:备份空间,按统一标准进行计费。 按需计费 备份空间单价 * 备份收费容量 * 购买时长 请参见云数据库 GeminiDB价格详情中的“备份空间计费信息”。 说明: 计费时长:备份超过免费空间大小的使用时长。 冷存储空间 计费因子:冷存储空间,按统一标准进行计费。 包年/包月、按需计费 冷存储空间单价 * 存储容量 * 购买时长 请参见云数据库 GeminiDB价格详情中的“冷存储空间计费信息”。 公网流量 如有互联网访问需求,您需要购买弹性公网IP。 计费因子:带宽费、流量费和IP保有费。 包年/包月计费模式支持按带宽计费方式,收取带宽费。 按需计费模式支持按带宽计费、按流量计费和加入共享带宽三种计费方式,分别收取带宽费+IP保有费、流量费+IP保有费、带宽费+IP保有费。 包年/包月、按需计费 带宽费支持使用带宽加油包抵扣,流量费支持使用共享流量包抵扣。 按固定带宽值采用阶梯计费 0Mbit/s~5Mbit/s(含):均为一个统一的单价 大于5Mbit/s:按每Mbit/s计费 公网带宽单价请参见弹性云服务器价格详情中的“带宽价格”,或者弹性公网IP价格详情。
  • 计费示例 假设您在2023/03/08 15:50:04购买了一个包年/包月GeminiDB Influx实例(规格:2 vCPUs 8GB,节点数量:3,存储空间:100GB,备份空间:110GB(赠送100GB,后续收费空间10GB),冷存储空间:500GB),计费资源包括实例规格(vCPU、内存、节点数量)、存储空间、备份空间、公网带宽。购买时长为一个月,并在到期前手动续费1个月,则: 第一个计费周期为:2023/03/08 15:50:04 ~ 2023/04/08 23:59:59 第二个计费周期为:2023/04/08 23:59:59 ~ 2023/05/08 23:59:59 2023/04/08 23:59:59~2023/05/01 23:59:59期间,使用免费备份空间50GB。 2023/05/01 23:59:59~2023/05/08 23:59:59期间,使用计费备份空间10GB,计费时长168小时。 图1给出了上述示例配置的费用计算过程。 图中价格仅为示例,实际计算请以云数据库 GeminiDB价格详情中的价格为准。 图1 包年/包月GeminiDB Influx费用计算示例 按需计费模式下,各计费项的计费示例请参见计费示例。
  • 自定义策略样例 示例1:授权用户创建云数据库 GeminiDB实例 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "nosql:instance:create" ] } ] } 示例2:拒绝用户删除云数据库 GeminiDB数据库实例 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则。 如果您给用户授予GaussDB NoSQLFullAccess的系统策略,但不希望用户拥有GaussDB NoSQLFullAccess中定义的删除云数据库 GeminiDB实例权限,您可以创建一条拒绝删除云数据库 GeminiDB实例的自定义策略,然后同时将GaussDB NoSQLFullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对云数据库 GeminiDB执行除了删除云数据库 GeminiDB实例外的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [ { "Effect": "Deny" "Action": [ "nosql:instance:delete" ], } ] } 示例3:多个授权项策略 一个自定义策略中可以包含多个授权项,且除了可以包含本服务的授权项外,还可以包含其他服务的授权项,可以包含的其他服务必须跟本服务同属性,即都是项目级服务或都是全局级服务。多个授权语句策略描述如下: { "Version": "1.1", "Statement": [ { "Action": [ "nosql:instance:create", "nosql:instance:rename", "nosql:instance:delete", "vpc:publicIps:list", "vpc:publicIps:update" ], "Effect": "Allow" } ] }
  • 变更计费模式概述 在购买GeminiDB Influx后,如果发现当前计费模式无法满足业务需求,您可以变更计费模式。支持变更计费模式的GeminiDB Influx计费项如表1所示。 表1 支持变更计费模式的GeminiDB Influx计费项 计费项 变更说明 相关文档 实例规格(vCPU和节点数量) 变更GeminiDB Influx实例的计费模式会同时变更计算资源(vCPU和节点数量)的计费模式。 将GeminiDB Influx实例的计费模式从按需计费转为包年/包月,可以让您享受一定程度的价格优惠。 将GeminiDB Influx实例的计费模式从包年/包月转为按需计费,可以帮助您回收部分成本,并更加灵活地使用GeminiDB Influx资源。 说明: 包年/包月计费模式到期后,按需计费模式才会生效。 按需转包年/包月 包年/包月转按需 EIP 包年/包月EIP支持到期后转为按需、按带宽计费EIP。 按需、按带宽计费EIP支持转为包年/包月EIP。 按需、按带宽计费EIP支持和按需、按流量计费EIP互转。 具体变更方式可参考图1。 按需转包年/包月 包年/包月转按需 图1 EIP计费模式变更 父主题: 变更计费模式
  • 转换函数 表8 转换函数支持的命令列表 命令名称 读写模式下是否支持该命令 只读模式下是否支持该命令 abs √ √ acos √ √ asin √ √ atan √ √ atan2 √ √ ceil √ √ cos √ √ sin √ √ tan √ √ sqrt √ √ round √ √ floor √ √ exp √ √ ln √ √ log2 √ √ log10 √ √ log √ √ pow √ √ cumulative_sum √ √ difference √ √ non_negative_difference √ √ derivative √ √ non_negative_derivative √ √ elapsed √ √ moving_average √ √
  • 元数据管理 表3 元数据管理支持的命令列表 命令名称 读写模式下是否支持该命令 只读模式下是否支持该命令 create database √ √ show databases √ √ drop database √ √ show measurements √ √ show measurement cardinality √ √ show measurement exact cardinality √ √ drop measurement √ √ create retention policy √ √ alter retention policy √ √ drop retention policy √ √ show retention policies √ √ create continuous query √ √ show continuous queries √ √ drop continuous query √ √ show series √ √ show series cardinality √ √ show series exact cardinality √ √ drop series √ √ show tag keys √ √ show tag key cardinality √ √ show tag key exact cardinality √ √ show tag values √ √ show tag values cardinality √ √ show tag values exact cardinality √ √ show field keys √ √ show field key cardinality √ √ show field key exact cardinality √ √ show shards √ √ show shard groups √ √ drop shard √ √
  • influx client登录后的CLI 表2 influx client登录后的CLI命令列表 命令名称 读写模式下是否支持该命令 只读模式下是否支持该命令 connect √ √ auth √ √ pretty √ √ chunked √ √ chunk size √ √ use √ √ fromat √ √ precision √ √ consistency √ √ history √ √ settings √ √ clear √ √ exit/quit/ctrl+d √ √
  • 典型应用 IoT传感器时序数据分析 物联网应用,规模和可靠性至关重要。GeminiDB Influx接口提供了高吞吐量和并发性,您可以通过快速的响应时间来支持大量的连接。因此非常适合要求苛刻的物联网应用。 优势: 超强写入 小批量写入场景性能为开源版本InfluxDB的4.5倍,大批量写入场景性能为开源版本InfluxDB的3.3倍。 弹性扩展 基于计算存储分离的分布式架构,分钟级计算节点扩容,应对业务高峰期。 证券及加密货币交易数据 GeminiDB Influx接口存储用户银行的银行流水,可应用于金融行业的风控体系,构建反欺诈系统。 优势: 高效查询 就近区域部署,快速响应查询。 实时分析 数据同步上云,支持云上时序数据分析。 软硬件设备实时监控 使用GeminiDB Influx接口保存用户行为数据,支撑精准营销和用户画像。 优势: 高效写入和查询 最高每天处理万亿级时间点写入能力,多节点多线程并行高性能查询。 实时分析 数据同步上云,支持云上时序数据分析。 都市环保数据采集 GeminiDB Influx接口支持海量时间线的写入,为环保采集点提供稳定可靠的数据库支撑。 优势: 高效写入和查询 向量化查询接口,高效的聚合、卷积等时序数据查询算子,可高效处理高并发大数据量写入和查询。
  • 计费构成分析 可以将GeminiDB Influx的使用阶段按照计费模式分为两段: 2023/03/18 15:30:00 ~ 2023/03/20 10:30:00:按需计费 2023/03/18 15:30:00 ~ 2023/03/20 9:00:00期间 实例规格:2vCPUs,8GB 节点数量:3 使用存储空间:100GB 使用备份空间:100GB 冷存储空间:500GB 公网带宽:6Mbit/s 在2023/03/20 9:00:00 ~ 2023/03/20 10:30:00期间 实例规格:4vCPUs,16GB 节点数量:3 使用存储空间:200GB 使用备份空间:210GB(备份按需计费时间:2023/03/20 10:00:00~2023/03/20 10:30:00) 冷存储空间:500GB 公网带宽:6Mbit/s 2023/03/20 10:30:00 ~ 2023/04/20 23:59:59:包年/包月计费 实例规格:4vCPUs,16GB 节点数量:3 使用存储空间:200GB 使用备份空间:300GB(备份按需计费时间:2023/04/10 23:59:59 ~ 2023/04/20 23:59:59) 冷存储空间:500GB 公网带宽:6Mbit/s 计费时长:1个月 此案例中的单价仅为示例,且计算出的费用为估算值。单价的变动和实际场景中计算出来的费用可能会有偏差。请以华为云官网发布的数据为准。 按需计费 在2023/03/18 15:30:00 ~ 2023/03/20 9:00:00期间按照2vCPUs 8GB规格计费,计费时长为41.5小时,费用计算如下: 在2023/03/20 9:00:00 ~ 2023/03/20 10:30:00期间按照4vCPUs 16GB规格计费,计费时长为1.5小时,费用计算如下: 包年/包月计费 在2023/03/20 10:30:00 ~ 2023/04/20 23:59:59期间为包年/包月计费,计费时长为1个月,费用计算如下: 由此可见,在3~4月份,GeminiDB Influx总共产生的费用为:261.71 + 17.89 + 4467.10 = 4746.70 元。
  • 计费场景 某用户于2023/03/18 15:30:00购买了一个按需计费的GeminiDB Influx实例,规格配置如下: 规格:2vCPUs,8GB 节点数量:3 冷存储空间:500GB 公网带宽:6Mbit/s 用了一段时间后,用户发现实例当前规格无法满足业务需要,于2023/03/20 9:00:00扩容规格为4vCPUs,16GB。因为该实例打算长期使用下去,于2023/03/20 10:30:00将实例转为包年/包月计费,购买时长为1个月。那么在3~4月份,该实例总共产生多少费用呢?
  • 事件监控简介 事件监控提供了事件类型数据上报、查询和告警的功能。方便您将业务中的各类重要事件或对云资源的操作事件收集到云监控服务,并在事件发生时进行告警。 事件即云监控服务保存并监控的GeminiDB Influx资源的关键操作,您可以通过“事件”了解到谁在什么时间对系统哪些资源做了什么操作,如修改实例名称、规格变更等。 事件监控为您提供上报自定义事件的接口,方便您将业务产生的异常事件或重要变更事件采集上报到云监控服务。 事件监控默认开通,您可以在事件监控中查看系统事件和自定义事件的监控详情,目前支持的系统事件请参见事件监控支持的事件说明。 父主题: 事件监控
  • 操作系统更新 GeminiDB Influx实例需要适时进行操作系统更新,以提高数据库性能和数据库的整体安全状况。 实例内核版本升级时,GeminiDB Influx会根据操作系统的实际情况,决定是否更新以及更新适合的操作系统冷补丁版本。 操作系统更新不会更改数据库实例的版本或数据库实例信息。 此外,GeminiDB Influx会在用户设置的运维时间段内,通过热补丁方式及时修复影响重大的操作系统漏洞。 父主题: 变更实例
  • 迁移原理 通过迁移工具解析社区版InfluxDB的tsm以及wal文件写入到行协议(Line Protocal)文件中,最终将行协议文件数据解析并迁移至目标端。 整个迁移过程分为导出和导入阶段两个阶段。 导出阶段会并发解析社区版InfluxDB的tsm以及wal文件,并将解析数据写入到行协议文件中。 导入阶段会并发读取行协议文件,将读取数据发送至GeminiDB Influx集群各节点上。 迁移工具支持全量迁移和增量迁移,具体可在配置文件中配置。
  • 修订记录 发布日期 修订记录 2023-08-30 第三十三次正式发布。 新增计费说明。 2023-07-18 第三十二次正式发布。 新增入门实践。 2023-06-30 第三十一次正式发布。 开启冷存储,GeminiDB Influx单节点实例支持选购冷存储。 扩容冷存储,GeminiDB Influx单节点实例支持扩容冷存储。 新增事件监控。 2023-04-28 第三十次正式发布。 新增购买单节点实例。 2023-03-31 第二十九次正式发布。 新增操作系统更新。 2022-08-11 第二十八次正式发布。 新增常见问题:资源冻结/释放/删除/退订。 2022-07-22 第二十七次正式发布。 新增最佳实践:购买并连接GeminiDB Influx实例。 2022-05-07 第二十六次正式发布。 使用规范和建议,增加查询规范。 2022-04-02 第二十五次正式发布。 新增常见问题:如何使用GeminiDB Influx的hint功能。 购买集群实例,修改实例名称,优化中文名称长度。 2022-03-09 第二十四次正式发布。 新增常见问题:GeminiDB Influx是否支持Grafana访问和如何通过Grafana连接GeminiDB Influx。 2022-01-27 第二十三次正式发布。 支持批量续费、退订、按需计费转包年/包月、包年/包月转按需计费操作。 2021-09-06 第二十二次正式发布。 使用规范和建议,新增GeminiDB Influx使用规范和建议。 2021-07-20 第二十一次正式发布。 开启冷存储,GeminiDB Influx支持选购冷存储。 冷热数据分离,GeminiDB Influx支持冷热数据分离。 2021-06-30 第二十次正式发布。 购买集群实例,GeminiDB Influx实例名称支持中文。 修改实例安全组,GeminiDB Influx支持修改安全组。 2021-06-15 第十九次正式发布。 调整文档结构。 2021-04-30 第十八次正式发布。 数据库实例规格,增加不同规格实例支持的最小存储容量。 备份概述,支持增量备份和恢复。 2021-04-15 第十七次正式发布。 调整文档结构。 GeminiDB Influx支持增量备份和恢复。 2021-01-30 第十六次正式发布。 实例操作列增加规格变更、添加节点和磁盘扩容入口。 GeminiDB Influx系统参数优化。 2020-11-30 第十四次正式发布。 GeminiDB Influx支持节点扩容。 GeminiDB Influx支持参数模板功能。 2020-10-30 第十三次正式发布。 资源标签支持20个配额。 扩容磁盘支持每次至少选择1GB扩容量。 2020-09-30 第十二次正式发布。 支持实例配额管理。 GeminiDB Influx支持备份管理功能。 GeminiDB Influx支持回收站功能。 GeminiDB Influx支持重启实例。 2020-08-30 第十一次正式发布。 GeminiDB Influx支持如下功能: 支持修改实例名称 支持实例回收站 支持包周期计费模式 新增监控指标 2020-07-30 第十次正式发布。 GeminiDB Influx支持如下功能: 公网访问 时序洞察 2020-06-30 第九次正式发布。 GeminiDB Influx支持如下功能: 存储扩容 支持跨AZ级容灾 2020-01-20 第五次正式发布。 GeminiDB Influx公测。
  • 入门实践 当您购买并连接了GeminiDB Influx数据库实例后,可以根据自身的业务需求使用GeminiDB Influx提供的一系列常用实践。 表1 常用最佳实践 实践 描述 使用规范 使用规范和建议 从命名、TAG、FIELD、查询等方面介绍GeminiDB Influx使用上的一些规范和建议,用于解决常见的使用错误,低效,难以维护等问题。 解决方案 运维平台数据库解决方案 该解决方案帮助用户快速在华为云上部署数据库运维监控系统Prometheus,用户可以通过部署界面完成参数配置,完成GeminiDB Influx和弹性云服务ECS资源的创建及监控业务的配置。 变更实例 修改实例名称 GeminiDB Influx支持修改数据库实例名称,以方便您区分和识别实例。 重置管理员密码 GeminiDB Influx支持重置数据库管理员密码,建议您定期修改密码,以提高系统安全性,防止出现密码被破解等安全风险。 变更实例的CPU和内存规格 当用户购买的实例的CPU和内存规格无法满足业务需要时,可以在控制台进行CPU和内存规格变更。 数据备份 管理自动备份 介绍如何在数据库实例的备份时段中创建数据库实例的自动备份,系统根据您指定的备份保留期保存数据库实例的自动备份。 管理手动备份 介绍如何为数据库实例手动备份数据,用户可以通过手动备份恢复数据,从而保证数据可靠性。 数据恢复 恢复备份到新实例 介绍如何使用已有的自动备份或手动备份恢复实例数据到新建实例,恢复后的数据与该备份生成时的实例数据一致。 父主题: 快速入门
  • 连接方式介绍 GeminiDB Influx提供使用内网、公网和程序代码的连接方式。 表1 连接方式 连接方式 使用场景 说明 内网连接 介绍使用内网IP或者负载均衡地址连接GeminiDB Influx实例的方法。 该方法适用于当应用部署在弹性云服务器上,且该弹性云服务器与数据库实例处于同一区域、同一VPC内时连接数据库实例。 为了提升可靠性、消除单点故障影响,推荐使用负载均衡地址连接实例。 安全性高,可实现数据库实例的较好性能。 公网连接 介绍使用弹性公网IP连接GeminiDB Influx实例的方法。 该方法适用于不能通过内网IP地址访问数据库实例时,单独绑定弹性公网IP连接弹性云服务器(或公网主机)与数据库实例。 降低安全性。 为了获得更快的传输速率和更高的安全性,建议您将应用迁移到与您的数据库实例在同一VPC子网内,使用内网连接。 用户需要购买弹性公网IP,请参见弹性公网IP计费说明。 程序代码连接 介绍使用GO语言、Java语言、Python语言连接GeminiDB Influx实例的方法和示例。 - 父主题: 连接实例
  • 备份原理 GeminiDB Influx有专门负责备份管理的节点(三个Meta节点中ID最小的Meta节点,后续称为M1节点)。如图1所示,GeminiDB Influx的备份在M1节点上进行,通过对数据进行秒级快照,并将生成的备份文件以压缩包的形式存储在对象存储服务(OBS)中,不会额外占据GeminiDB Influx实例的存储空间。备份上传过程中会消耗一定的CPU,因此会存在CPU上涨的现象,一般涨幅范围在5%~15%,该现象属于正常现象。 图1 备份原理
  • 备份方案 GeminiDB Influx实例支持自动备份和手动备份两种方案。 自动备份 您可以在管理控制台设置自动备份策略,系统将会按照自动备份策略中设置的备份时间段和备份周期进行自动备份,并且会按照设置的备份保留天数对备份文件进行存放。 自动备份的备份文件不支持手动删除,可通过修改自动备份策略调整备份保留天数,超出备份保留天数的已有备份文件会被自动删除。 手动备份 手动备份是由用户根据自身业务特点随时启动的数据库实例的全量备份,会一直保存,直到用户手动删除。 建议您定期对数据库进行备份,当数据库故障或数据损坏时,可以通过备份恢复数据库,从而保证数据可靠性。 表1 备份方案 备份方案 使用场景 自动备份 系统按照自动备份策略,对数据库进行自动备份,您可以根据业务需求修改自动备份策略。 手动备份 根据自身业务特点手动启动数据库实例的全量备份。
  • 备份存储 GeminiDB Influx的备份数据存储至对象存储服务(Object Storage Service,简称OBS),在提高数据容灾能力的同时有效降低磁盘空间占用。 购买实例存储空间后,GeminiDB Influx将同比例赠送备份存储空间,用于存储备份数据。例如,您购买的实例存储空间为100GB时,会得到赠送的100GB备份存储空间。当备份数据没有超出100GB,将免费存储在OBS上;当备份数据超出100GB,超出部分将根据OBS的计费规则收费,详情请参见OBS计费详情。
  • 如何使用GeminiDB Influx的hint功能 GeminiDB Influx支持hint功能,来提高查询性能。该功能只能用于单时间线(单时间线可以简单理解为查询语句中需要指定所有的tag的值)查询的场景,使用hint功能时只需要在查询语句前面加上“/*+ full_series */” 即可。 例如: 常规查询语句: select value from cpu where server_id=1; 使用hint查询对应的语法则为: select /*+ full_series */ value from cpu where server_id=1; 父主题: 产品咨询
  • 监控指标 如下监控指标需要在实例节点查看,具体方法请参见查看监控指标。 表1 GeminiDB Influx支持的监控指标 指标ID 指标名称 指标含义 取值范围 测量对象 监控周期(原始指标) gemini001_cpu_usage CPU利用率 该指标为从系统层面采集的CPU使用率。 单位:% 0~100 % GeminiDB Influx实例的节点 1分钟 gemini002_mem_usage 内存利用率 该指标为从系统层面采集的内存使用率。 单位:% 0~100 % GeminiDB Influx实例的节点 1分钟 gemini003_bytes_out 网络输出吞吐量 统计平均每秒从测量对象的所有网络适配器输出的流量。 单位:kb/s ≥ 0 kb/s GeminiDB Influx实例的节点 1分钟 gemini004_bytes_in 网络输入吞吐量 统计平均每秒从测量对象的所有网络适配器输入的流量。 单位:kb/s ≥ 0 kb/s GeminiDB Influx实例的节点 1分钟 nosql005_disk_usage 存储容量使用率 该指标为存储容量使用率。 单位:% 0~100 % GeminiDB Influx实例 1分钟 nosql006_disk_total_size 存储容量总容量 该指标为实例的存储容量总容量。 单位:GB ≥ 0 GB GeminiDB Influx实例 1分钟 nosql007_disk_used_size 存储容量使用量 该指标为实例的存储容量使用量。 单位:GB ≥ 0 GB GeminiDB Influx实例 1分钟 influxdb001_series_num 时间线数量 描述总的时间线数量。 单位:Counts ≥ 0 Counts GeminiDB Influx实例的节点 1分钟 influxdb002_query_req_ps 每秒查询请求 描述每秒查询请求的数量。 单位:Counts/s ≥ 0 Counts/s GeminiDB Influx实例的节点 1分钟 influxdb003_write_req_ps 每秒写入请求 描述每秒写入请求的数量。 单位:Counts/s ≥ 0 Counts/s GeminiDB Influx实例的节点 1分钟 influxdb004_write_points_ps 写入数据点 描述每秒写入的数据点数量。 单位:Counts/s ≥ 0 Counts/s GeminiDB Influx实例的节点 1分钟 influxdb005_write_concurrency 写入并发量 描述并发写入的请求数量。 单位:Counts ≥ 0 Counts GeminiDB Influx实例的节点 1分钟 influxdb006_query_concurrency 查询并发量 描述并发查询的请求数量。 单位:Counts ≥ 0 Counts GeminiDB Influx实例的节点 1分钟
  • 使用GeminiDB Influx时要注意什么 实例的操作系统,对用户都不可见,这意味着,只允许用户应用程序访问数据库对应的IP地址和端口。 对象存储服务(Object Storage Service,简称OBS)上的备份文件以及GeminiDB Influx使用的系统容器,都对用户不可见,它们只对GeminiDB Influx后台管理系统可见。 申请数据库实例后,您还需要做什么。 申请实例后,您不需要进行数据库的基础运维(比如高可用、安全补丁等),但是您还需要重点关注以下事情: 数据库实例的CPU、IOPS、空间是否足够。 数据库实例是否存在性能问题,是否需要优化等。 父主题: 产品咨询
  • 使用须知 目标实例必须与弹性云服务器在同一个虚拟私有云和子网内才能访问。 该弹性云服务器必须处于目标实例所属安全组允许访问的范围内。 如果目标实例所属安全组为默认安全组, 则无需设置安全组规则。 如果目标实例所属安全组非默认安全组,请查看安全组规则是否允许该弹性云服务器访问。具体操作请参考设置安全组规则。 如果安全组规则允许弹性云服务器访问,即可连接实例。 如果安全组规则不允许弹性云服务器访问,需要在实例安全组添加一条“入”的访问规则。
  • 查询 规则 禁止执行SELECT * FROM进行查询。 查询语句必须带上时间范围限制。 业务上线前,一定要对数据库进行性能压测,评估业务峰值场景下,对数据库的负载情况。 建议 执行查询时,只选择需要返回的字段,不需要的字段不要返回。 查询时间范围越小,查询性能越好。 查询时TAG值越精确查询性能越好。尽量是单时间线查询,即指定所有的TAG值,或者尽量指定越多的TAG值。 在查询中的group by time intervals后增加fill(none), fill(none)作用为:对于没有数据点的时间间隔,不返回任何时间戳和值。针对稀疏数据场景,能大幅降低查询返回结果数据量。 在使用嵌套查询时将时间范围的查询条件放在最外层的查询语句中。
  • 异地双活原理介绍 GeminiDB Cassandra提供了异地双活功能,通过异地实例间数据的双向同步和业务灵活调度能力,实现了业务恢复和故障恢复解耦,保障了故障场景下业务的连续性。 异地双活是一种多活容灾架构的解决⽅案,即部署在不同数据中心的GeminiDB Cassandra数据库可以同时为用户业务提供服务。当一个数据中心发生故障而另一个数据中心正常运行时,可以通过业务层的调度将故障区域的业务切换到正常区域,因为配置了异地双活,您可以在数据中心运行正常的区域继续处理数据。在业务不中断的前提下实现故障场景下业务的快速恢复,保证了故障场景下业务的连续性。 配置异地双活功能的具体操作请参见搭建双活关系。 父主题: 异地双活
  • 热key问题 热key的危害: 在日常生活中,经常会发生各种热门事件,应用中对该热点新闻进行上万次的点击浏览和评论时,会形成一个较大的请求量。这种情况下会造成短时间内对同一个key频繁操作,会导致key所在节点的CPU和负载突然升高,从而影响落在该节点的其他请求,导致业务成功率下降。诸如此类的还有热门商品促销,网红直播等场景,这些典型的读多写少的场景也会产生热点问题。 热key问题会产生如下危害: 流量集中,达到物理网卡上限。 请求过多,缓存分片服务被打垮。 数据库击穿,引起业务雪崩。 处理思路: 针对热key问题,一般采取如下处理思路。 设计上需要考虑热key的问题,避免在数据库上产生热key。 业务侧通过增加缓存来减少热key出现的情况。考虑多级缓存解决热key问题(如Redis + 本地二级缓存) 屏蔽热点key。 比如:在业务侧进行定制,支持热key黑白名单能力,可以将热key临时屏蔽。 检测方法: 我们定义访问频率大于100000 次/min的key为热key。 热key事件分为两种类型。一种是Writes事件,代表写热点,一种是Reads事件,表示读热点。 GeminiDB Cassandra提供了热key的监测与告警。在CES界面,可以配置实例的热key告警,具体方法请参见设置告警规则。 当发生热key事件时,系统会第一时间发送预警通知,您可以前往CES界面查看监控事件数据,及时处理,避免业务波动。 图2 热key告警 热key告警字段说明: { "sampler_type": "WRITES", //采样类型。取值有WRITES,READS;WRITES代表写,READS代表读。 "partition_num": "2969", //分区键的热点次数 "keyspace_name": "performance", //keyspace名称 "table_id": "a10f3bb0-3626-11ec-bbdf-63e05bbb4391", //表id "table_name": "stresstable", //表名 "partition_key": "85897376" //产生热点分区键的值 }
  • 总结 在线业务在使用Cassandra时,必须执行相关的开发规则和使用规范,在开发设计阶段就降低使用风险,合理的设计会降低大部份风险发生的概率。 任何表的设计都要考虑是否会造成热key或者大key的产生,是否会造成负载倾斜的问题。 建立数据过期机制,表中的数据不能无限制的增长而不删除或者过期。 针对读多写少的场景,要增加缓存机制,来应对读热点问题,并提升查询性能。 对于每个PK以及每行Row的大小,要控制大小,否则将影响性能和稳定性。超出后要及时优化。
  • 大key问题 可能原因: 大key的产生,最主要的原因是主键设计不合理,使得单个分区的记录数或数据量过大。一旦某一个分区出现极大时,对该分区的访问,会造成分区所在服务器的负载变高,甚至造成节点内存溢出(OOM)等。 处理思路: 针对大key问题,一般采取如下两种处理思路。 增加缓存,优化表结构。 基于现有分区键,增加分区键散列。对数据进行打散,避免单个分区的记录过大。 检测方法: 通过长时间的业务观察,我们规定以下阈值,超过任何一个条件的阈值即为大key。 单个分区键的行数不能超过10万。 单个分区的大小不超过100MB。 GeminiDB Cassandra支持了大key的检测与告警。在CES界面,可以配置实例的大key告警,具体方法请参见设置告警规则。 当发生大key事件时,系统会第一时间发送预警通知,您可以前往CES界面查看监控事件数据,及时处理,避免业务波动。 图1 大key告警 告警字段说明如下: [ { "partition_size": "1008293497", //超大分区键的总大小 "timestamp": "2021-09-08 07:08:18,240", //大key产生时间 "partition_num": "676826", //超大分区键的总行数 "keyspace_name": "ssss", //keyspace名称 "table_name": "zzzz", //表名称 "table_id": "024a1070-0064-11eb-bdf3-d3fe5956183b", //表id "partition_key": "{vin=TESTW3YWZD2021003}" //分区键 } ] 常见案例及解决方案: 案例1:某集群的数据量过大,导致集群存在大分区键(排查数量大概为2000+),最大的分区键达到38GB。当业务频繁访问这部分大的分区键时,会导致节点持续高负载,影响业务请求成功率。 该案例中表结构设计如下: 表设计分析: 上述movie表保存了短视频的相关信息,分区键为movieid,并且保存了用户信息(uid)。如果movieid是一个热门短视频,有几千万甚至上亿用户点赞此短视频,则该热门短视频所在的分区非常大(当前发现有38GB)。 解决方法: 针对上述案例中问题,可以通过如下方法解决。 优化表结构。 创建新表保存热门短视频信息,只保留短视频公共信息,不包含用户信息,确保该表不会产生大的分区键。热门短视频信息写入该表中。 增加缓存 业务应用先从缓存中读取热门文件信息,没有查询到,则从数据库中查询,减少数据库查询次数。 整体优化逻辑如下: 先查缓存,当缓存存在,直接返回结果。 当缓存不存在,查询热门视频缓存(缓存不存在,则查询hot表),当视频为为热门视频时,查询hotmovieaccess表。 当hotmovieaccess表存在结果时,直接返回。当hotmovieaccess表不存在记录时,查询movie表。 并缓存查询结果。 案例2:movie_meta以月度建表,每个表只存当月的数据,初始的这种设计是可以减轻或规避分区键过大问题的。由于业务频繁写入,热门视频存储的记录非常多,还是形成了大的数据分区。 解决方法: 新分区键增加一个随机数(0~999):将原来一个分区存储的信息随机离散存储到1000个分区中。采用新的分区键之后,没有形成新超过100MB的分区键,旧的超过100MB的分区键数据,随着时间过期即可。
  • 数据库实例状态 数据库实例状态是数据库实例的运行情况。可以通过管理控制台查看数据库实例状态。 表1 实例状态 状态 说明 正常 数据库实例正常和可用。 异常 数据库实例不可用。 创建中 正在创建数据库实例。 创建失败 数据库实例创建失败。 重启中 正在重启数据库实例。 重置密码中 正在重置管理员密码。 节点扩容中 正在扩容该实例下的节点个数。 节点缩容中 正在删除该实例下的节点。 存储扩容中 正在扩容实例的磁盘容量。 规格变更中 正在变更实例的CPU和内存规格。 备份上传中 正在上传备份文件。 备份中 正在创建数据库备份。 恢复检查中 该实例下的备份正在恢复到新实例。 转包周期中 实例的计费方式正在由“按需计费”转为“包年/包月”。 转按需中 实例的计费方式正在由“包年/包月”转为“按需计费”。 灾备集群创建中 正在创建容灾实例。 容灾关系解除中 删除容灾实例。 SSL切换中 正在开启或关闭SSL安全连接。 冻结 账户余额小于或等于0元,系统对该用户下的实例进行冻结。您需前往费用中心充值成功,欠款核销后,冻结的实例才会解冻。 解冻中 欠款核销后,正在解冻数据库实例。 包周期变更资源检查中 包周期实例在进行变更过程中所持续的状态。 父主题: 产品介绍
  • 入门实践 当您购买并连接了GeminiDB Cassandra数据库实例后,可以根据自身的业务需求使用GeminiDB Cassandra提供的一系列常用实践。 表1 常用最佳实践 实践 描述 数据库规范 基本设计规范 介绍GeminiDB Cassandra的基本设计规范。 数据库对象使用规范 介绍数据库对象的使用规范。 数据库使用约束规范 介绍数据库的使用约束规范。 查询规范 介绍GeminiDB Cassandra的查询规范。 变更实例 修改实例名称 GeminiDB Cassandra支持修改数据库实例名称,以方便您区分和识别实例。 重置管理员密码 GeminiDB Cassandra支持重置数据库管理员密码,建议您定期修改密码,以提高系统安全性,防止出现密码被破解等安全风险。 变更实例的CPU和内存规格 当用户购买的实例的CPU和内存规格无法满足业务需要时,可以在控制台进行CPU和内存规格变更。 数据备份 管理自动备份 介绍如何在数据库实例的备份时段中创建数据库实例的自动备份,系统根据您指定的备份保留期保存数据库实例的自动备份。 管理手动备份 介绍如何为数据库实例手动备份数据,用户可以通过手动备份恢复数据,从而保证数据可靠性。 设置跨区域备份策略 介绍如何为数据库实例设置跨区域备份策略,用户可以在异地区域使用目标区域的备份文件恢复到新的GeminiDB Cassandra实例,用来恢复业务。 创建库表级备份 介绍如何为数据库实例创建库表级备份,当数据库或表被恶意或误删除,可依赖实例的备份保障数据安全。 数据恢复 恢复备份到新实例 介绍如何使用已有的自动备份或手动备份恢复实例数据到新建实例,恢复后的数据与该备份生成时的实例数据一致。 恢复备份到指定时间点 介绍如何使用已有的自动备份,恢复实例数据到指定时间点。 日志管理 慢日志 GeminiDB Cassandra支持查看数据库级别的慢日志,执行时间的单位为ms。通过该日志,可查找出执行效率低的语句,以便优化。 父主题: 快速入门
共100000条