mirror of https://github.com/apache/druid.git
56 lines
1.8 KiB
Markdown
56 lines
1.8 KiB
Markdown
|
Segment metadata queries return per segment information about:
|
||
|
\* Cardinality of all columns in the segment
|
||
|
\* Estimated byte size for the segment columns in TSV format
|
||
|
\* Interval the segment covers
|
||
|
\* Column type of all the columns in the segment
|
||
|
\* Estimated total segment byte size in TSV format
|
||
|
\* Segment id
|
||
|
|
||
|
<code>{
|
||
|
"queryType":"segmentMetadata",
|
||
|
"dataSource":"sample_datasource",
|
||
|
"intervals":["2013-01-01/2014-01-01"],
|
||
|
}
|
||
|
</code>
|
||
|
|
||
|
There are several main parts to a segment metadata query:
|
||
|
|
||
|
|property|description|required?|
|
||
|
|--------|-----------|---------|
|
||
|
|queryType|This String should always be “segmentMetadata”; this is the first thing Druid looks at to figure out how to interpret the query|yes|
|
||
|
|dataSource|A String defining the data source to query, very similar to a table in a relational database|yes|
|
||
|
|intervals|A JSON Object representing ISO-8601 Intervals. This defines the time ranges to run the query over.|yes|
|
||
|
|merge|Merge all individual segment metadata results into a single result|no|
|
||
|
|context|An additional JSON Object which can be used to specify certain flags.|no|
|
||
|
|
||
|
The format of the result is:
|
||
|
|
||
|
<code>[ {
|
||
|
"id" : "some_id",
|
||
|
"intervals" : [ "2013-05-13T00:00:00.000Z/2013-05-14T00:00:00.000Z" ],
|
||
|
"columns" : {
|
||
|
"__time" : {
|
||
|
"type" : "LONG",
|
||
|
"size" : 407240380,
|
||
|
"cardinality" : null
|
||
|
},
|
||
|
"dim1" : {
|
||
|
"type" : "STRING",
|
||
|
"size" : 100000,
|
||
|
"cardinality" : 1944
|
||
|
},
|
||
|
"dim2" : {
|
||
|
"type" : "STRING",
|
||
|
"size" : 100000,
|
||
|
"cardinality" : 1504
|
||
|
},
|
||
|
"metric1" : {
|
||
|
"type" : "FLOAT",
|
||
|
"size" : 100000,
|
||
|
"cardinality" : null
|
||
|
}
|
||
|
},
|
||
|
"size" : 300000
|
||
|
} ]
|
||
|
</code>
|