查询Azure表存储中的非分区和非行键

时间:2017-03-08 21:29:18

标签: azure azure-table-storage azure-tablequery

我的表结构有一个分区键,行键和一个包含JSON数据的列。我想基于分区键和JSON数据中的特定值来查询表。

示例JSON数据:

filter {
    mutate {
    add_field => {
        # Create a new field with string value of the UTC event date
        "timestamp_extract" => "%{@timestamp}"
    }
    }

    date {
    # Parse UTC string value and convert it to my timezone into a new field
    match => [ "timestamp_extract", "yyyy-MM-dd HH:mm:ss Z" ]
    timezone => "Europe/Rome"
    locale => "en"
    remove_field => [ "timestamp_extract" ]
    target => "timestamp_europe"
    }
}

我创建的查询是

{"ConsumerId":"7","value01":"850.58"}

但它没有给我预期的结果。任何人都可以帮我正确查询吗?

1 个答案:

答案 0 :(得分:2)

不幸的是,表存储不支持像StartsWith这样的通配符匹配。 (见Divs being added not being placed properly.

您可以考虑将{"ConsumerId":"value",用作ConsumerId,作为不等式匹配器 - 但这仅在您的JSON数据始终以[list1.pop(list1.index(i)) for i in list1 if i in list2]

开头时才有效

更好的是 - 添加list1作为附加字段,或者重新考虑分区和行键结构以使用包含消费者ID的复合键,这也应该有助于提高性能。