Data Science. SQL hub
35.9K subscribers
914 photos
49 videos
37 files
973 links
По всем вопросам- @workakkk

@itchannels_telegram - 🔥лучшие ит-каналы

@ai_machinelearning_big_data - Machine learning

@pythonl - Python

@pythonlbooks- python книги📚

@datascienceiot - ml книги📚

РКН: https://vk.cc/cIi9vo
Download Telegram
sql_nosql.pdf
6.4 MB
Шпаргалка по SQL и NoSQL

Your Go-To Quick Reference Guide for SQL & NoSQL

@sqlhub
14👍10🔥1
🖥 RethinkDB — база данных, ориентированная на работу в реальном времени. Она поддерживает хранение данных в формате JSON любой структуры (NoSQL) и позволяет "слушать" стримы данных как с помощью Python, так и непосредственно с фронтенда.


Упрощает создание:
приложений для совместного редактирования документов (например, Google Docs, Trello),
мультиплеерных игр (например, для мгновенного оповещения игроков о действиях других),
маркетплейсов (биржи, ставки),
дешбордов с данными в реальном времени,
систем для общения между IoT-устройствами: обмен сообщениями, сигнализация, запуск действий через прослушивание одного источника.

https://github.com/rethinkdb/rethinkdb

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍124🔥2
🖥 Уязвимость в PostgreSQL, позволяющая выполнить SQL-код с правами пользователя, запускающего pg_dump

Сформированы корректирующие обновления для всех
поддерживаемых веток PostgreSQL 16.4, 15.8, 14.13, 13.16, 12.20, в которых исправлено 56 ошибок, выявленных за последние три месяца.

Cреди прочего в новых версиях устранена уязвимость (CVE-2024-7348), помеченная как опасная (уровень опасности 8.8 из 10). Уязвимость вызвана состоянием гонки в утилите pg_dump, позволяющем атакующему, имеющему возможность создания и удаления постоянных объектов в СУБД, добиться выполнения произвольного SQL-кода с правами пользователя, под которым запускается утилита pg_dump (обычно pg_dump запускается с правами суперпользователя для резервного копирования СУБД).

Для успешной атаки требуется отследить момент запуска утилиты pg_dump, что легко реализуется через манипуляции с открытой транзакцией.

Атака сводится к замене последовательности (sequence) на представление или внешнюю таблицу, определяющих запускаемый SQL-код, в момент запуска pg_dump, когда информация о наличии последовательности уже получена, но данные ещё не выведены. Для блокирования уязвимости добавлена настройка "restrict_nonsystem_relation_kind", запрещающая раскрытие не системных представлений и доступ к внешним таблицам в pg_dump.

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍115🔥4
💻EventStoreDB — open-source БД, в основе которой событийно-ориентированный подход

Благодаря событийно-ориентированному подходу EventStoreDB позволяет извлекать больше пользы из данных, видеть больше связей и закономерностей
EventStoreDB позволяет создавать кластеры в AWS, Azure и GCP и безопасно подключать их к собственным облачным ресурсам.

Быстрый старт с Docker:
docker run --name esdb-single-node -it -p 2113:2113 -p 1113:1113 eventstore/eventstore:latest --insecure --run-projections=All --enable-atom-pub-over-http

🖥 GitHub
🟡 Доки

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍3🔥1
💻Antares SQL — удобный и простой open-source SQL-клиент

sudo apt install antares

Antares SQL — это современное приложение, созданное с упором на простоту и UX, про производительность тоже не забыли

🟡 GitHub

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍154🔥2
💻 GreptimeDB — облачная распределенная БД временных рядов с открытым исходным кодом; поддерживает PromQL/SQL/Python

GreptimeDB — это open-sorce БД временных рядов, ориентированная на эффективность, масштабируемость и аналитические возможности.

Особенности GreptimeDB:
— оптимизированная колоночная структура для работы с данными временных рядов; сжатие и хранение в различных системах хранения данных, в частности в облачных объектных хранилищах

— полностью открытая архитектура распределенного кластера, использующая мощь облачных вычислительных ресурсов

— встроенный SQL и PromQL для запросов, возможность использовать сценарии Python для решения сложных аналитических задач

Быстрый старт с Docker:
docker run --rm --name greptime --net=host greptime/greptimedb standalone start

🖥 GitHub
🟡 Доки

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍76🔥2
💻Spice — унифицированный интерфейс запросов SQL и портативная среда выполнения для быстрого извлечения данных из любой БД, хранилища данных или озера данных

curl https://install.spiceai.org | /bin/bash
spice init spice_qs
cd spice_qs
spice run


Spice — open-source портативная среда выполнения, предлагающая унифицированный интерфейс SQL для получения данных из любой базы данных и не только.
Spice написана на Rust для максимальной производительности.

🖥 GitHub
🟡 Доки

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍105🔥3🤯1
🖥 RavenDB — ACID NoSQL документоориентированная БД

mkdir HelloWorld && cd HelloWorld
dotnet new console
dotnet add package RavenDB.Client --version 6.0.0-*

