Some questions regarding the performance and use of bag_unpack in Kusto:
- How performant is using
bag_unpackover a large data set on a column where all the top-level properties are the same (so each row has a dynamic bag with the same property name so each resulting column from the bag unpack would have a value)? - How performant is using
bag_unpackover a large data set on a column where the top-level properties are not all the same, so not garaunteed to have the same top-level properties (so there will be some rows where the unpacked columns have empty/no value)? - Does bag_unpack use any methods that are considered slow in terms of
performance like
extract_json()orparse_json(), or is it much quicker than those methods?
Given the following two examples, which is more optimized or would execute faster for a large dataset? (or would they be about the same?):
//#1
datatable(d:dynamic)
[
dynamic({"Name": "John", "Age":20}),
dynamic({"Name": "Dave", "Age":40}),
dynamic({"Name": "Jasmine", "Age":30}),
]
| evaluate bag_unpack(d)
//#2
datatable(d:dynamic)
[
dynamic({"Name": "John", "Age":20}),
dynamic({"Name": "Dave", "Age":40}),
dynamic({"Name": "Jasmine", "Age":30}),
]
| project Age = d.Age, Name = d.Name