在Azure CosmosDB Cassandra API中设置读取操作的一致性级别

时间:2019-06-17 07:32:45

标签: java azure-cosmosdb azure-cosmosdb-sqlapi azure-cosmosdb-cassandra-api

我正在编写一个Java应用程序,该应用程序连接到Microsoft Azure CosmosDB中的Cassandra数据库。根据{{​​3}}上的文档页面,cosmosdb可以选择设置读取操作的一致性级别。但是,我无法找到将SQL API用于cassandra时如何执行此操作的示例。 我正在扩展Microsoft在https://docs.microsoft.com/en-us/azure/cosmos-db/how-to-manage-consistency提供的示例。该示例使用datastax驱动程序cassandra。

是否可以使用此驱动程序设置一致性级别?

1 个答案:

答案 0 :(得分:0)

在您提供的source code中找不到有关一致性设置的任何信息。实际上,Azure Cosmos DB的Cassandra API一致性级别的机制不同于其他cosmos db api(例如SQL api,Gremlin api等)。 )

请阅读此link中的声明。

使用Azure Cosmos DB的Cassandra API时:

  • Apache Cassandra的写入一致性级别已映射到 在您的Azure Cosmos帐户上配置的默认一致性级别。
  • Azure Cosmos DB将动态映射读取一致性级别 由Cassandra客户端驱动程序指定给Azure Cosmos之一 根据读取请求动态配置的数据库一致性级别。

因此,根据我的理解,cosmos db的一致性不会干扰驱动程序的原始一致性设置,而是根据下表进行映射:

enter image description here

您可以参考此link设置与DataStax驱动程序的一致性。