从 MySQL 迁移到 Crate
Migrating from MySQL to Crate
我刚刚花了一些时间试用 Crate - crate.io - 第一印象很好。如果我的理解是正确的,Crate 是一个 NoSQL 数据库,它提供了一个相当简洁的 SQL 接口来操作和查询数据库。不错!
然而,现阶段我的问题多于答案。这是三个初学者
- Crate 管理控制台很不错。但是,除了设置 IP 表规则之外,我还能如何保护它?
- MySQL 索引如何转换为 Crate。我看不到我可以继续使用 UNIQUE 索引然后依赖更新...ON DUPLICATE KEY... SQL statements
- 最后,如果我的假设是正确的,一旦我设置了一个集群,Crate 就会负责数据复制和同步,而无需我做进一步的工作。那么如果我有地理上分散的 Crate 集群节点,与同步相关的延迟问题会降低整个集群的性能吗?我设想 readng/writing 到本地板条箱实例,但可以选择稍后能够从另一个板条箱实例恢复这些数据(同步不相关)
这些问题可能不完全 "fit" SO 格式,但考虑到 Crate 多么年轻,我希望它们仍然被认为是可以接受的。
很高兴你喜欢。
1) Crate目前不支持ACL。所以管理界面和 HTTP 端点都是开放的。总体思路是,Crate 运行 位于私有网络内,不直接暴露在外部。
有关详细信息,请参阅 this github issue and 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
中有更多相关内容
我刚刚花了一些时间试用 Crate - crate.io - 第一印象很好。如果我的理解是正确的,Crate 是一个 NoSQL 数据库,它提供了一个相当简洁的 SQL 接口来操作和查询数据库。不错!
然而,现阶段我的问题多于答案。这是三个初学者
- Crate 管理控制台很不错。但是,除了设置 IP 表规则之外,我还能如何保护它?
- MySQL 索引如何转换为 Crate。我看不到我可以继续使用 UNIQUE 索引然后依赖更新...ON DUPLICATE KEY... SQL statements
- 最后,如果我的假设是正确的,一旦我设置了一个集群,Crate 就会负责数据复制和同步,而无需我做进一步的工作。那么如果我有地理上分散的 Crate 集群节点,与同步相关的延迟问题会降低整个集群的性能吗?我设想 readng/writing 到本地板条箱实例,但可以选择稍后能够从另一个板条箱实例恢复这些数据(同步不相关)
这些问题可能不完全 "fit" SO 格式,但考虑到 Crate 多么年轻,我希望它们仍然被认为是可以接受的。
很高兴你喜欢。
1) Crate目前不支持ACL。所以管理界面和 HTTP 端点都是开放的。总体思路是,Crate 运行 位于私有网络内,不直接暴露在外部。
有关详细信息,请参阅 this github issue and 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
中有更多相关内容