Forwarded from DataEng
Компания Altinity (та, которая теперь активно развивает ClickHouse) 2 ноября провела конференцию под названием Open Source Analytics Conference, в качестве спикеров были такие звёзды как Maxime Beauchemin, Andy Pavlo, Пётр Зайцев. Доклады уже доступны в сети бесплатно и без смс.
Наиболее заметные:
— Analytic Trends & Data Engineering
— Do We Still Need People To Write Database Systems?
— Distributed Tracing Using ClickHouse at eBay
— Data Rivers — The New Analytics Architecture
— Managing Transactional and Analytical Workloads with Open Source Databases
— Effective Dashboard Design Using Apache Superset
— Succeeding with Apache Druid and Clickstream Data
Наиболее заметные:
— Analytic Trends & Data Engineering
— Do We Still Need People To Write Database Systems?
— Distributed Tracing Using ClickHouse at eBay
— Data Rivers — The New Analytics Architecture
— Managing Transactional and Analytical Workloads with Open Source Databases
— Effective Dashboard Design Using Apache Superset
— Succeeding with Apache Druid and Clickstream Data
Altinity | Run open source ClickHouse® better
OSA Con 2021
Join leading open source and analytic application developers on Nov. 2, 2021 in Altinity’s free, single-day virtual conference: OSA Con. Learn more!
Forwarded from Segment@tion fault
И первый публичный анонс нашего pub/sub-сервера. Сервер - PubSubRT, протокол - PSRT (IESG approved, port 2873)
В чем особенности сервера:
1) Минимально простая конфигурация. На производительность влияет только один параметр - data queue. Чем он меньше - тем меньше latency, но клиент может дольше ждать перед отправкой сообщения
2) Работает максимально быстро, даже с большими пейлоадами. И да, latency на хорошей сети редко поднимается выше 0,5 ms (для мелких пейлоадов - в пределах 30-40 микросекунд)
3) Это не "черный ящик". максимальный мониторинг всего, что происходит внутри
4) Жесткое слежение за latency, warnings в логи, как только превышается допустимый параметр
5) Никаких "таблиц подписки" - только b-trees. Клиенты могут задать миллионы подписок на разные топики, но если сообщения не ходят сразу в миллион клиентов бродкастом - сервер этого не замечает.
Latency между паблишером и конкретным подписчиком мы считаем, как время с момента получения от паблишера первого байта OP_PUBLISH и до ухода последнего байта в дата-сокет подписчика
В чем особенности протокола. Основная особенность одна - мы использовали два сокета (на один порт) и отказались от карусели OP-ACK. Аргумент против один: это усложняет написание надежного клиента, впрочем клиенты на Rust и Python уже вполне надежные. Теперь аргументы в пользу:
- В Pub/Sub пуши от сервера приходят только когда вы получаете сообщение. поэтому пусть себе и ходят по выделенному сокету данных
- По сокету управления все операции - атомарные. Карусель OP-ACK на клиенте тоже не нужна, что намного облегчает логику
- Благодаря двум сокетам, сервер может посылать ACK на операции контроля прямо в то время, пока клиент по второму сокету скачивает большой пейлоад
- Внезапно, но есть куча клиентов, которые просто отправляют данные и ни на что не подписываются. В PSRT данные на сервер можно пушить хоть UDP-фреймами, с ACK или без
- Нет retains. На высоконагруженных Pub/Sub от них всё равно рано или поздно отказываются, потому что это обычно операции с диском
- Очень жесткий контроль таймаутов. Дохлый клиент будет с сервера немедленно выброшен. Дохлый сервер будет немедленно переподключен клиентом
- Максимально простой запуск TLS
- Репликация и HA из коробки. В сервере мы ее пока не открывали, но в будущем думаю да. Протокол репликации открыт
- Логическая совместимость с MQTT - те же топики, те же маски
Все это уже работает в продакшне у клиентов. Реальное ускорение с пейлдоадами >10kb на медленных каналах (нестабильный 1Mbit) - в 5-10 раз быстрее, чем MQTT. Наша EVA ICS уже получила поддержку PSRT в дополнение к MQTT, релиз выйдет примерно через месяц.
https://github.com/alttch/psrt
В чем особенности сервера:
1) Минимально простая конфигурация. На производительность влияет только один параметр - data queue. Чем он меньше - тем меньше latency, но клиент может дольше ждать перед отправкой сообщения
2) Работает максимально быстро, даже с большими пейлоадами. И да, latency на хорошей сети редко поднимается выше 0,5 ms (для мелких пейлоадов - в пределах 30-40 микросекунд)
3) Это не "черный ящик". максимальный мониторинг всего, что происходит внутри
4) Жесткое слежение за latency, warnings в логи, как только превышается допустимый параметр
5) Никаких "таблиц подписки" - только b-trees. Клиенты могут задать миллионы подписок на разные топики, но если сообщения не ходят сразу в миллион клиентов бродкастом - сервер этого не замечает.
Latency между паблишером и конкретным подписчиком мы считаем, как время с момента получения от паблишера первого байта OP_PUBLISH и до ухода последнего байта в дата-сокет подписчика
В чем особенности протокола. Основная особенность одна - мы использовали два сокета (на один порт) и отказались от карусели OP-ACK. Аргумент против один: это усложняет написание надежного клиента, впрочем клиенты на Rust и Python уже вполне надежные. Теперь аргументы в пользу:
- В Pub/Sub пуши от сервера приходят только когда вы получаете сообщение. поэтому пусть себе и ходят по выделенному сокету данных
- По сокету управления все операции - атомарные. Карусель OP-ACK на клиенте тоже не нужна, что намного облегчает логику
- Благодаря двум сокетам, сервер может посылать ACK на операции контроля прямо в то время, пока клиент по второму сокету скачивает большой пейлоад
- Внезапно, но есть куча клиентов, которые просто отправляют данные и ни на что не подписываются. В PSRT данные на сервер можно пушить хоть UDP-фреймами, с ACK или без
- Нет retains. На высоконагруженных Pub/Sub от них всё равно рано или поздно отказываются, потому что это обычно операции с диском
- Очень жесткий контроль таймаутов. Дохлый клиент будет с сервера немедленно выброшен. Дохлый сервер будет немедленно переподключен клиентом
- Максимально простой запуск TLS
- Репликация и HA из коробки. В сервере мы ее пока не открывали, но в будущем думаю да. Протокол репликации открыт
- Логическая совместимость с MQTT - те же топики, те же маски
Все это уже работает в продакшне у клиентов. Реальное ускорение с пейлдоадами >10kb на медленных каналах (нестабильный 1Mbit) - в 5-10 раз быстрее, чем MQTT. Наша EVA ICS уже получила поддержку PSRT в дополнение к MQTT, релиз выйдет примерно через месяц.
https://github.com/alttch/psrt
Еще одна китайская бд. На этот раз HA distributed time series. На гошечке
https://github.com/lindb/lindb
https://github.com/lindb/lindb
GitHub
GitHub - lindb/lindb: LinDB is a scalable, high performance, high availability distributed time series database.
LinDB is a scalable, high performance, high availability distributed time series database. - lindb/lindb
Wasm (кродеться)
Совершенно внезапно в моем БД-пузыре стал появляться wasm.
И оказалось что то, что казалось каким-то не очень популярным, теперь можно использовать в куче мест!
И, видимо, довольно эффективно.
Базы в браузерах:
- в duckdb
- в tidb (1) , (2)
- в sqlite
- в новом правоверном аналоге кафки Redpanda
- и даже в Postgresql
Предполагаю, это станет меймнстримом через 2-3 года.
Отдельно хорошо, что эта божественная технология доступна не только красноглазым сишникам, но и обычным смертным, включая жеесников - wasmer.io или assemblynoscript.org
Продолжаю наблюдение...
Совершенно внезапно в моем БД-пузыре стал появляться wasm.
И оказалось что то, что казалось каким-то не очень популярным, теперь можно использовать в куче мест!
И, видимо, довольно эффективно.
Базы в браузерах:
- в duckdb
- в tidb (1) , (2)
- в sqlite
- в новом правоверном аналоге кафки Redpanda
- и даже в Postgresql
Предполагаю, это станет меймнстримом через 2-3 года.
Отдельно хорошо, что эта божественная технология доступна не только красноглазым сишникам, но и обычным смертным, включая жеесников - wasmer.io или assemblynoscript.org
Продолжаю наблюдение...
Я как-то пропустил, но амазон открыли сорцы babelfish.
Это такой sql-трансплайнер, который прикидывается sql server’ом, а на бэке работает postgresql. Т.е. в теории можно экономить на лицензии в тех проектах, где выбрали не ту бд :)
Там, конечно, не все просто, пришлось патчить постргю.
Но все равно прикольно :)
Возможно, не последнюю роль в этом сыграла купленная амазоном в начале года украинская компания DB Best Technologies, они как раз всякими миграторами занимаются.
Это такой sql-трансплайнер, который прикидывается sql server’ом, а на бэке работает postgresql. Т.е. в теории можно экономить на лицензии в тех проектах, где выбрали не ту бд :)
Там, конечно, не все просто, пришлось патчить постргю.
Но все равно прикольно :)
Возможно, не последнюю роль в этом сыграла купленная амазоном в начале года украинская компания DB Best Technologies, они как раз всякими миграторами занимаются.
Сейчас все пилят тиктоки свои БД.
Помните про firebolt , да?
Подписчик поделился ссылкой на проект своих друзей - unum.am
Говорят, уделывает FoundationDB и все остальные noSQL.
Правда, cloud only, без опенсорсов.
Еще наткнулся на новую графовую базу - memgraph.com
Наконец что-то не на джаве, с cypher и опенсорсом :)
Надо будет попробовать, как руки дойдут...
Помните про firebolt , да?
Подписчик поделился ссылкой на проект своих друзей - unum.am
Говорят, уделывает FoundationDB и все остальные noSQL.
Правда, cloud only, без опенсорсов.
Еще наткнулся на новую графовую базу - memgraph.com
Наконец что-то не на джаве, с cypher и опенсорсом :)
Надо будет попробовать, как руки дойдут...
Lukas Fittl из pganalyze.com не только выковырял оригинальный AST парсер из postgresql , но еще и планировщик (450k sloc сишного кода)
Правда, планировщик он пока не заопенсорсил.
Так же у них есть онлайн рекомендатор для индексов
Работает как-то очень странно, но попробуйте сами...
Жаль, API нет :(
Правда, планировщик он пока не заопенсорсил.
Так же у них есть онлайн рекомендатор для индексов
Работает как-то очень странно, но попробуйте сами...
Жаль, API нет :(
Forwarded from Egor Suvorov
Там в SQLite наконец-то завезли проверку типов у столбцов и данных. Теперь можно включить
https://www.sqlite.org/releaselog/3_37_0.html
Оказывается, была (и есть) целая страница, посвящённая концепции "динамическая типизация в базе данных — это хорошо": https://www.sqlite.org/flextypegood.html
> Based on decades of experience, I reject the thesis that rigid type enforcement helps prevent application bugs. I will accept and believe a slightly modified thesis: Rigid type enforcement helps to prevent applications bugs in languages that lack a single top-level "Value" superclass. But SQLite does have the single "sqlite3_value" superclass, so that proverb does not apply.
STRICT для конкретной таблицы и не получится положить 'zzz' в столбец INTEGER. Положить туда '0123' всё ещё получится, впрочем, будет 123.https://www.sqlite.org/releaselog/3_37_0.html
Оказывается, была (и есть) целая страница, посвящённая концепции "динамическая типизация в базе данных — это хорошо": https://www.sqlite.org/flextypegood.html
> Based on decades of experience, I reject the thesis that rigid type enforcement helps prevent application bugs. I will accept and believe a slightly modified thesis: Rigid type enforcement helps to prevent applications bugs in languages that lack a single top-level "Value" superclass. But SQLite does have the single "sqlite3_value" superclass, so that proverb does not apply.
Кому даты на авс? :)
Приглашаем на Data Meetup от AWS User Group Ukraine 14 декабря в 19:00 (GMT+2)!
AWS ML Hero & DataSquad Team Leader в TeamWork ─ Virginie Mathivet
и специалисты из N-iX будут обсуждать:
🔸 как step-by-step создавать Datalab и какие сервисы AWS использовать.
🔸 особенности использования сервиса AWS Data Pipeline.
🔸 навыки, благодаря которым Data Engineers становятся high-level специалистами.
Присоединяйтесь онлайн:
https://bit.ly/3l52RZ1
Приглашаем на Data Meetup от AWS User Group Ukraine 14 декабря в 19:00 (GMT+2)!
AWS ML Hero & DataSquad Team Leader в TeamWork ─ Virginie Mathivet
и специалисты из N-iX будут обсуждать:
🔸 как step-by-step создавать Datalab и какие сервисы AWS использовать.
🔸 особенности использования сервиса AWS Data Pipeline.
🔸 навыки, благодаря которым Data Engineers становятся high-level специалистами.
Присоединяйтесь онлайн:
https://bit.ly/3l52RZ1
А я говорил, говорил!
- взять postgresql как бекенд
- нафигачить обвязку про что-нибудь не-постгресовое
- назвать новой базой
- поднять инвесторского бабла
- PROFIT!!!
получим ferretdb.io - тру опенсорс аналог монги...
- взять postgresql как бекенд
- нафигачить обвязку про что-нибудь не-постгресовое
- назвать новой базой
- поднять инвесторского бабла
- PROFIT!!!
получим ferretdb.io - тру опенсорс аналог монги...
Обновление моей коллекции опенсорц тулзин для SQL на github
Странно, что я не заметил этот проект раньше, хотя ему уже два года, но лучше поздно, чем никогда :)
Кодеген из sql в типы и модельки на go.
https://github.com/kyleconroy/sqlc
Работает неплохо, но все равно хуже, чем мой неопенсорсный parsers.dev :)
А иногда совсем не работает :(
И да, с parsers.dev можно генерить код для любого языка, не только для go, т.к. в качестве результатов получаете объект с типами, информацией о nullable и много еще всякого полезного.
Решите написать свой генератор, обращайтесь в личку, буду рад помочь!
Странно, что я не заметил этот проект раньше, хотя ему уже два года, но лучше поздно, чем никогда :)
Кодеген из sql в типы и модельки на go.
https://github.com/kyleconroy/sqlc
Работает неплохо, но все равно хуже, чем мой неопенсорсный parsers.dev :)
А иногда совсем не работает :(
И да, с parsers.dev можно генерить код для любого языка, не только для go, т.к. в качестве результатов получаете объект с типами, информацией о nullable и много еще всякого полезного.
Решите написать свой генератор, обращайтесь в личку, буду рад помочь!
Пришло время извлекать профит!
Давайте все дружно порекомендуем меня в супергерои :)
Спокойно, я не поехал! Речь о Snowflake Data Superheroes. Там есть кнопочка NOMINATE A PEER, по которой будет коротенькая анкета.
На всякий случай уточнюкакого хрена почему это меня касается:
- парсер и компилятор snowflake на parsers.dev
- data lineage для snowflake на dwh.dev
- чаты t.me/snowflakedbchat_en и t.me/snowflakedbchat
- новости t.me/snowflake_daily
- регулярный бомбеж на тему snowflake в этом канале :)
Представлю вестерн юроп достойно :)
Обогнать мильярд жителей Индии, конечно, не получится, но почему бы не попробовать :)
NOMINATE A PEER на этой странице:
https://community.snowflake.com/s/dataheroes
Upd: профиль на линкеде - https://www.linkedin.com/in/anton-revyako/
Давайте все дружно порекомендуем меня в супергерои :)
Спокойно, я не поехал! Речь о Snowflake Data Superheroes. Там есть кнопочка NOMINATE A PEER, по которой будет коротенькая анкета.
На всякий случай уточню
- парсер и компилятор snowflake на parsers.dev
- data lineage для snowflake на dwh.dev
- чаты t.me/snowflakedbchat_en и t.me/snowflakedbchat
- новости t.me/snowflake_daily
- регулярный бомбеж на тему snowflake в этом канале :)
Представлю вестерн юроп достойно :)
Обогнать мильярд жителей Индии, конечно, не получится, но почему бы не попробовать :)
NOMINATE A PEER на этой странице:
https://community.snowflake.com/s/dataheroes
Upd: профиль на линкеде - https://www.linkedin.com/in/anton-revyako/
Вряд ли меня читают крестовики, но у всех же есть такие друзья из бумажных записных книжек, да?
Дружественному стартапу требуется...
Разыскивается С++ Senior! (ну или Middle, который нас приятно удивит)
Мы - Xperience.ai
Специализируемся на компьютерном зрении. Знаем о нем все.
Ты будешь разрабатывать OpenCV с нами.
Мы не удивимся твоим зарплатным ожиданиям, дадим бонусы, ДМС, курсы английского, компенсацию спорта, всё как положено.
Можно работать в нашем офисе в центре Нижнего Новгорода или удаленно.
Почему стоит прийти работать к нам?
Чтобы работать над интересными проектами за большие деньги.
PS: И конечно же у нас дружный коллектив! (а то вдруг тебе дружить не с кем)
Писать сюда: телеграм @lilushonok или на почту lilia.gorlova@xperience.ai
Дружественному стартапу требуется...
Разыскивается С++ Senior! (ну или Middle, который нас приятно удивит)
Мы - Xperience.ai
Специализируемся на компьютерном зрении. Знаем о нем все.
Ты будешь разрабатывать OpenCV с нами.
Мы не удивимся твоим зарплатным ожиданиям, дадим бонусы, ДМС, курсы английского, компенсацию спорта, всё как положено.
Можно работать в нашем офисе в центре Нижнего Новгорода или удаленно.
Почему стоит прийти работать к нам?
Чтобы работать над интересными проектами за большие деньги.
PS: И конечно же у нас дружный коллектив! (а то вдруг тебе дружить не с кем)
Писать сюда: телеграм @lilushonok или на почту lilia.gorlova@xperience.ai
There will be no singularity
Есть такой замечательный дядька Andy Pavlo из Carnegie Mellon University. Он одно время разрабатывал pelotondb - автоматическую систему управления БД. Это когда ML считает метрики и подкручивает планировщик в нужную сторону. Похожие фичи есть у Azure и Oracle.…
Telegram
DataEng
В догонку про доклады. На канале конференции Hydra стали доступны доклады с прошедшей Hydra 2021
На конференции выступали именитые спикеры, например, есть доклад от Andy Pavlo про ретроспективу NewSQL баз данных за прошедшее десятилетие. Меня также заинтересовал…
На конференции выступали именитые спикеры, например, есть доклад от Andy Pavlo про ретроспективу NewSQL баз данных за прошедшее десятилетие. Меня также заинтересовал…
Soooqol, ять…
https://www.cnews.ru/news/top/2021-12-17_rossiyane_sozdali_subdkotoraya
by @sysadmin_tools
https://www.cnews.ru/news/top/2021-12-17_rossiyane_sozdali_subdkotoraya
by @sysadmin_tools
CNews.ru
Россияне создали СУБД, которая на «Эльбрусах» обгоняет PostgreSQL на Intel - CNews
Российская компания «Релэкс» с 2017 г. без лишнего шума развивает собственную масштабируемую реляционную СУБД...