我们仍然决定在Azure VM或Azure搜索服务上使用ElasticSearch作为我们的搜索存储库。但是,对于用户帐户等,是否需要创建单独的数据库(在SQL Azure中,甚至是另一个noSQL数据库)?
答案 0 :(得分:1)
不,我们无需为Azure搜索(或Azure VM上的ElasticSearch)创建单独的数据库帐户。 Azure搜索是一种基于REST API的服务,您可以将数据推送到索引状态"此时它也可通过此REST API进行搜索。您可能需要一个SQL帐户的唯一时间是使用我们的新索引器,它将自动从Azure VM数据库中的Azure SQL或SQL Server将数据(和数据更改)提取到Azure搜索中。
答案 1 :(得分:0)
我认为您要问的是,您是否可以将Elasticsearch / Azure Search用作应用程序中所有内容的主要商店,而不仅仅是可搜索的数据。
你当然可以做到。您需要记住以下几个方面(我确定除此之外还有其他方面):
持久性:当搜索索引只是一个索引时,有时可以在没有副本或只有1个副本的情况下运行。如果你想要强大的持久性,你可能需要至少3份索引副本,以确保索引损坏的可用性和弹性以及类似的东西。
一致性。 Elasticsearch具有弱一致性模型,该模型也在Azure搜索中出现。你需要编写你的应用程序考虑到这个事实,这可能会使一些场景变得棘手。 SQL和DocumentDB等其他商店提供了严格一致性的选项,这对于主存储更容易使用。