从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)Crate目前没有ACL支持.因此管理界面以及HTTP端点都是开放的.一般的想法是Crate在私有网络内运行而不是直接暴露在外部.
有关更多信息,请参见this github issue和this 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还有更多相关信息
标签:mysql,crate 来源: https://codeday.me/bug/20190519/1138111.html