从MySQL迁移到Crate

时间:2015-02-24 15:04:48

标签: mysql crate

我刚刚花了一些时间尝试使用Crate - crate.io - 并且第一印象很好。如果我的理解是正确的,Crate是一个NoSQL DB,它提供了一个相当简洁的SQL接口来操作和查询数据库。尼斯!

然而,在这个阶段,我有更多的问题而不是答案。这里有三个首发球员

  • Crate管理控制台很不错。但是,如何 - 如果有的话 - 我可以保护它除了设置IP表规则吗?
  • MySQL索引如何转换为Crate。我没有看到我可以继续使用UNIQUE索引然后依赖UPDATE ... ON DUPLICATE KEY ... SQL语句
  • 最后,如果我正确地假设一旦我设置了一个集群,Crate将负责数据复制和同步,而不需要我付出更多努力。因此,如果我在地理位置上分散了Crate集群节点,那么与同步相关的延迟问题会降低整个集群的性能吗?我正在设想readng /写入本地crate实例,但可以选择以后能够从另一个crate实例中恢复这些数据(同步不相关)

这些问题可能不完全适合" SO格式,但考虑到年轻的箱子,我希望它们仍然被认为是可接受的。

1 个答案:

答案 0 :(得分:5)

很高兴你喜欢它。

1)Crate目前没有ACL支持。因此管理界面以及HTTP端点都是开放的。一般的想法是Crate在私有网络内部运行,而不是直接暴露在外部。

有关详细信息,请参阅this github issuethis blog post about how to create a read-only nginx proxy

2)Crate不支持UNIQUE约束。 (主键除外,当然是唯一的)。因此,如果主键已经存在,UPDATE .. ON DUPLICATE KEY将起作用。

其他UNIQUE约束很难做到,因为数据可能驻留在不同的节点上,然后有某种机制确保唯一性非常昂贵。

3)是延迟将减慢插入操作。 Multi Zone Setup section in the Documentation

中有更多内容