Redshift扩容

下午发现redshift集群已经没有什么空间了,删掉一些不需要的临时表也只降到86%左右,为了能放下这两天的数据必须扩容了

在官方docs中,有两种扩容方案

1.在确定能很快扩容完成的情况或者init时候适合方案:

http://docs.aws.amazon.com/redshift/latest/mgmt/rs-tutorial-using-the-resize-operation.html

2.在不确定扩容耗时,并且不中断服务的要求下适合方案:

http://docs.aws.amazon.com/redshift/latest/mgmt/rs-tutorial-using-snapshot-restore-resize-operations.html

我们采取的是第二种:

If you are unsure how long your cluster takes to resize, you can use this procedure to
take a snapshot, restore it into a new cluster, and then resize it to get an estimate.

目前数据量400G

第一步:创建Snapshot

snapshot:id: red-snapshot-0608

第二步:根据snapshot进行restore出一个新集群

restore

id: red-restore-0608

第三步:验证数据

主要是看下restore的数据是否ok

第四步:进行扩容

将restore出来的集群扩容

第五步:将扩容过程中新旧两个集群的数据做同步

如果是query就没必要了,主要针对的是变更操作;一般EDW的设计都需要考虑ETL过程中任何任务都可以rerun,所以只需要将同一份数据装载到不同的存储介质上。(我们在扩容中间没有类似操作,我们就免去了)

第六步:重命名

新的集群Host/endpoint与旧的不一致,需要重命名到旧的上去,这样所有连接Redshift的Connection Url无需更改,无缝切换

操作步骤可以按照文档进行,不赘述

第七步:删除原有集群

按照AWS的收费规则,所有未deleted状态的机器都在收费范围内。

在生产环境下,建议在删除旧集群的同时,保留一个final snapshot

如此,便完成了redshift集群的扩展,可以vacuum某些表看下结果

踩坑:

1.老集群一定要先rename然后再shutdown,目前操作发现先shutdown以后再rename就不行了,直接报400 error。

因为同名的cluster不允许同时存在,这样的话Connection URL就得修改了

时间: 2024-10-26 12:46:20

Redshift扩容的相关文章

QQ群认证 人数再度扩容 权限随之升级

群排名,得资源得天;之于排名,群容量有杠杆意义. 而今,流量分散,打法完全无法集中,全平台战略,越发凸显.QQ群,已是必争之地. 去年,Q群霸屏春天,一切那么顺其自然;而今,除了拼资源,还是拼资源.除去小号资源,于等级之外,认证一出,必须拿下. 认证QQ群有什么用? 为毛要认证,就凭你随便呱唧几句?说得这么流弊,认证QQ群具体有哪些用处? 1.认证标识,犹如QQ空间的认证,一个加V的标识,凸显权威性官方性. 2.在群检索中,搜索权重会自带光环(高高的),平台会予以很好的排名,这个是申请者核心诉求

阿里云磁盘扩容踩坑总结

公司半年前上线一个新的项目,采购了一批阿里云主机,磁盘组成是40G系统盘+100G的数据盘,数据库采用MariaDB Galera Cluster集群部署,由于业务数据量快速增长,导致磁盘存储空间剩余量很少,急需要扩容,先总结整个项目规划中埋下的坑: 1.没有DBA对数据库的容量规划,而前期的运维人员采购时选用100G的SSD云盘: 2.数据库默认使用共享表空间,缺点是删除数据后不释放空间,当数据快速增长后,我们采取了先删除临时表数据的方式来尽量避免暴力扩容,争取在春节期间稳定,删除部分数据后,

关于AWS上磁盘扩容

今天发现我们有台AWS的机器磁盘use%=87%,我们需要对磁盘进行扩容,当然在不宕机的情况下是最好,但是我们还是需要选择最安全的方式.下面是2种方案: 一.方案: 方案1.直接添加500G磁盘,把160G数据拷贝到新磁盘,按照20m/s计算,同时向需要花费时间:2.5h 如果是主的数据拷贝到主新磁盘,从数据拷贝到从的新磁盘:这个速度有待计算,另外还需要修改info文件对应的路径. 方案2.动态(不宕机的情况添加磁盘) 由于我们AAM数据库服务器磁盘做了LVM所以我们只需要把新的pv往以前的vg

bzoj1834: [ZJOI2010]network 网络扩容

努力看了很久样例一直过不了...然后各种输出中间过程啊巴拉巴拉弄了1h,没办法了...然后突然想到啊原来的边可以用啊为什么不用...于是A了...感人肺腑 #include<cstdio> #include<cstring> #include<queue> #include<iostream> #include<algorithm> using namespace std; #define rep(i,n) for(int i=1;i<=n

Java 数组扩容

在添加数据到达数组的上限的时候数组进行扩容: public void resizeArrayCaptcity(){ if(size>=arr.length){ Emp [] arr2=new  Emp[size*2]; for(int i=0;i<size;i++){ arr2[i]=arr[i]; } arr=arr2; } }

/dev/mapper/centos-root扩容

系统Centos 7 df -h 查看当前分区使用情况: dfisk /dev/xvda 对/dev/xvda磁盘进行操作(新建分区及格式化) n p 回车 默认分区号: 回车 默认磁盘创建开始位置: 回车 默认磁盘创建结束位置: t 设置分区类型 8e LVM类型 w 保存 重启 lvm 进入lvm管理 lvm>pvcreate /dev/sda3 创建逻辑卷 lvm>vgextend centos /dev/sda3  //将初始化过的分区加入到虚拟卷组centos lvm>vgdi

KVM虚拟化搭建及其KVM中LVM扩容

KVM虚拟化搭建及其KVM中LVM扩容 前言: 公司项目方最近有两台物理服务器系统分别为CentOS 7.2.需要部署KVM虚拟化,第一台服务器A需要虚拟出三台虚拟机(均为CentOS 7.2系统),服务器B上需要虚拟出三台CentOS 7.2 系统和两台windows server2012 系统.其中六台CentOS 7.2 虚拟机需要部署我们自己的平台,两台windows分别部署客户的平台.下面来为大家说一下KVM虚拟化的搭建,以及创建虚拟机的两种办法,及其操作使用.     KVM小课补:

centos7根分区扩容(适用目前主流版本)

查看根分区不够用了 1.关掉系统,从新增加一块硬盘,开机.(云主机不用关机直接添加就行) 2.fdisk –l   本次增加的磁盘叫做/dev/vdb 3.给新增加的磁盘分区: fdisk /dev/vdb 输入p,查看分区:(新加的硬盘是没有分区的,如果有 数据可以情况,输入d删除) 输入n ,创建新分区: 输入p,创建主分区 输入1,新建xvdc的第一个主分区,(或者回车即可) 回车(默认从开始分) 输入最大的柱面数,也就是磁盘的最大数:或者回车(默认最大的) 选择格式t 列出格式l 输入格

【bzoj1834】[ZJOI2010]network 网络扩容 最大流+最小费用流

题目描述 给定一张有向图,每条边都有一个容量C和一个扩容费用W.这里扩容费用是指将容量扩大1所需的费用.求: 1. 在不扩容的情况下,1到N的最大流: 2. 将1到N的最大流增加K所需的最小扩容费用. 输入 输入文件的第一行包含三个整数N,M,K,表示有向图的点数.边数以及所需要增加的流量. 接下来的M行每行包含四个整数u,v,C,W,表示一条从u到v,容量为C,扩容费用为W的边. 输出 输出文件一行包含两个整数,分别表示问题1和问题2的答案. 样例输入 5 8 2 1 2 5 8 2 5 9