我决定使用ElasticSearch作为我的搜索网站的主要数据的主要存储。它是一个NoSQL数据库,提供全文搜索和其他强大的搜索功能。ElasticSearch,用于用户和社交数据的数据存储?
将我的用户数据和社交关系存储在ElasticSearch引擎中也有用吗?或者我应该将其存储在单独的数据库中?
我决定使用ElasticSearch作为我的搜索网站的主要数据的主要存储。它是一个NoSQL数据库,提供全文搜索和其他强大的搜索功能。ElasticSearch,用于用户和社交数据的数据存储?
将我的用户数据和社交关系存储在ElasticSearch引擎中也有用吗?或者我应该将其存储在单独的数据库中?
我会说,继续并将所有的信息保存在ElasticSearch 只有如果你能以某种方式保护数据库的安全。 AFAIK,ES不支持通过身份验证,密钥等保护应用程序的任何方法。因此,如果您无法保护该数据,那么您肯定不希望将任何用户登录详细信息放在那里。
在我的应用程序中,我只阻止了对我的ES实例的端口访问。然后,我在node.js的ES上建立了一个服务层。我在进入数据层之前处理所有的身份验证。
关于ES的一件事是,更多的数据不一定会减慢查询除非您索引所有数据或查询它。如果您只需要检索这些数据,那么您可以随时获取“_source”文档。确保你有光盘空间来处理你的数据,但除此之外,我会说保存所有 - 并在你的索引和如何做策略。
感谢您的提示。我不相信ES有安全机制。我会跟随并阻止ES访问端口。谢谢! – onejigtwojig
另外,并非每个添加到Elastic Search的文档都自动编入索引?只是抓住“_source”文件就不确定你的意思。将不得不仔细看看文档.. – onejigtwojig
那么,“分析”将是一个更好的方式来说明这一点。如果您有许多需要进行文本分析的属性,那么这会降低查询速度。当您从ES检索文档时,返回的属性之一是“_source” - 其中包含整个文档。 – swatkins
是的,我看到了这个问题,但我很好奇,特别是社会和用户数据在弹性搜索数据库中是否可行。 – onejigtwojig
没有关于您的“用户数据”和“社交关系”的更多细节以及您想要如何查询或汇总数据的具体示例,除了“是的,您可以做到这一点并且它会有用” 。 – karmi
用户数据,如登录信息,密码,配置文件信息。社交数据包括关注者列表和用户关注的列表。您可以在Twitter中找到相同类型的定向关系。 – onejigtwojig