Строка-строка OpenTSDB разработана как. Я мог понять, что дизайн ключа приводит к тому, что во время записи данных возникают «горячие точки». Но, читая, если я вижу все показатели, соответствующие конкретному хосту, это приводит к чтению данных с сервера случайных областей. Итак, как это ведет к оптимизации производительности чтения. Было ли допущено допущение относительно шаблона чтения для разработки ключа.OpenTSDB Hbase RowKey design
ответ
По словам Криса Ларсена
Предположение для OpenTSDB было то, что большинство панелей и пользователи будут сосредоточены на конкретной метрики или небольшой набор метрик в данный момент времени, когда метрики агрегатов через хостов или различных тегов. Например, каково мое среднее или максимальное использование ЦП?
Выполнение запросов на нескольких серверах региона фактически является огромным преимуществом в том, что вы можете запускать запросы параллельно, например. если вы попросите «sys.cpu.busy host = web01» и «sys.if.bytes_out host = web01» ... и у вас есть несколько серверных серверов, TSD отправит эти две метрики, вероятно, на два сервера и их можно обрабатывать параллельно, вместо того, чтобы иметь в очереди HBase на одном сервере и обрабатывать их, когда поток доступен.
Дополнительно с 2,2 вы можете включить соление для ключа строки так, как сейчас. Это помогает запросам для высокопроизводительных показателей (например, большого количества хостов) путем разделения каждого метрического запроса на серверы параллельного сервера параллельно.
Эта схема эффективна для запросов временного диапазона для заданного набора серий (метрики + теги). Любой другой запрос, например получение последних значений для всех показателей, собранных данным сервером, требует полного сканирования.
Возможно ли приготовление пресета для вышеуказанных 2 показателей? не могли бы вы указать, как сделать предварительное расщепление? – karthik
С помощью prespliting я предполагаю, что вы имеете в виду, что две метрические данные находятся в разных регионах. Обычно область с метрикой назначается Hbase на основе ее строки. (Строка-строка opentsdb представляет собой комбинацию метрики, метки времени, тега-ключа и значений тега). Хотя вы можете вручную разделять области с помощью hbase-оболочки https://learnhbase.wordpress.com/2013/03/02/hbase-shell-commands/ – shubham003