Индексация OpenTSDB по ключам

Когда я работал в своем личном лабораторном экземпляре OpenTSDB, я начал задаваться вопросом, можно ли заставить его индексировать теги, а также имена метрик. Насколько я понимаю (исправление приветствуется...), OpenTSDB индексирует только имена метрик. Итак, предположим, что у меня есть что-то вроде следующего, заимствованного из документов:

tsd.hbase.rpcs{type=*,host=tsd1}

Насколько я понимаю, tsd.hbase.rpcs индексируется для поиска, а ключи (type=, host= и т. д.) — нет. Это правильно? Если да, то есть ли способ индексировать их или какое-то разумное приближение к этому? Спасибо.


person Andrew    schedule 15.11.2016    source источник


Ответы (1)


Да, вы правы, согласно документации, OpenTSDB создает ключи в таблице HBase 'tsdb' формы

[salt]<metric_uid><timestamp><tagk1><tagv1>[...<tagkN><tagvN>]

Когда вы выполняете запрос с определенными тегами tagk и tagv, OpenTSDB может создать ключ и найти его. Если у вас есть диапазон tagk и tagv, он будет искать все строки и либо объединять их, либо возвращать несколько временных рядов, в зависимости от вашего запроса.

Если вы хотите задать вопросы о тегах, вы должны использовать поиск OpenTSDB. /lookup API, однако для этого по-прежнему требуется имя метрики.

Если вы хотите сформулировать свой вопрос только вокруг тегов, вы можете переслать свои данные в Bosun для индексации и использования его API

/api/metric/{tagk}/{tagv}

Возвращает метрики, доступные для указанной пары tagk/tagv. Например, вы можете увидеть, какие метрики доступны для host=server01.

person Izak Marais    schedule 16.11.2016
comment
Спасибо. Это то, что я подозревал, но я ценю подтверждение. - person Andrew; 16.11.2016