如果您已经使用了Hologres的免费试用实例,当准备进行更深入的性能测试或将其用于生产环境时,您需要升级实例以满足更高的性能要求。如果不升级实例,进行性能测试或运行生产任务时,可能会因资源不足导致出现延迟增加、处理速度变慢或服务中断等现象。本文以试用实例(8 Core规格)为例,为您介绍试用实例应用到生产环境的操作。
费用说明
升级试用实例相关费用说明如下:
如果您的免费额度有结余,升级实例后不影响您继续使用免费额度,待免费额度使用完毕或超出有效期后,超出部分将会自动转为按量付费,详细计费规则请参见按量付费。
如果您的免费额度已使用完毕或超出有效期,升级实例后资源按量付费,详细计费规则请参见按量付费。
如果您选择不升级实例,待免费额度使用完毕或超出有效期后,超出部分也将会自动转为按量付费。因此如果您后续不再使用实例,请在Hologres的管理控制台的实例列表页面单击停机后删除实例,避免产生不必要的费用。
可以通过费用与成本的我的试用页面查看您的试用资源免费额度使用情况。
步骤一:升配实例
Hologres 8Core规格实例仅推荐体验使用与功能测试,不推荐用于性能测试和业务生产场景。
您需要进一步进行性能测试或需要接入生产任务时,需要先对实例进行升配(以64Core为例),操作详情请参见实例升降配。
步骤二:修改Shard数
Hologres是分布式实时数仓引擎,数据存储在底层存储系统的数据分片(Shard)上。合理的Shard数意味着能够更好地利用分布式计算资源,实现数据的并行处理,从而提升查询性能。
Hologres 8Core规格实例的默认Shard数为2,实例升配后,默认Shard数不变,但计算节点(Worker)数量增加,无法发挥分布式系统的查询性能优势。因此在您完成实例升配后,请按照以下步骤修改Shard数,更多相关操作请参见Table Group与Shard Count操作指南。
下述操作步骤同样支持通过HoloWeb进行可视化操作,详情请参见Table Group管理。
新建Table Group并设置合适的Shard数。
Hologres 64Core规格实例的推荐Shard数为40,执行以下命令创建新的Table Group并设置Shard数:
CALL HG_CREATE_TABLE_GROUP ('<new_tg_name>', <shard_count>);
其中
new_tg_name
为新的Table Group名称,shard_count
为Shard数。将新Table Group设为默认Table Group。
执行以下命令即可将新Table Group设为默认Table Group,后续新建的表会默认归属新Table Group。
CALL HG_UPDATE_DATABASE_PROPERTY ('default_table_group', '<new_tg_name>');
迁移存量表至新Table Group。
实例中存量表仍归属原Table Group,执行以下命令将存量表迁移至新Table Group。
-- V1.1及以上版本命令语法 CALL HG_MOVE_TABLE_TO_TABLE_GROUP('<table_name>','<new_tg_name>'); -- V0.10版本命令语法 CALL HG_UPDATE_TABLE_SHARD_COUNT('<table_name>','<new_tg_name>');
(可选)资源隔离与高可用
如果您的业务有读写分离、读读分离的需求,可以使用Hologres支持的共享存储多实例高可用方案,详情请参见主从实例读写分离部署(共享存储)。
以64Core为例,您可以将主实例调整为32Core,用于承载数据写入任务,并开通32Core的只读从实例,用于承载业务的查询需求,实现读写分离。如果多个业务都有查询需求,可以通过更多的只读从实例分别承载,实现读读分离。
下一步
当您的作业上线生产环境且趋于稳定后:
相关文档
Hologres不同实例规格均有其对应的默认Shard数,详情请参见实例规格概述。
Shard数与Worker个数存在一定的分配关系,合理地设置Shard数可以从根本上提高数据的存储与计算效率,详情请参见Shard与计算节点Worker的关系。