我正在做一个项目,我们在MySQL中有一些遗留数据,现在我们想要部署ES,以便更好地进行全文搜索。
我们仍然希望使用MySQL作为后端数据存储,因为当前的系统与此紧密耦合。
似乎大多数可用的解决方案都建议在两者之间同步数据,但这将导致所有文档在ES和MySQL中存储两次。由于有些文档可能相当大,我想知道是否有一种方法可以只有一份文档副本?
谢谢!
发布于 2019-05-10 04:04:17
不可能。这类似于问以下问题:如果您在Excel电子表格中有遗留数据,我是否可以在不将数据存储在MySQL中的情况下使用MySQL数据库来查询数据?
Elasticsearch不仅仅是解释用户查询并将其转换为数据库查询的应用层,它本身也是一个数据库系统(实际上,它可以用作您的主要数据存储,尽管由于各种缺点,不推荐使用它)。它的搜索功能从根本上取决于它自己的后备存储器是如何组织的。Elasticsearch无法查询其他数据库。
你应该考虑哪些部分的数据实际上需要存储在Elasticsearch中,比如哪些字段需要文本补全。您需要构建一个组件,用于在Elasticsearch和您的MySQL数据库之间同步数据视图。
https://stackoverflow.com/questions/56065490
复制相似问题