我将这个问题抛给“更大的创造力”,以获取有关可能解决此问题的搜索方法的一些建议。我想出了一个有些人为的例子来试图很好地解释这个问题,以便推荐一些解决方案。
问题:我们使用的是关系数据库(MSSQL),需要搜索具有以下约束的产品:
- 可用性
- 市场
- 价格
我们还需要对 - 价格 - 市场 - 更大的实体汇总进行分组和排序
让我看看我是否可以使用半现实世界的实体来解释:
考虑一个允许用户搜索他们可以预订的酒店房间的应用程序。以下条件可能可用于搜索: - 客房预订天数 - 他们想要酒店客房的市场(纽约市、波士顿等) - 酒店客房可能拥有的设施(热门)浴缸,壁炉 - 床数 - 套房与否
在所有情况下,可能会或可能不会选择上述搜索条件。因此,可以进行非常广泛的搜索(在这些日期,不关心哪个市场)或不同程度的特异性(在纽约市,2 张床,带壁炉)。
为了增加复杂性,我们还需要返回所选标准的酒店房间价格。显然,特殊定价,不同住宿天数的不同价格(周四晚上一个价格,周末住宿周五和周六晚上不同的价格)。
我们玩过的一些事情是: - Solr - Endeca - SQL 查询 - 在 C# 代码中实现并在必要时/在必要时进行优化(想想装饰器模式)
我在这里寻找的是来自社区的一些建议 - 以上哪个不适合这个问题 - 哪个可能非常适合这个问题 - 哪些其他技术可能会更好,我们没有考虑过 - 技术其他人在类似问题上使用的效果很好(非技术特定)
提前感谢您的任何想法或建议。我将尝试对这个问题应用适当的标签,但我是开放的,可以添加/删除以帮助获得正确的大脑。