gpt4 book ai didi

azure - 查询RowKey EndsWith()在哪里?

转载 作者:行者123 更新时间:2023-12-03 01:51:48 42 4
gpt4 key购买 nike

我有一个存储表,它是关注另一个特定用户的用户的索引。为此,我将 PartitionKey 设置为所关注用户的 ID,将 RowKey 设置为他们关注的日期的刻度,按照 this post 上的指南,并附加以下用户的 ID。这很好用。这是一个示例。

// FollowerIndex
PartitionKey RowKey
56138dad-e2db-43ac-8ffe-eac4846bf01a 2519471107153765942_31d4d0e5-2e48-489f-99fd-ead58a5fd480
56138dad-e2db-43ac-8ffe-eac4846bf01a 2519471107153765942_32fd17ec-fac2-44f8-986e-4e1fc8a05751
56138dad-e2db-43ac-8ffe-eac4846bf01a 2519471107153765942_f9816107-23ea-4ed7-a900-7465c0d10f50
f9816107-23ea-4ed7-a900-7465c0d10f50 2519471107153789651_32fd17ec-fac2-44f8-986e-4e1fc8a05751

我现在的问题是,我需要查找一个给定的用户 ID 是否是另一个给定的用户 ID 的关注者。为此,我希望有一个可以使用的 EndsWith 查询,以便我可以使用点查询来提高性能,因为可能会进行大量“跟随者检查”。看来情况并非如此。

// request.UserId = "56138dad-e2db-43ac-8ffe-eac4846bf01a";
// request.FollowerUserId = "31d4d0e5-2e48-489f-99fd-ead58a5fd480";

var query = TableQuery.CombineFilters(
TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equals, request.UserId),
TableOperators.And,
TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.???, request.FollowerUserId)
);

我正在考虑添加第二个无序索引,其中包含 RowKey 作为仅用于查找的以下用户的 ID。有没有办法实现我最初的意图,或者有两个索引会更好(在性能和可扩展性方面)?

感谢任何帮助。

最佳答案

为了在 Azure TableStorage 上存储图形关系,有一个名为 AzureGraphStore 的简洁扩展。它创造了奇迹。

它基本上存储与不同的 PK/RK 对重复的信息,因此您可以轻松地进行查询,例如:谁在关注 X? Y 跟随谁? A 是否关注 B?

它可能会完全解决你的问题:)

关于azure - 查询RowKey EndsWith()在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35480879/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com