0
votes

Say I just issue a daily copy command, as opposed to streaming all my data immediately into redshift. Does that mean I have a really low percent usage, and therefore I have a low bill?

According to the Amazon simple monthly calculator, using 10 ds1.xlarge on-demand nodes will run me $6,844.20 a month.

enter image description here

However, if I only use those nodes for one hour a day, it will only run me $263.50 a month.

enter image description here

To be more specific, there are two strategies I'm considering. One is to send my data (which comes in at a rate of hundreds a second) to a Firehose stream, which is pointed at a Redshift cluster (with an intermediate S3 bucket of course). The other strategy is to send my data to a different Firehose stream, which is pointed at an S3 bucket; then, I issue a daily COPY command (through JDBC). Let's assume that I read very rarely from my database, such that the total amount of time spent COPYing and reading in my database does not exceed one hour per day.

1

1 Answers

2
votes

You pay for Redshift by the server hour, just like EC2, RDS and ElastiCache. You are reserving a specific amount of server resources and you pay for that each hour that it exists, regardless of actual "usage".

The "Usage" field in the calculator defaults to "100% Utilized/Month" which would result in the price of a Redshift cluster that existed for the entire month. By changing it to "1 Hours/Day" you have indicated to the price calculator that you plan to create a Redshift cluster once a day, and delete it before it has existed for more than an hour, and then do that again the next day, every day of the month.

The amount of time you spend copying/updating/reading from your Redshift cluster has no bearing on the monthly price of the cluster.