Доступен выпуск платформы VictoriaMetrics 1.94.0, предоставляющей СУБД для хранения и обработки данных в форме временного ряда (запись образует время и набор соответствующих этому времени значений, например, полученных через периодический опрос состояния датчиков или сбор метрик), оптимизированную для решения задач мониторинга. Проект конкурирует с такими решениями, как InfluxDB, TimescaleDB, Thanos, Cortex и Uber M3, и отличается более высокой производительностью. СУБД может использоваться в качестве долговременного хранилища данных, подключённого к Prometheus и Grafana, а также в форме прозрачной замены InfluxDB. Код написан на языке Go и распространяется под лицензией Apache 2.0...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=59875
> СУБД
> Код написан на языке GoМеня чувство некоторого диссонанса.
И что? Прометей тоже на Go.
Если это у тебя вызывает диссонанс, то почитай про Datomic или Neo4j, впадёшь в глубокую депрессию
> И что? Прометей тоже на Go.Аргумент Поехавшего #3: "ну, свиньи же жрут своё говно - ну а что?".
Так что, я не впадаю в депрессию, я пополняю список ненужного. Хотя, уже проще содержать список нужного.
У вас какая-то нездоровая зацикленность на фекалиях и их поедании.
>...Хотя, уже проще содержать список нужного.Вот это "правильное" решение, только святой Бейсик, хотя нет, добавь еще в список нужного https://scratch.mit.edu/
>ну, свиньи же жрут своё говноесли на жабке можно написать промышленную графовую субд, а на других языках нет (нет какаких вменяемых конкурентов у нео, всё поделки. не знаешь, не спорь), то скорее это сишники кюшают свой кактус, всё накюшаться не могут )
Только rrdtool, только хардкор.
>> СУБД
>> Код написан на языке Go
>
> Меня чувство некоторого диссонанса.Интервью профессиального водителя:
Работодатель: Вы можете ездить на грузовых и легковых автомобилях?
Кандидат: Грузовые у меня вызывают чувство диссонанса...
Инструмент или его использование может вызывать диссонанс. Язык программирования, это аналог не классов машин, а какой-то конкретной марки, наверное.
Автомобили с квадратными колёсами и у меня вызывают чувство глубокого диссонанса.
> Автомобили с квадратными колёсами и у меня вызывают чувство глубокого диссонанса.То ли дело треугольные!
https://etudes.ru/etudes/wheel-inventing/
Угу. Сферическая потуга академиков в вакууме от математики. Физика им не нужна.
> Интервью профессиального водителя:Работодатель: Вы можете ездить на грузовых автомобилях, сделанных из Lego?
Кандидат: ... не, ну, в шлеме и мотоэкипе можно, но если только грузовик пустой.- так точнее будет.
> ...сделанных из Lego?
> - так точнее будет.Ну очень увесиситый аргумент...
:)
А на чём ещё БД писать? На Rust долго, на Java получится медленно.
Унылое древнее типа С и С++ не беру, т.к. на этом писать в 2023 БД уже моветон. Тупо по историческим соображениями postgres на них, замена для PG - CockroachDB на Go написан. Больше не на чем писать кароч.
Clickhouse на крестах написан. Между прочим, лучший в классе column family.
Postgres, MongoDB, MS SQL, SQLite... - да всё дохипстерское сишно-плюсовое и, ЧСХ, работало, и даже быстро, и масштабировалось. Но нет, толпы адептов выученного вчера языка завалили мир пруф-концептами и завертелось...
> Postgres, MongoDB, MS SQL, SQLite...
> и масштабировалось.Остроумно.
Как и назвать монгу (влажная мечта любого JS-хипстора) дедовской, кстати.
Масштабирующийся postgres/mssql? Воу, sqlite!
Мужики-то не знали, ёлки!
Cassandra смотрит на вас с недоумением
Fixed:
Cassandra смотрит на вас с недоумением javающего ленивца.
Тогда как ScyllaDB уже и прожевала и переварила.
> Fixed:
> Cassandra смотрит на вас с недоумением javающего ленивца.
> Тогда как ScyllaDB уже и прожевала и переварила.А вот с ней как раз не работал, но отзывы от работавших - гм, противоречивые. Вплоть до того, что на реальных задачах трехлетней давности - была _медленней_
>ScyllaDB уже и прожевала и переварила.признайся, что ты только презку в паверпоинте посмотрел про сцыклу, а кассандру даже не использовал
>>ScyllaDB уже и прожевала и переварила.
> признайся, что ты только презку в паверпоинте посмотрел про сцыклу, а кассандру
> даже не использовалip -s l show eth0 кажет по ~154T принятых в каждую ноду кластера scylla в проде. А кассандру я похоронил вместе с jvm в 2013.
В общем - держи свои галлюцинации при себе.
>на Java получится медленно.весь хайлоад стек написан на жабе. маня-мирок, порвись )
кассандра, neo4j, elasticsearch.... не, не слышали )
Если нет жёстких требований к SLA, то действительно пишут на языках со сборкой мусора. А вот если есть, как в биржевой торговле и алготрейдинге, то только кресты/rust или извращения с написанием кода в garbage-free стиле на ЯП с GC. А если речь просто о хайлоаде, то всякие выстрелившие стартапы любят делиться историями успеха, как они 500К RPS держат на микросервисах на каком-нибудь Ruby, так как запихали все в кубер и поднимают под нагрузку десятки инстансов.
>в биржевой торговле и алготрейдинге,маргинальщина. это надо 0.01% от всего ИТ...
>языках со сборкой мусора
для обычного применения уже несколько ЛЕТ как нет GC с заметными не под микроскопом паузами
> для обычного применения уже несколько ЛЕТ как нет GC с заметными не под микроскопом паузамиСтранно. Последний раз буквально пару лет нарывался на проблемы с С#.
Суть проблемы была в том, что при пиковой загрузке GC не успевал освобождать память. Что ни пробовали - это приводило к заметным провалам в производительности. После переписывания на C++ на пиковой нагрузке сервис просто упирался в 100% загрузку всех ядер CPU, но не устраивал явный провал пропускной способности через миллисекунды после этого, как на C#.
>буквально пару лет нарывался на проблемы с С#.с# тут каким боком?
вообще, ты кажись не понимаешь, что чудес не бывает. маленькие паузы == меньшая ПСП. для задач где паузы не мешают, с ними никто не борется. но при желании есть платные ГЦ вообще без пауз.
ну а плюсы твои с колхозным самописным ГЦ вообще не обязательно что даже жабу с шанондой догонят.
> с# тут каким боком?Тем, что в нем нет никаких средств явно и в нужный момент освободить память занимаемую объектом. Это выполняется только GC.
> плюсы твои с колхозным самописным ГЦ
Зачем там GC? Достаточно самому выполнять delete по необходимости. Или у Вас даже в мозгу не укладывается, что можно самому управлять памятью?
Как раз в биржах (алготрейдинге и HFT) jvm достаточно популярна. Хотя практики у них там не стандартные жавовские -- без нужды память не аллоцируют, а стараются переиспользовать. Ну и некоторые извращаются с кастомными runtime engine. Rust гораздо меньше чем жавы (хотя кресты конечно наше всё). Но и на крестах никто не пишет свободно без дисциплины где половину фич C++ запрещено использовать, и правильно.Собственно, в VictoriaMetrics то же самое в коде, повсюду переиспользуемые массивы, с блокировками для мультипоточности.
А по производительности примерно одинаково всё в результате, кроме startup (на стандартном JRE без прекомпиляции) -- медленнее запускается, и минимальная память требуется больше. Но уже через минуту работы результат примерно однаковый, не зависит от языка, а зависит от того как писать.
Смотря какую БД. Как только начинается страничная организация хранения данных, так сразу Go потребует лишних копирований память-память, которых можно избежать на C/C++. Что при достаточно большом кеше становится очень болезненным.
В VictoriaMetrics все буферы стараются быть привязанными к потоку, чтобы между кешами CPU не переезжать. Это не столько к языку, сколько к тому как на нём писать.
> В тестах производительности VictoriaMetrics опережает InfluxDB
> и TimescaleDB при выполнение операций вставки и выборки данных
> до 20 раз, потребляя при этом в 10 раз меньше ОЗУ, чем InfluxDB
> и в 7 раз меньше, чем Prometheus, Thanos и Cortex при обработке
> миллионов уникальных временных рядовСильное заявление. Но в сравнении с TimescaleDB, например, разрабы VictoriaMetrics подобос*ались с конфигами оппонента , используя устаревшие данные (себя настроили как надо, кстати), затем не ответили на вопросы касательно тестирования. И так во всех трёх сравнениях. При этом называют самописный DSL преимуществом перед SQL-совместимым синтаксисом.
Подозреваю, сравнение с другими СУБД такая же проблема, раз они в своих тестах три года подряд придерживались одной стратегии, не исправляя при этом косяки за всё время. Да и оставив без ответа конструктивную критику по поводу методов тестирования. Сейчас, 3 годя спустя после последнего такого сравнения (без исправлений своих косяков) они могли ещё сильнее отстать от оппонентов, но при этом всё ещё ссылаются на устаревшие (ноябрь 2018, с тех пор было много новых релизов и VM, и оппонентов) предвзятые (только своих сотрудников) неверное построенные (обозначенные косяки не поправили) сравнения.
> Сильное заявление. Но в сравнении с TimescaleDB, например, разрабы VictoriaMetrics подобос*ались с конфигами оппонента , используя устаревшие данные (себя настроили как надо, кстати), затем не ответили на вопросы касательно тестирования.В данном случае вообще пофиг, в 20 или в 18.9 раз. Один фиг, timescale является настройкой над постгресом, который является типичным RDBMS и будет всасывать у любой более-менее нормальной TSDB со свистом.
> При этом называют самописный DSL преимуществом перед SQL-совместимым синтаксисом.
Вы, похоже, вообще с миром мониторинга не знакомы. PromQL - это как бы стандарт.
Вы ещё до сишников докопайтесь, что это они свои программы пишут на недоязычке, вместо того, чтобы использовать SQL-совместимый синтаксис.
> Вы, похоже, вообще с миром мониторинга не знакомы. PromQL - это как бы стандарт.
> timeseries
> PromQL - это как бы стандартВы, видимо, с миром разработки ПО не знакомы, Мониторинг - не единственное, где применяется timeseries. Тот же InfluxDB тут не просто так, наверное. Хоть и немножко несовременен в силу происхождения.
И часто ли Вы руками пишете PromQL-запросы? Или всё же используете API инструмента и GUI? Или у Вас шпаргалка, к который Вы раз в несколько месяцев обращаетесь, чтобы написать нормальный запрос?
В противовес могу сказать, что SQL-запросы вполне себе ежедневный момент, и тут порой быстрее накидать такой запрос, чем пытаться достать данные гуёвым путём.Но в целом ок, если Вы чисто девопс, который по какой-то нелепой причине никогда не имеете дело с РСУБД, то да, PromQL это то, что доктор прописал.
>если Вы чисто девопс, который по какой-то нелепой причине никогда не имеете дело с РСУБДну я техлид ) уже лет 10 не писал SQL, потому что выкинул все реляционки, потому что они тормозные. в целом, считаю притягивание SQL к NOSQL лютым бредом, потому что оно всё равно обрастает какими-то нестандартными командочками и перестает быть им. хотя SQL даже для КРУДа неудобный! talk to my hand!
> уже лет 10 не писал SQL, потому что выкинул все реляционки, потому что они тормозные
> хотя SQL даже для КРУДа неудобныйА где же вы храните данные? В текстовых файлах? В Mongo? Redis? Кликхаус? В словарях в памяти приложения?
А, стоп, может Вы техлид статического сайта с 5 посетителями в год, уточнений же не было.
и как это к делу относится? храню терабайты в монге, сотни гигабайт в neo4j (cypher пакость, но альтернатив нет)... то что в монге нет SQL это её огромный плюс (хоть и не единственный)
+ терабайты в эластике.... всё сразу и не вспомнишь ) там тоже sql как козе баян
Мониторинг он воообще то разный. Например, имеем данные трекинга 100 тыс. вагонов. Задача определить среднее время оборотов разгрузки и погрузки вагонов на станции за заданный период, считая как разницу по времени между первой и последней операцией на станции, и исключая случаи, когда между этими операциями возникали операции ремонта или бросания. При расчете среднего учитываем только события между 0.25 и 0.75 перцентилем. Данные трекинга не обязательно приходят в порядка возрастания времени. Например, операции перевода в нерабочий парк и обратно могут прийти с задержкой на недели, поэтому на лету не очень то посчитаешь, даже если как то придумать, как считать на лету перцентили (квантили).
Сколько я ни вкуривал PromQL, так и не придумал, как на нем такой запрос написать. Тогда как на SQL CTE и оконными функциями он пишется легко и просто.
Да, PromQL (как и VictoriaMetrics) он больше для мониторинга IT инфраструктуры. Там обычно данные через неделю уже очень-то и нужны. Зато очень нужны алёрты, дашборды и большие объёмы.Теоретически конечно можно сделать, но у каждой тулсы своя фокус-ниша. А так -- любая БД конкурирует с Excel вообще-то.
Ну, я с timescale'ом лично сравнивал. В дефолтах разница примерно на порядок, после чего желание тюнить само собой отпало.
> я с timescale'ом лично сравнивалВ 2018?
Я сравнивал в 2022 / 2023.
Разница всё так же на порядок
>> я с timescale'ом лично сравнивал
> В 2018?В 22ом. Затащил timescale\tobs - вышло вполне адекватно проекту, но по сравнению с соседями на victoriametrics разница на порядок и есть.
У нас на работе используется Вика.
И да, мы сравнивали производительность и потребление ресурсов VictoriaMetrics vs Postgres + TimescaleDB на одном и том же сервере / профиле нагрузки.
Я изначально был за PG, но связка Postgres + TimescaleDB настолько сильно тупила и жрала ресурсы, что это было даже не смешно.
Собственно, аргументы на этом у меня закончились, потому Вика )
А вот чтобы это небыло рекламой, покажите параметры обрудования, конфиги, размер данных и NVPS ?
Я легко верю, что VM производительней в виду заточенности под профиль нагрузки.
Однако, всё же когда приводят цифры, хочется понимать как тестировали, адекватно ли настроили оппонента. PostgreSQL сам по себе довольно непросто настраивается и требует определенных компетенций как в области самого ПО так и настройки ОС.
VM же, по факту, даже настраивать не нужно - просто заваливаешь её процессором, памятью, быстрым диском и всё работает. Моё любимое - зайдите в гугл и попробуйте поискать "victoriametrics performance tuning".
Как писал парень выше - тут всё просто:
Ставишь Victoria Metrics, просто запускаешь и просто всё работает.
Ставишь PG & Timescale, для начала прогоняешь минимальный тюнинг при помощи pgtune & timescaledb-tune. Получаешь отвратительный результат (работает на порядок медленнее конкурента, при этом ресурсов жрёт конкретно больше и самое печальное, даже со сжатием, потребляет катастрофически много дискового пространства) и осознаёшь, что дальнейший тюнинг возможен (точно можно сделать несколько лучше), но нецелесообразен (догнать даже незатюненную Victoria Metrics - в принципе нереально).Сносишь PG & Timescale в баню и радуешься жизни :)
> Как писал парень выше - тут всё просто:
> Ставишь Victoria Metrics, просто запускаешь и просто всё работает.
> Ставишь PG & Timescale, для начала прогоняешь минимальный тюнинг при помощи pgtune
> & timescaledb-tune. Получаешь отвратительный результат (работает на порядок медленнее
> конкурента, при этом ресурсов жрёт конкретно больше и самое печальное, даже
> со сжатием, потребляет катастрофически много дискового пространства) и осознаёшь, что
> дальнейший тюнинг возможен (точно можно сделать несколько лучше), но нецелесообразен (догнать
> даже незатюненную Victoria Metrics - в принципе нереально).
> Сносишь PG & Timescale в баню и ...... деградируешь. =)
А дальше то как? Что с ACID? Через какой FDW к ней ходить? TimeScaleDB ставят когда нужно работать с временными сериями в реляционной БД.
ACID -- это не про мониторинг, а про транзакции. В мониторинг тулзах никому ни разу ещё не понадобился ACID. Там нету как транзакций, так и вообще UPDATE в принципе.
Кто такая Виктория?
И где она живет?
(Наверное в той же общаге, что и Элис)
А вдруг она не курит, и в $&)@# не даёт...Извините (картинка со слоником из "38 попугаев".jpg) :)
Downsampling только в энтерпрайзе.
Прелесть. Не, я уж лучше дальше в rrdtool.
> Downsampling только в энтерпрайзе.
> Прелесть. Не, я уж лучше дальше в rrdtool.На Perl пишете небось?
PHP брал, C брал, Pascal брал...
Perl не брал.
Тоже как то пытались перейти на это игровое решение с самоделки на тараниуле и упёрлись в то что нет даунсемплинга, который был в подделке. Вопрос закрыли после трёх недель работы.Потом переехали на редис плюс постгрес, ну понятно что с пострадавшей гибкостью.
Я для графиков живу на MySQL в коротком отрезке - 7 дней, там сотня с фигом гигабайт получается, далее непрерывно выгружаю то, что требуется, в RRD - для быстрой отрисовки и истории.
Но у меня кейс специфичный - мне графики нужны в промышленном масштабе...
Когда она только появилась быстро отметил её как проект занимающийся восновном балобольством, сказками про большую в 9000 раз производительность.
Ничего не изменилось, вот и сейчас они снова "положили" thanos на лопатки в 7 раз одновременно и по памяти и по сжатию.
Сжатие в семь раз относительно проектов которые так же использую сжатие - это просто сказки для маленьких детей. Удивительно, как эта система каким-то образом обрасла совершенно упоротыми фанатиками сектантами, расказывающими такие же небылицы. Видимо лозунги специально заточены на аудиторию психических.
Пруфы то будут? Как воспроизвести ваши "эксперименты"? Выкладывайте семплы и скрипты как залить их в ващу ненужную поделку и в прометей? Вместо пруфов - только победы в интернете, да?
Вангую на танос в тестах всегда подается белый шум в метриках и лейблах, а в викторию постоянка. Иного варианта про 700% сжатия от сжатого и быть не может.
Еще прочитал описание... даунсемплинга нет, лол. Для чего оно тогда вообще нужно?
Еще одна система мониторинга косплеющая прометей с киллер фитчей - официально ни для чего не нужна?
> Удивительно, как эта система каким-то образом обрасла совершенно упоротыми фанатиками сектантами, расказывающими такие же небылицыыкспэрты опеннета против фанатиков из CERN
https://www.theregister.com/2023/09/18/lhc_infrastructure_mo.../
Что ты хотел сказать?
Ты читал эту статью?
Где пруфы: графики, методика воспроизведения?
Посмотрите бенчмарки с примерами воспроизведения здесь https://docs.victoriametrics.com/Articles.html#benchmarksНапример https://victoriametrics.com/blog/mimir-benchmark содержит абсолютно всё для воспроизведения. Даже полные снапшоты дашбордов во время выполнения бенчмарка.
> Посмотрите бенчмарки с примерами воспроизведения здесь
> https://docs.victoriametrics.com/Articles.html#benchmarksТебя 100 раз уже носом тыкнули в несостоятельность этих тестов, а ты их как доказательство продолжаешь использовать.
> Например https://victoriametrics.com/blog/mimir-benchmark
Разве что это хоть как-то похоже на сравнение. Но опять же - ни комментариев от разрабов Mimir, ни тестовых данных. И сама статья "сравнения" расположена внезапно на сайте виктории, что вообще ни разу не предвзято, ага.
>> Например https://victoriametrics.com/blog/mimir-benchmark
> Разве что это хоть как-то похоже на сравнение. Но опять же -
> ни комментариев от разрабов Mimir, ни тестовых данных. И сама статья
> "сравнения" расположена внезапно на сайте виктории, что вообще ни разу не
> предвзято, ага.Разрабы Мимира участвовали в бенчмарке, там же написано. И они бы у себя откомментировали быстро, если бы было что сказать. Но они понимают что это fight that you cannot win, поэтому молчат.
вас ничего не смутило в этой статье?
Вот тут ребята с вами не согласны - https://docs.victoriametrics.com/CaseStudies.html
А что у них там с ACID?
> А что у них там с ACID?А его нету :)
Нет UPDATE -- значит нет транзакций вообще. В мониторинге никому не нужен ACID.
Переехали на неё в прошлом году. Имели 80 нод кубера, прометеус умирал при таком количестве нод, а при подключении виктории все проблемы исчезли.
Сколько у нас нод не скажу, но аналогично девопсы заменили Прометеус на Викторию и ситуация существенно улучшилась.
Лучше расскажите, сколько у вас MVPS на это количество нод, а мы посмеёмся.
// NVPS
Вот тут у ребят из Roblox 120 миллионов NVPS - https://www.datanami.com/2023/05/30/why-roblox-picked-victor.../
> 120 миллионов NVPSИ ни слова о точности, потерях. Наверное 99,9% потерь, точность 4 знака до запятой и 0 после, раз не указали. А лейбл однобуквенный от ascii-таблицы. Только дата с временем, и та - с точностью только до секунд, миллисекунды отбрасываются, коллизии теряются. При таких условиях - вполне можно поверить, что у VictoriaMetrics наберётся 120 миллионов NVPS.
>> 120 миллионов NVPS
> И ни слова о точности, потерях. Наверное 99,9% потерь, точность 4 знака
> до запятой и 0 после, раз не указали. А лейбл однобуквенный
> от ascii-таблицы. Только дата с временем, и та - с точностью
> только до секунд, миллисекунды отбрасываются, коллизии теряются. При таких условиях -
> вполне можно поверить, что у VictoriaMetrics наберётся 120 миллионов NVPS.Наверное нет. Наверное длина лейблов вообще не важна, миллисекунды есть, точность норм. Наверное в Роблоксе не лаптем щи хлебают.
> Лучше расскажите, сколько у вас MVPS на это количество нод, а мы
> посмеёмся.Вы про себя расскажите.
Как вы полагаете, за счет чего достигается такой прорыв в производительности? Законы физики полагаю разработчики этого ПО не переделывали?
Ну никого же не смущает, что, например, ms sql быстрее чем postgresql работает.
Вполне могут быть разные подходы к одинаковым задачам.
Я точно не помню уже, но мне казалось что они просто взяли архитектуру кликхауса и на его основе сделали свою таймсериас дб. Но могу и врать, давно уже интересовался этим.
Когда производительность на схожих задачах отличается разительно - смущает. Возникает вопрос- за счет чего достигнут такой эффект. И начинаются оговорки...
Почему ClickHouse быстрее Postgres'а в 1000 раз, а сохраненные в ClickHouse данные занимают в 10-100 раз меньше места на диске по сравнению с ClickHouse? Наверное, разработчики ClickHouse балаболы...
> Ну никого же не смущает, что, например, ms sql быстрее чем postgresql
> работает.
> Вполне могут быть разные подходы к одинаковым задачам.
> Я точно не помню уже, но мне казалось что они просто взяли
> архитектуру кликхауса и на его основе сделали свою таймсериас дб. Но
> могу и врать, давно уже интересовался этим.Нет, из архитектуры Кликхауса там только LSM tree. Но оно сейчас у всех есть.
>в 70 раз - по сравнению с TimescaleDBа говорят что в Постгрес есть сжатие... Вы сжатые данные в 70 раз сжали? А не п.здишь ли мил человек?
Ну можно видео сжать zip'ом, а можно H265... Это не означает, что можно zip сжать повторно сверху с помощью H265.
А вообще перед тем как у себя внедрять - бизнес/девопсы приносили кучу статей со сравнительными тестированиями этих БД и все были в пользу Виктории. Я правда потыкал носом в то, что имена авторов статей подозрительно с сотрудниками Виктории совпадали...)) В общем, авторы Виктории - те еще любители маркетинговых сказок...
Речь идет не о сжатии видео. Речь идет о такого рода данных которые нельзя сжимать с потерями. А количество алгоритмов для таких преобразований не так много.
Кроме всего прочего, time-series БД оперируют именно настройкой степени потерь, от потерь в точности хранения вещественных чисел и разрешения DateTime, до потерь во временной области, когда несколько последовательных отсчетов сэмплируются в один отсчет с той или иной агрегацией.
Аналогия с видео подразумевала, что ваш посыл с повторным сжатием в N раз уже сжатых данных - не верен. Сжимают исходные несжатые данные в таких системах.
> от потерь в точности хранения вещественных чисел и разрешения DateTime,А вот это должно решаться клиентом, а не БД. Например, для GPS данных мы фиксируем точность в отдельном поле. И какие либо потери там могут сильно искажать картину.
> до потерь во временной области, когда несколько последовательных отсчетов
> сэмплируются в один отсчет с той или иной агрегациейСупер, особенно для данных, для которых порядок критически важен, так как они зависимы.
Дядя, ты не шаришь. Иди гугли "теорему CAP".
В прометее и деревативах осознано дропнули "C", потому что для его назначения - мониторинг, оно не нужно. А его наличие только вредит. Когда ты выбираешь "consistency", ты должен париться насчет распределенных коммитов, дожидаться синхронного подтверждения записи, должен в целом синхронизовать процессы протекающие в распределенной системе. Это вообще никак не вяжется с необходимостью ворочать миллионами семплов, для чего он и создавался и то почему он так адцки выстрелил.
Зато отказ от "C" приносит кучу плюсов. К примеру попробуй угадать с 1 попытки как проще всего (и это вполне адекватно) сделать отказоустойчивый прометей? За счет этого прометей имеет огромный потенциал по простому маштабированию.
Какое отношение конситенция имеет к потере точности данных или нарушению их последовательности? Когда данные искажаются БД - это уже ни в какие ворота не лезет. Причем для большинства видов мониторинга. Даже ПИД-регулирование на искаженных данных или без сохранения их оригинальной последовательности просто не сможет нормально работать.
> Какое отношение конситенция имеет к потере точности данных или нарушению их последовательности?
> Когда данные искажаются БД - это уже ни в какие ворота
> не лезет. Причем для большинства видов мониторинга. Даже ПИД-регулирование на искаженных
> данных или без сохранения их оригинальной последовательности просто не сможет нормально
> работать.Точность не теряется. То что вы говорите -- это семплирование, и оно используется только во время запросов, как юзер спросил. А сырые данные сохраняются на диске все, для каждого таймстемпа. Последовательность тоже не нарушается, иначе бы LSM tree вообще нельзя было бы применить.
> Дядя, ты не шаришь. Иди гугли "теорему CAP".
> В прометее и деревативах осознано дропнули "C", потому что для его назначения - мониторинг, оно не нужно.Не совсем так. CAP очень легко достигается, если просто не поддерживать UPDATE и DELETE :)
Но да, в мониторинге оно никому не нужно.