Size: a a a

2020 March 15

A

Anton in pro.cxx
Vyacheslav Olkhovchenkov
а чего же mini-? тут полноразмерный кликхауз и есть и не стоит его переписывать. или мешает фатальный недостаток?
Пока не знаю. Я не спешил соглашаться и получать ТЗ. Сложилось ощущение, что есть фатальный недостаток...
источник

KS

Kepler’s Supernova in pro.cxx
Anton
Добрый день.
Нуждаюсь в помощи с оценкой задачи.
У предполагаемого заказчика возникла необходимость в реализации собственной высокопроизводительной проблемно-ориентированной СУБД.
Сценарий: быстрое логирование метаданных сетевого трафика (shallow packet inspection - без разбора прикладных протоколов; информация только транспортного уровня) на скоростях 10Gb/s (ожидаются миллионы пакетов в секунду), индексация. Исполнение "простых" (примеров и уточнений нет) sql-запросов. Платформы: встраиваемые системы и сетевое оборудование - маршрутизаторы, сетевые экраны (linux).
Проще говоря - "мини-clickhouse".
Хотелось бы услышать мнение специалистов, имевших подобный опыт. Насколько задача трудоёмка, какие в ней выделяются вехи, какие компетенции надо освоить? Как вообще решаются задачи построения СУБД для таких сценариев?
курите DPDK, AF_XDP
источник

A

Anton in pro.cxx
Kepler’s Supernova
курите DPDK, AF_XDP
Вопрос не к сетевой части.
источник

A

Anton in pro.cxx
Vyacheslav Olkhovchenkov
а чего же mini-? тут полноразмерный кликхауз и есть и не стоит его переписывать. или мешает фатальный недостаток?
По крайней мере заказчик про clickhouse в курсе и наверняка были попытки его использования. Речь шла о самописной СУБД.
источник

IZ

Ilia Zviagin in pro.cxx
Anton
Добрый день.
Нуждаюсь в помощи с оценкой задачи.
У предполагаемого заказчика возникла необходимость в реализации собственной высокопроизводительной проблемно-ориентированной СУБД.
Сценарий: быстрое логирование метаданных сетевого трафика (shallow packet inspection - без разбора прикладных протоколов; информация только транспортного уровня) на скоростях 10Gb/s (ожидаются миллионы пакетов в секунду), индексация. Исполнение "простых" (примеров и уточнений нет) sql-запросов. Платформы: встраиваемые системы и сетевое оборудование - маршрутизаторы, сетевые экраны (linux).
Проще говоря - "мини-clickhouse".
Хотелось бы услышать мнение специалистов, имевших подобный опыт. Насколько задача трудоёмка, какие в ней выделяются вехи, какие компетенции надо освоить? Как вообще решаются задачи построения СУБД для таких сценариев?
Ну, задача трудоёмкая, и начать надо с постановки задачи, очень детально.

Но каких оценок трудоемкости ты ждёшь?
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
я не вижу тут принципиально (на десятичный порядок и больше) меньшей нагрузки/объема данных, по сравнению с тем что идет в типичный кликхауз
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
т.е. один хрен будут диски, кеши и вот это вот все, что уже есть в кликхаусе
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
in-memory не отделаешься
источник

AD

Andrey Davydov in pro.cxx
Dmitry Sokolov
Во, вот чем оно отличается, array позволяет делать инициализацию в виде {{{},{}, ...}}. А после наследования только {T{},T{}, ...}}.
просто добавь еще фигурных скобок :)
struct X : std::array<int, 5> {};
std::array<int, 5> a {{{}, {}, {}}};
X x {{{{}, {}, {}}}};

(https://gcc.godbolt.org/z/mFwUYQ
источник

IZ

Ilia Zviagin in pro.cxx
Anton
Пока не знаю. Я не спешил соглашаться и получать ТЗ. Сложилось ощущение, что есть фатальный недостаток...
Клик Хауз не пойдет кстати, это колодочный СУБД, они в OLTP не умеют почти
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
а чего бы тут oltp?
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
может тут как раз агрегаты.
источник

IZ

Ilia Zviagin in pro.cxx
Vyacheslav Olkhovchenkov
а чего бы тут oltp?
Запись с большой скоростью - это олтп
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
кликхаус умеет писать с большой скоростью, но он не oltp
источник

IZ

Ilia Zviagin in pro.cxx
Vyacheslav Olkhovchenkov
а чего бы тут oltp?
Хотя конечно ты прав, олтп ли оно - ещё большой вопрос
источник

DS

Dmitry Sokolov in pro.cxx
Andrey Davydov
просто добавь еще фигурных скобок :)
struct X : std::array<int, 5> {};
std::array<int, 5> a {{{}, {}, {}}};
X x {{{{}, {}, {}}}};

(https://gcc.godbolt.org/z/mFwUYQ
Точно, надо ж базу выделить! :) Спасибо!
источник

IZ

Ilia Zviagin in pro.cxx
Vyacheslav Olkhovchenkov
кликхаус умеет писать с большой скоростью, но он не oltp
Пачками, да. Но не индивидуально
источник

IZ

Ilia Zviagin in pro.cxx
Anton
Добрый день.
Нуждаюсь в помощи с оценкой задачи.
У предполагаемого заказчика возникла необходимость в реализации собственной высокопроизводительной проблемно-ориентированной СУБД.
Сценарий: быстрое логирование метаданных сетевого трафика (shallow packet inspection - без разбора прикладных протоколов; информация только транспортного уровня) на скоростях 10Gb/s (ожидаются миллионы пакетов в секунду), индексация. Исполнение "простых" (примеров и уточнений нет) sql-запросов. Платформы: встраиваемые системы и сетевое оборудование - маршрутизаторы, сетевые экраны (linux).
Проще говоря - "мини-clickhouse".
Хотелось бы услышать мнение специалистов, имевших подобный опыт. Насколько задача трудоёмка, какие в ней выделяются вехи, какие компетенции надо освоить? Как вообще решаются задачи построения СУБД для таких сценариев?
Короче, Антон, кроме того что это сложно трудоёмко и муторно, тебе на таком уровне сказать пока нечего
источник

A

Anton in pro.cxx
Ilia Zviagin
Короче, Антон, кроме того что это сложно трудоёмко и муторно, тебе на таком уровне сказать пока нечего
Мне квалификации не хватает для нормальной конкретизации. Потому и не стал браться сразу. Но звучит чертовски интересно даже как идея для хобби-проекта.
Так вот: хотел я услышать рассказ "в крупном масштабе" о том, как такие задачи решаются.
источник

KS

Kepler’s Supernova in pro.cxx
Еще не обязательно делать анализ online, можно разделить траффик через оптические сплиттеры и буфферизовать его на большом железе не тормозя коммутацию, NAT и фаервол
источник