Azure 表:当实体只有一个键时如何使用分区键和行键?

dav*_*wil 5 azure azure-storage azure-table-storage

我的理解是,在 Azure 表中,每个实体都有一个由分区键行键组成的复合键,分区键应该用作实体分组的类别,行键是唯一的 id类别中的特定实体。

但是,我想存储一个只有一个简单键的极其简单的实体表,我不确定分区键行键应该为这样的实体扮演什么角色。

例如

part : { id: '00001',
         name: 'wotsit',
         weight: '50kg' }
Run Code Online (Sandbox Code Playgroud)

从语义上讲,将存储id行键并为所有实体使用相同的(可能是空白的)分区键(即它们都在相同的默认类别中)感觉最正确。但是,与表语义相比,我对获得最大查找性能更感兴趣。我可以在代码中轻松地将其抽象出来。

所以我的问题是,当实体只有一个简单键以获得最大查找性能时我应该如何使用分区键/行键

我的猜测是存储id分区键,并为每个实体使用一个空白行键,最好是在查询中首先查找分区键

hoc*_*cho 2

查看 Azure 表的一种方法是认识到实际上只有一个复合键,分为分区子键和行子键,以支持用户确定的可扩展性策略。

因此,您可以根据数据的性质决定它们的最佳扩展方式,将单个键任意拆分为 2 个子键。

在您的示例中,您可以将 id 拆分为分区键 =“00”和行键 =“001”。这在您的键范围内可能似乎没有用,但对于较长的键可能更有意义。