Открыты исходные тексты СУБД TrailDB
Модель хранения данных в TrailDB предоставляет возможность сохранения в БД произвольного набора групп (trail), к которым привязываются наступающие события. Каждая группа идентифицируется 128-разрядным UUID и включает упорядоченную информацию о последовательности событий и времени их наступления. Каждое событие включает в себя UUID группы, время наступления и предопределённый набор полей (формат схемы полей задаётся заранее). Предоставляются операции слияния разных БД, шардинга и перестроения групп, а также очень быстрые операции с курсором и средства для фильтрации событий (например, "action=page_view AND (page=pricing OR page=about)").
Из задач, которые легко решаются в TrailDB, но слишком усложнены для реляционных СУБД, отмечается отслеживание цепочек действий и предпочтений пользователя. Например, имеются данные, что пользователь зашёл на сайт, посмотрел страницу о продукте, после чего открыл прайс и спустя час после первого события зарегистрировался в сервисе. При помощи TrailDB не составит труда проанализировать число пользователей, которые зарегистрировались менее, чем за час после первого входа.
Другие особенности:
- Высокая производительность и надёжность. На одном процессорном ядре могут обрабатываться миллионы событий в секунду. С 2014 года в сети AdRoll при помощи TrailDB сохранено и обработано более 20 триллионов событий. Покрытие автоматизированным тестовым набором составляет более 90%;
- Основные области применения: вычисление метрик (например, интенсивность отказов), анализ моделей использования, визуализация статистики, выявление аномалий, обобщение данных о предпочтениях и прогнозирование поведения пользователя;
- Простой API. Наличие биндингов для языков C++, Python, R, D, Go и Haskell;
- Возможность хранения данных в сжатом виде. При этом обеспечена поддержка прямых запросов сжатых данных с распаковыванием только необходимых частей;
Источник: http://www.opennet.ru/opennews/art.shtml?num=44487
|
0 | Tweet | Нравится |
|