【发布时间】:2013-07-25 06:05:39
【问题描述】:
我已经阅读了很多关于如何使用 javascript 或 PHP 在网站上实现 Elastic Search 的优秀文档。
整个CRUD。
使用 PHP 进行弹性搜索:here、here 和 here。
因此,我给您提供这些 URL 的原因是为了了解在拥有预先存在的 SQL DB 时如何使用这些优秀文档中的一个或多个。
我在某处遗漏了要点:正如他们所说,Elasticsearch 将使用 MongoDB 创建自己的索引和数据库,我不明白如何使用 SQL 使用我的(巨大的)数据库?假设我有一个 MySQL 数据库,我想使用 Elasticsearch 来加快我的研究速度并提出用户预先制作的查询,我该怎么做? ES 如何在 MySQL 之上/沿着 MySQL 工作?如何将这组庞大的数据(超过 8GB)传输到 ES DB 中,以便在开始时充分高效?
非常感谢
【问题讨论】:
-
将 elasticsearch 想象成另一个数据库,它是一个基于文档的 NoSQL 数据库(如 MongoDB),针对搜索进行了优化。您必须将所有数据索引到 elasticsearch 才能使用它。
-
所以你的意思是我必须将我在实际数据库中的所有信息都转移到 ES'NoSQL 数据库中?那么每次我在我的 SQL DB 中添加一些东西时,我都必须复制到 ES 的 DB 中?
-
有一些技术可以使它们保持同步。查找河流。您只需要导入您可能实际用于搜索的信息,因此可能不是每个字段。想想它如何能够在不以某种方式重新排列数据的情况下比 SQL 更快地进行搜索?如果不需要这样做,那么 mySQL 数据库人员肯定会实现一些东西!
-
谢谢,非常有帮助。
-
大多数人使用 elasticsearch 的方式是使用库、用于 php 的 elastica、用于 ruby 的轮胎等...这些通常有一些方法可以轻松维护基于其他数据存储的 elasticsearch 索引.有些人使用 elasticsearch 作为他们的主要数据存储,我会留给你阅读,但我得到的印象是它还不够成熟,无法做到这一点。
标签: php javascript sql json elasticsearch