2015-09-03 1 views
0

У меня есть распределенная система мониторинга, которая собирает и собирает данные мониторинга, такие как использование ЦП, показатели производительности базы данных, производительность сети в бэкэнд-магазине. Другие приложения должны потреблять эти данные, такие как вычисление в реальном времени (для планировщика ресурсов), для системного мониторинга (для системного администратора с помощью панели мониторинга мониторинга), для исторической аналитики (для работы и анализатора для моделирования ресурса с использованием шаблона для планирования будущей емкости и анализ активности бизнес-системы).Couchbase или VoltDB для миллиарда хранения и анализа данных мониторинга?

Размер данных составляет около 1,2 млрд. Записей в хранилище данных в течение 9 месяцев. (все в формате OpenTSDB)

Раньше я использовал кластер Elasticsearch в качестве хранилища данных для хранилища данных и решил найти лучший.

Я смотрю кластер Couchbase или VoltDB, но все еще находится на стадии расследования, поэтому вам нужно внести какой-то вклад, имеющий аналогичный опыт.

Основные вопросы, как показано ниже:

  1. Какой бэкенд магазин решение хорошо для моего сценария? (Couchbase или VoltDB)?

  2. Мне нужно переписать код агрегатора данных (который находится в golang). Couchbase обеспечивает хороший клиент SDK golang, но драйвер VoltDB работает только на уровне сообщества с ограниченными функциями. Итак, есть ли лучшая реализация для общения с voltdb в golang?

  3. Любое предложение или передовая практика?

+0

Можете ли вы дать дополнительную информацию о том, как часто может быть использовано потребление данных? Couchbase, безусловно, не отстает от записи в этом сценарии. Для чтения это будет зависеть от моделирования данных и какого из трех способов доступа к данным, которые вам нужны, и от каких характеристик вы должны использовать эту БД. – Kirk

+0

Спасибо Кирк. Интервал, который собирает данные из целевого узла и служб, работающих на нем, составляет от 30 с (мин) до 5 мин (макс.). Наш контрольный интервал мониторинга монитора настраивается в течение времени работы. – nntp

+0

Мы используем модель данных OpenTSDB и добавляем в нее некоторые наши специфические метрики. (скажем, настраиваемая модель OpenTSDB).Особенность Couchbase View - это то, что привлекло меня, чтобы я мог создавать разные представления по собранным данным и анализировать их по-разному. Все, что касается меня, - это использовать кластер Couchbase, поскольку бэкэнд системы мониторинга является правильным способом или нет. Знаете ли вы какие-либо случаи использования couchbase, которые действительно произошли таким образом? Благодарю. – nntp

ответ

1

Здесь не слишком много способов использования, но это похоже на то, как люди используют приложение VoltDB.

Что касается клиента Golang, мы хотели бы получить некоторые отзывы о том, как сделать его более подходящим, если он специально не хватает чего-то, что вам нужно. Вы также можете использовать интерфейс запросов HTTP/JSON с любого языка, включая Golang. Подробнее об этом здесь: http://docs.voltdb.com/UsingVoltDB/ProgLangJson.php

0

Если вы хотите использовать существующую модель, взгляните на Axibase Time-Series Database. Он поддерживает как tcollector сеть, так и протоколы HTTP. Встроенный движок и визуализация.

Тот факт, что ATSD основан на HBase может быть активом или пассивом в зависимости от вашего предыдущего опыта работы с ним :)

URL в tcollector integation: http://axibase.com/products/axibase-time-series-database/writing-data/tcollector/

Раскрытие информации: Я работаю для компании, разрабатывающей ATSD.