0

我们仍在决定在 Azure VM 或 Azure 搜索服务上使用 ElasticSearch 作为我们的搜索存储库。但是,对于用户帐户等,是否需要创建一个单独的数据库(在 SQL Azure 甚至另一个 noSQL 数据库中)?

4

2 回答 2

1

不,无需创建单独的数据库帐户即可使用 Azure 搜索(或 Azure VM 上的 ElasticSearch)。Azure 搜索是一种基于 REST API 的服务,您可以将数据推送到“索引”,此时它变得可搜索,也可以通过此 REST API。我能想到的唯一可能需要 SQL 帐户的情况是使用我们的新索引器,该索引器会自动从 Azure SQL 或 Azure VM 数据库上的 SQL Server 将数据(和数据更改)摄取到 Azure 搜索中。

于 2015-03-12T00:42:52.200 回答
0

我认为您要问的是您是否可以使用 Elasticsearch/Azure Search 作为应用程序中所有内容的主要存储,而不仅仅是可搜索的数据。

你当然可以做到。您需要记住几个方面(我相信除此之外还有其他方面):

  1. 持久性:当搜索索引只是一个索引时,有时可以在没有副本或只有 1 个副本的情况下运行。如果您想要强大的持久性,您可能需要至少 3 个索引副本,以确保索引损坏和类似情况的可用性和弹性。

  2. 一致性。Elasticsearch 有一个弱一致性模型,它也出现在 Azure 搜索中。您需要在编写应用程序时考虑到这一事实,这会使某些场景变得棘手。SQL 和 DocumentDB 等其他存储提供了严格一致性的选项,这对于主存储来说更容易使用。

于 2015-03-12T17:07:03.743 回答