代码之家  ›  专栏  ›  技术社区  ›  K20GH

用基于文档的数据存储实现复杂搜索的最佳方法

  •  0
  • K20GH  · 技术社区  · 7 年前

    这不是一个与代码本身直接相关的问题,而是一个更接近实现某种东西的最佳方式的问题。

    { 
      "name": "Handmade Wooden Engraved Dog Bowl",
      "tags": ["wooden", "handmade", "engraved", "pet", "dog", "bowl"],
      "item": {
        id1: {
          "name": "Handmade Dog Bowl",
          "website": "amazon",
          "active": true,
          },
        id2: {
          "name": "Handmade Wooden Dog Bowl",
          "website": "etsy",
          "active": false,
          }
      }
    }
    

    我需要能够搜索产品的名称、产品标签,以及每个项目中的数据。

    例如,显示标签包含的所有产品 engraved dog bowl handmade 在哪里 etsy = false

    这里的问题是,每个用户平均有2000个产品,我们可以看看2000个用户,这就排除了Algolia这样的产品,因为它的成本非常高。

    有人对我如何在不让地球付出代价的情况下解决这个搜索问题有什么建议吗?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Ronnie Smith    7 年前

    你的问题是如何实现搜索算法。本文作者:Meet Zaveri Algorithms I : Searching and Sorting algorithms 很好地介绍了这些想法。

    渐近符号 大的哦(O) 大欧米茄()

    空间复杂性

    二进制搜索