Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
If we have a requirement on 24 hours max for RPO on data stored in Amazon S3, would S3IA be able to satisfy that?
Yes, you can say it could because Amazon S3 data is automatically replicated to 3 AZs in the region, so having a 24 hrs max RPO can ba handled. But what if disaster happens in the entire region?
Would we need a cross region replicate to satisfy this RPO requirement?
Part of your business's recovery objective goals should include identifying what type of outages are worth spending the money to guard against. Do you want to protect your business from a temporary regional AWS outage? Do you want to protect your business from a huge natural disaster that permanently destroys an entire AWS region? Do you want to protect your business from some sort of social or political upheaval that causes AWS to be shutdown in an entire country? Your business has to evaluate the level of outage that they anticipate to be an actual threat, as well as the level of outage that is worth the investment of capital to guard against.
I'm saying all this to explain why asking random strangers on the Internet if you need to implement cross region replication makes no sense. Only your business can answer that question, and simply staging an RPO number does not provide enough information.
Cross region replication, not only to a different region but also to an S3 bucket in a different account, is always a good idea. This gives you protection not only from an AWS regional outage, but also from your AWS account being hacked. Depending on what sort of outages you want to guard against, you may want that bucket to be in a different country, or even in a different hemisphere.
Related
Closed. This question is not about programming or software development. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 3 months ago.
Improve this question
I am interested in setting up an AWS host that needs to occasionally pull data from another Internet site.
According to the AWS pricing calculator, inbound Internet data transfers are free but outbound data transfers are not. Does this mean I am only charged for the size of the HTTP request but the HTTP response is free? I searched but cannot find an answer to this question. Thanks.
Yes, you are correct. In your scenario, only requests incur charges. Also note that the first 100GB is free. From the docs:
AWS customers receive 100GB of data transfer out to the internet free each month, aggregated across all
AWS Services and Regions (except China and GovCloud). The 100 GB free tier for data transfer out to the internet
is global and does not apply separately or individually to AWS Regions.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 months ago.
Improve this question
I want to store audit data of some events happening within my API service.
I am planning to have 3 columns for the audit table.
The daily record/rows addition to this audit table won't exceed more than 100.
This audit table will be rarely accessed and will have very little write operation per day.
I want to minimize the cost, and I think that DynamoDB would be overkill here.
Is there any other choice of storage with RDS, or some other AWS storage service, that I can use to achieve my goal.
I would be writing the data to the audit table through a lambda service.
What makes you think DynamoDB would be overkill? It scales down as well as it scales up. In fact, when your activity rate is low that’s a great time to pick a serverless model because you don’t have to pay except for what you use.
Your usage would even fit within the free tier.
If you have a workload that's about 99% writes and 1% reads and doesn't have extreme read performance requirements as tends to be the case with audit workloads, I suggest you rethink your approach to storing this data.
Consider having the Lambda function(s) write the audit events to a Kinesis Firehose Stream. Kinesis Firehose can aggregate these records in JSON/Parquet files and store them on S3. When you need to access that data, you can use Athena to query the data in S3.
This should be significantly cheaper at scale than having a database around that's not going to be queried most of the time.
Pricing:
Kinesis Data Firehose
Athena
S3
Note: DynamoDB has a free tier of 25GB in storage costs per month - depending on what's going on in your account, that may be something to factor in.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 1 year ago.
Improve this question
I am trying to build a backup system for some important data in my AWS S3 bucket.
Among the options that I explored were versioning from which individual objects can be recovered to an earlier state.
This would definitely help in the case of accidental deletions.
But the problem here is in situations where there's a data corruption happening because of some wrong code that was introduced or something similar, in order to retrieve the system to an earlier state a proper snapshot based backup solution will be required in addition to versioning.
This would also help in a situation where say the whole bucket was deleted accidentally, or versioning got turned off and some data got deleted later.
The current option I was thinking of was to use an EC2 instance to copy the data daily or at predefined intervals to local drive(using aws s3 sync or aws s3 cp) and then upload it under the particular days folder to another S3 bucket. I was thinking of maintaining a life-cycle rule to expire the backups after say a week.
I don't think this is very efficient though because the buckets could hold about 100GB data later as traffic increases into the application.
I wanted some validation from someone who might have done something similar if this is the right way to proceed, or if there's some S3 or AWS feature that can be used to make this simpler.
Traditionally, backups are used in case a storage device is corrupted. However, Amazon S3 replicates data automatically to multiple storage devices, so this takes care of durability.
For data corruption (eg an application destroys the contents of a file), Versioning is the best option because S3 will retain previous versions of an object whether an object is updated (overwritten). Object Lifecycle Management can be used to delete versions after a certain number of versions or after a given period of time.
If you concerned that versioning might be turned off (suspended) or a whole bucket was accidentally deleted, you can use S3 replication to duplicate the contents of the bucket to another bucket. The other bucket can even be in a different region or a different AWS Account, which means that nobody in the primary account would have permission to delete data in the secondary (replication) account. This is a common practice to ensure critical business data is not lost.
If you want the ability to restore multiple objects to a point-in-time ("retrieve the system to an earlier state"), you can use traditional backup software that is S3-aware. For example, MSP Backup (formerly CloudBerry Lab) has backup software that can move data between S3 buckets and on-premises storage (or just within S3), with normal point-in-time restore capabilities.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 2 years ago.
Improve this question
S3 has a storage pricing some $ per GB. Do I get unlimited retrievals or Am I charged when I retrieve or download an object from S3 bucket?
#hephalump only mentioned data transfer costs in the answer. Just so you are aware, you are also charged for object retrieval API calls. The detailed S3 pricing is listed on Amazon S3 pricing page. You can click the "Requests and data retrievals" tab and read the details.
Yes, you pay data transfer charges based on the amount of data transferred. As per the AWS documentation here:
You pay for all bandwidth into and out of Amazon S3, except for the following:
- Data transferred in from the internet.
- Data transferred out to an
Amazon Elastic Compute Cloud (Amazon EC2) instance, when the instance is in the same AWS Region as the S3 bucket.
- Data transferred out to
Amazon CloudFront (CloudFront).
Pricing varies based on the destination and volume but data transfer out to the Internet range from $0.00 on the free tier to $0.09/GB for the first 9.999TB/month.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I run a EU-based website on Amazon EC2, and currently send around 13,000 emails a day through Amazon SES. Much of the email throughput is during the early hours of the morning.
Now that Amazon SES has instances in Europe, are there any advantages to me switching from the current US-west SES servers into Europe? Does it make any difference in terms of deliverability or anything else?
The only benefit I can really see is one of slight speed increase; but email sending is done away from anything user-facing anyway.
The only advantage would be in terms pricing, only if you have the servers that are sending email in the same EC2 region as the SES region. In other words if both of them are in the same region, you wouldn't get charged any "OUT" data.
Otherwise you would get charged $0.02 /GB . If you look at the AWS EC2 pricing here: http://aws.amazon.com/ec2/pricing/ , it would be here:
Of course, if your clients are outside Amazon you would get charged "IN" and "OUT" data.