# изменить Program.cs

dotnet restore && dotnet build && dotnet run


Вообще, RavenDB — довольно известная NoSQL БД;
если кто не пробовал — возможно именно RavenDB поможет в вашем кейсе.

Особенности RavenDB:
— Простота развертывания. Можно использовать как встроенное в проект решение, так Windows service и консольное приложение.

— Простота перехода на новую версию. Просто нужно остановить Raven и закинуть новый билд в рабочую папку сервера. В проекте все обходится обновлением NuGet пакета.

— Расширяемость. Есть множество возможностей по встраиванию своего функционала на стороне сервера. Можно кастомизировать всё, начиная от триггеров на изменение данных и индексов до создания своих расширений, позволяющих обогатить API сервера.

🖥 GitHub
🟡 Доки

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍4🔥1
🖥 introduction-to-sql — введение в SQL бесплатная книга, которая поможет вам освоить основы SQL и начать использовать реляционные базы данных в ваших проектах SysOps, DevOps и другой разработке.

Независимо от того, работаете ли вы инженером DevOps/SysOps, разработчиком или просто увлекаетесь Linux, SQL, скорее всего, понадобится вам на каком-то этапе карьеры.

Это руководство подходит для всех, кто работает разработчиком, системным администратором или инженером DevOps и хочет изучить основы SQL.

GitHub

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍103👎2🔥2
💻 Kvrocks — распределенная БД NoSQL, использующая RocksDB в качестве механизма хранения и совместимая с протоколом Redis

Apache Kvrocks — это распределенная key-value БД, которую можно использовать вместо Redis.
Дизайн репликации и хранения был вдохновлен rocksplicator и blackwidow.

Особенности Kvrocks:

— Совместимость с Redis: можно получить доступ к Apache Kvrocks через любой клиент Redis.

— Пространство имен: аналогично Redis SELECT, но с токеном для каждого пространства имен.

— асинхронная репликация с использованием binlog, как в MySQL.

— поддержка Redis sentinel для аварийного переключения при сбое ведущего или ведомого устройства.

Быстрый старт с Docker:
docker run -it -p 6666:6666 apache/kvrocks --bind 0.0.0.0


🖥 GitHub
🟡 Доки

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍104🥰2
💻FrostDB — встраиваемая колоночная БД, написанная на Go

Построенная поверх Apache Arrow, FrostDB предоставляет конструктор запросов и различные оптимизаторы (использующие DataFrame-подобные API).

В первую очередь, FrostDB оптимизирована для записи.
FrostDB поддерживает сбрасывание данных во внешнее объектное хранилище типа S3.

🖥 GitHub

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥1
💻Vectorlite — быстрое и настраиваемое расширение SQLite для векторного поиска

pip install vectorlite-py

Vectorlite — это расширение для SQLite, которое обеспечивает быстрый векторный поиск на основе hnswlib и работает под Windows, MacOS и Linux.

🖥 GitHub

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍85🔥3
SQL_big_cheatsheet.pdf
1.5 MB
⚡️Большая шпаргалка по SQL с примерами запросов и объяснением

@sqlhub
17👍10🔥7
🖥 Pgroll - это полезная CLI утилита с открытым исходным кодом, предназначенная для безопасных и обратимых миграций схем для PostgreSQL, которая поддерживает работу с несколькими версиями схем одновременно.

Она способна выполнять сложные операции миграции, гарантируя, что клиентские приложения продолжат функционировать во время обновления схемы базы данных.

Это достигается без блокировки базы данных и позволяет старым и новым версиям схемы работать одновременно, даже при внесении критических изменений. Это устраняет риски, связанные с миграциями схем, и значительно упрощает развертывание клиентских приложений, предоставляя возможность мгновенного отката.

Основные функции Pgroll включают:

- Миграции без простоев (без блокировки базы данных, без критических изменений).
- Поддержка одновременной работы старых и новых версий схемы.
- Автоматическое заполнение столбцов при необходимости.
- Мгновенный откат в случае возникновения проблем во время миграции.
- Работа с существующими схемами, нет необходимости начинать с нуля.
- Совместимость с Postgres 14.0 и более поздними версиями.
- Работа с любым сервисом Postgres (включая RDS и Aurora).

Pgroll написана на языке программирования Go, является кроссплатформенной и не требует внешних зависимостей.

https://github.com/xataio/pgroll

#postgres #migration #базыданных

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥43
🖥 sqlite-vec

Чрезвычайно маленькое и "достаточно быстрое" расширение для векторного поиска SQLite, которое работает в любом месте!

Проект преемник sqlite-vss.

- Храните и запрашивайте float, int8 и двоичные векторы в виртуальных таблицах vec 0.
- Написан на чистом C, без зависимостей, работает везде, где работает SQLite (Linux/ macOS /Windows, в браузере с WASM, Raspberry Pis и т.д.)
- Предварительная фильтрация векторов с rowid В подзапросах (...)

Github

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍125🔥3