В качестве инструментов для сбора метрик ADCC использует встроенную утилиту gpperfmon и расширение gpADCC. Собранные ими данные поступают агентам — специальным приложениям, установленным на каждом сегмент-хосте, занимающимся передачей метрик на сервер ADCC для последующего сохранения их в сервисной базе данных (PostgreSQL) и отображения в Web-интерфейсе системы.
До версии 3.0 Web-сервер, который развертывался в единственном экземпляре, занимался как сбором и агрегацией метрик на серверной стороне, так и обработкой пользовательских запросов из UI, что негативно сказывалось на масштабируемости и производительности системы в целом, делая ее не приспособленной к высоким нагрузкам.
По сравнению с предыдущими версиями системы, в ADCC 3.0 решены проблемы производительности и корректности работы пользовательского интерфейса, а также произведено улучшение масштабируемости системы. Этого удалось достичь за счет ряда изменений на уровне архитектуры, включая новый горизонтально масштабируемый сервис для обработки и агрегации метрик, снятие с Web-сервера задач по приему метрик и их записи в базу данных, асинхронную обработку метрик за счет использования очередей и пулов потоков, фильтрацию метрик, не обрабатываемых системой, балансировку нагрузки и др.
«Мы разработали систему, которая не только решает проблемы производительности и масштабируемости предыдущей версии, но и способна обрабатывать значительно большие объемы данных. Благодаря этому у администраторов баз данных и аналитиков наших заказчиков появится возможность отслеживать статус выполнения запросов в режиме, максимально приближенном к реальному времени».
В дальнейших планах по развитию продукта — увеличение функционала пользовательского интерфейса, добавление новых типов метрик, повышение детализации по уже обрабатываемым метрикам и разделение хранилища метрик на холодное (с редким доступом) и горячее (с частым доступом). В перспективе будет добавлена поддержка Greenplum 7 и возможность мониторинга нескольких кластеров ADB.