一尘不染

如何通过BookSleeve搜索Redis中的内容值

redis

我想在内容中使用redis搜索,这样可能吗?

例如 :

class Post          
{
    public string Id { get; set; }

    public string Content { get; set; }

    public bool Deleted { get; set; }
}

我使用c#和BookSleeve,如果帖子的“已删除”属性为false,我想在帖子的“内容”属性中搜索一个单词,我可以使用HSET并序列化此对象以存储在redis或SADD或…中。

1-存储该对象的最佳方法是什么?2-搜索和筛选对象以退货的最佳方法是什么?

[更新]

我可以使用SISMEMBER在redis中搜索确切的单词或短语,但我想搜索像KEYS模式这样的值

[更新]

stackexchange whit redis如何?

[更新]

非常感谢Marc Gravell,我为ElasticSearch找到了NEST。但是我没有意识到Redis和ElasticSearch
之间的关系。我将建立一个社交网络,想知道您是否应该使用Redis的某些部分以及ElasticSearch的某些部分,或者将它们组合使用。我在项目的哪一部分使用Redis,ElasticSearch的哪些部分以及应该使用的哪些部分结合使用。

谢谢


阅读 275

收藏
2020-06-20

共1个答案

一尘不染

可以使用SCAN来做到这一点,但我不建议这样做。Redis是一个键/值存储,您应该为此使用它。如果要搜索文本,则应使用为其创建的另一个数据库,例如,用于长文本的ElasticSearch或用于短文本的MongoDB或经典RDBMS。

NoSQL背后的想法是使用正确的工具来完成这项工作,因此将redis用作键/值存储主要用于在另一个DB中缓存数据和搜索文本。

2020-06-20