在 Azure 表存储中存储应用程序日志的策略

2024-05-20

我要确定一个在 Azure 表存储中存储日志信息的好策略。我有以下内容:

分区键:日志的名称。

RowKey:反转日期时间刻度,

这里唯一的问题是分区可能会变得非常大(数百万个实体)并且大小会随着时间的推移而增加。

但话虽这么说,正在执行的查询类型将始终包括PartitionKey(不扫描)和RowKey过滤(小扫描)。

例如(用自然语言):

where `PartitionKey` = "MyApiLogs" and
where `RowKey` is between "01-01-15 12:00" and "01-01-15 13:00"

前提是查询在两者上完成PartitionKey and RowKey,我明白分区的大小并不重要。


看看我们的新表设计模式指南 http://azure.microsoft.com/en-us/documentation/articles/storage-table-design-guide/- 特别是日志数据反模式,因为它讨论了这种情况和替代方案。通常,当人们写入日志文件时,他们会使用 PK 日期,这会导致分区变热,因为所有写入都会写入单个分区。很多时候,Blob 最终成为日志数据的更好目的地 - 因为人们通常最终会批量处理日志 - 该指南将其作为一种选择进行讨论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Azure 表存储中存储应用程序日志的策略 的相关文章

随机推荐