我们正在改变我们当前的用户端MySQL数据库。我们有一个网站+移动应用程序,美国各地的用户查询我们的数据库。相关数据包含在三个表中,并且需要针对三个表的连接查询以将相关结果发送给用户。
发送回用户的结果是小尺寸(<6kb)。如果我们的目标是实现低延迟并且吞吐量是低优先级,那么以下两个数据库中的哪一个会表现得更好:
MemSQL还是AWS Aurora?
它们都具有相同的硬件起始成本(〜$ 0.28 / hr)。我们现在只考虑这两个数据库,以便我们可以继续我们的&#34; MySQL&#34;内部知识。我喜欢我可以将数据库头痛外包给Aurora。但是,MemSQL读取/写入内存的能力肯定是一种低延迟的解决方案吗?
答案 0 :(得分:8)
没有什么比内存更快的速度,这就是MemSQL的构建目的。它将表(在行存储模式下)存储在内存中,并使用自定义查询引擎将查询缓存到中间语言中,以便它可以尽快执行。 Aurora更像是一个基于磁盘的经典MySQL实例,但它具有大量的基础架构变化和优化功能,可以充分利用亚马逊的服务。
在决定之前,你需要弄清楚“低延迟”意味着什么 - 这是在几秒或几毫秒内?
MemSQL会更快,最有可能在几毫秒内,具体取决于您的查询。 Aurora会慢一些,但可能会提供亚秒级,这取决于您的查询和分配的资源以及数据的结构。
如果没有更多细节,答案就是判断你的表现容忍度然后进行实验。