gpt4 book ai didi

mysql - 使用 NodeJS 上的 ElasticSearch 提高应用程序性能

转载 作者:太空宇宙 更新时间:2023-11-03 11:52:02 24 4
gpt4 key购买 nike

我没有找到我要找的东西,也没有人解释我,所以我在这里问。希望这不是重复的……

我有一个在 NodeJS 上运行的应用程序,带有 ORM sequelize 和一个 MySQL 数据库。该项目在一年前开始。

我现在想提高性能等,安装 ElasticSearch。但我不确定我是否可以。

我可以只告诉我的弹性服务器我的数据库在哪里,神奇的是,它单独进行映射吗?或者我必须在 elasticSearch 上插入我的数据吗?

我所有的基础设施都托管在 AWS 上,我使用的是 RDS。可能会有帮助吗?事实上,我不知道将 elasticSearch 层放在哪里?你有什么想法可以帮助我。

因为,我已经使用过 Symfony 和 FosElasticaBundle,但它工作得很好,我不知道如何。

最佳答案

更新:

  • 你可以使用 ES http api
  • 您数据库中的现有数据可以批量索引吗
  • 您必须处理数据库中的更改,因此您可以使用观察模式,例如 created()、saved()、deleted(),因此您可以在这些方法中处理创建、更新或删除的 ES 操作一份文件

Elasticsearch (ES) 是一台具有多种可能性(高级查询、统计等)的速度机器,而不是数据库(阅读此处的原因:https://www.elastic.co/blog/found-elasticsearch-as-nosql)。

  • 它是分布式的(可以通过多个服务器工作/共享工作)
  • 它是基于文档的(json 文档,例如具有嵌套的父/子关系)
  • 它是基于映射的
  • 它是基于索引的

更多信息:https://www.elastic.co/products/elasticsearch

您可以在 ES 中使用类型(就像数据库中的表)。

ES 基于映射使用索引数据。因此,您仍然需要一个数据库并将数据(非规范化)索引到 ES。您可以查询、过滤、聚合、分析索引中的数据。

关于mysql - 使用 NodeJS 上的 ElasticSearch 提高应用程序性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35021832/

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