gpt4 book ai didi

php - 如何在预先存在的 SQL 数据库之上使用 Elastic Search?

转载 作者:IT老高 更新时间:2023-10-28 12:47:33 24 4
gpt4 key购买 nike

我已经阅读了很多关于如何使用 javascript 或 PHP 在网站上实现 Elastic Search 的优秀文档。

很好introduction to ES .

非常完整的文档herehere .

一个完整的CRUD .

使用 PHP 进行 Elasticsearch :here , here , 和 here .

所以我给你这些 URL 的原因是为了了解在拥有预先存在的 SQL DB 时如何使用这些优秀文档中的一个或多个。

我在某处遗漏了要点:正如他们所说,Elasticsearch 将使用 MongoDB 创建自己的索引和数据库,我不明白如何使用 SQL 使用我的(巨大的)数据库?假设我有一个 MySQL 数据库,我想使用 Elasticsearch 来加快我的研究速度并提出用户预先制作的查询,我该怎么做? ES 如何在 MySQL 之上/沿着 MySQL 工作?如何将这组庞大的数据(超过 8GB)传输到 ES DB 中,以便在开始时充分高效?

非常感谢

最佳答案

我正在使用 jdbc-river带mysql。它非常快。您可以将它们配置为持续轮询数据,或使用一次性(一次性策略)导入。

例如

curl -xPUT http://es-server:9200/_river/my_river/_meta -d '
{
"type" : "jdbc",
"jdbc" : {
"strategy" : "simple",
"poll" : "5s",
"scale" : 0,
"autocommit" : false,
"fetchsize" : 10,
"max_rows" : 0,
"max_retries" : 3,
"max_retries_wait" : "10s",
"driver" : "com.mysql.jdbc.Driver",
"url" : "jdbc:mysql://mysql-server:3306/mydb",
"user" : "root",
"password" : "password*",
"sql" : "select c.id, c.brandCode, c.companyCode from category c"
},
"index" : {
"index" : "mainIndex",
"type" : "category",
"bulk_size" : 30,
"max_bulk_requests" : 100,
"index_settings" : null,
"type_mapping" : null,
"versioning" : false,
"acknowledge" : false
}
}'

关于php - 如何在预先存在的 SQL 数据库之上使用 Elastic Search?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17856457/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com