Amazon SimpleDB/Amazon RDS 的性能?
使用 Amazon SimpleDB 或 Amazon RDS 的人是否遇到过响应时间、正常运行时间、稳定性等问题?您总体来说对这项服务感到满意吗?没有数据丢失或需要重新启动等问题吗?我们正在考虑将其中之一用于项目。
我非常喜欢这个想法,尽管由于我们需要使用一些数学函数(正弦、余弦等),我们可能需要 RDS 而不是 SimpleDB。只是想知道执行是否和想法一样伟大?
Has anyone using Amazon SimpleDB or Amazon RDS had any problems with response time, uptime, stability, etc.? Would you say overall you're happy with the service? No issues with data loss or needing reboots etc.? We're thinking about using one of them for a project.
I like the idea a lot, although since we need to use some math functions (sine, cosine, etc.) we probably will need RDS not SimpleDB. Just wondering if the execution is as great as the idea?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
到目前为止,我已经在一个生产环境中一直使用 SimpleDB,虽然生产负载不是那么高,但负载测试的执行水平比我们需要的要高得多,并且 SimpleDB 很好地应对了这一点。
SimpleDB 总体上似乎具有非常好的正常运行时间特性和可靠性,例如与 RD 相比,在 RD 中,您的可靠性取决于您准备支付 24/7 的设置 - 如果您没有对 SimpleDB 进行任何点击,则几乎不需要花费任何费用,因为嗯,这很方便。
我还没有看到数据丢失,并且没有运行 SimpleDB 实例的概念,因此也不需要重新启动,而对于 RDS,您正在谈论运行 RDS 实例的 EC2 实例的所有常规管理。
另一方面,正如您所指出的,您将无法在数据库内部执行功能,除了一组非常有限的操作(实际上只是 count(*) ),因此这必须在应用程序层进行。
另外,您不应该低估通过 JDBC 工作之间的思维变化,其中连接是长时间运行的,但却是一种宝贵的商品,而 SimpleDB 中每个请求都是 HTTP 请求,但并发连接数的限制要少得多。
在我第一次使用 SimpleDB 的生产环境中,我们进行了一些重负载测试和令人印象深刻的结果,才意识到这意味着我们可以将操作并行化到通常看起来令人厌恶的水平 - 例如,当整理 1300 个喜欢的“喜欢”计数时事情,而不是使用原始 plam,并通过“SELECT COUNT(*)...”连续获取这些计数,我们改为一次并行发出 100 个这样的请求,并且可能会更高 容易地。
TL;DR - 不要低估 NoSQL 方法带来的思维变化,但也不要忽视它。
I've used SimpleDB in all the way up to one production environment so far, and whilst the production load wasn't that high, load testing was performed to a much higher level than we needed, and SimpleDB stood up to this quite nicely.
SimpleDB overall seems to have very good uptime characteristics and reliability, compared to RDs for example, where you are only as reliable as the setup you are prepared to pay for 24/7 - if you make no hits to SimpleDB it costs almost nothing, as well, which is handy.
I've also yet to see data loss, and there is no concept of running instances for SimpleDB so no reboots either, whereas with RDS you are talking all the usual management of EC2 instances running the RDS instances.
You will on the other hand as you have noted, not be able to perform functions inside the database, outside of a very limited set of operations (well just count(*) actually), so that would have to go on at application layer.
Also, you should not underestimate the change in mindset between working via JDBC where connections are long-running, but a precious commodity, as opposed to SimpleDB where each request is an HTTP request, but there is far less restriction in concurrent connection count.
In my case on our first production use of SimpleDB, it took some heavy load tests and unimpressive results to have us realise this meant we could parallelise operations to what would normally seem an obscene level - for example when collating 'like' counts for 1300 likeable things, rather than go with the original plam, and get these counts serially via "SELECT COUNT(*)..." we instead made 100 of these requests in parallel at a time, and could have gone higher veyr easily.
The TL;DR - Don't underestimate the change in mindset going to a NoSQL approach, but also don't dismiss it.