Data Science. SQL hub
По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo #VRHSZ
Show more📈 Analytical overview of Telegram channel Data Science. SQL hub
Channel Data Science. SQL hub (@sqlhub) in the Russian language segment is an active participant. Currently, the community unites 35 840 subscribers, ranking 3 816 in the Technologies & Applications category and 18 116 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 35 840 subscribers.
According to the latest data from 19 June, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -33 over the last 30 days and by 10 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 6.99%. Within the first 24 hours after publication, content typically collects 3.45% reactions from the total number of subscribers.
- Post reach: On average, each post receives 2 504 views. Within the first day, a publication typically gains 1 238 views.
- Reactions and interaction: The audience actively supports content: the average number of reactions per post is 11.
- Thematic interests: Content is focused on key topics such as sql, индекс, postgres, index, sqlite.
📝 Description and content policy
The author describes the resource as a platform for expressing subjective opinions:
“По всем вопросам- @workakkk
@itchannels_telegram - 🔥лучшие ит-каналы
@ai_machinelearning_big_data - Machine learning
@pythonl - Python
@pythonlbooks- python книги📚
@datascienceiot - ml книги📚
РКН: https://vk.cc/cIi9vo
#VRHSZ”
Thanks to the high frequency of updates (latest data received on 20 June, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.
pip install fugue[sql]
Для запуска на движках выполнения Spark или Dask введите:
pip install fugue[sql, spark]
pip install fugue[sql, dask]
pip install fugue[all]
В этой статье мы рассмотрим некоторые утилиты FugueSQL и сравним FugueSQL с другими инструментами, такими как pandasql.
В чем разница между FugueSQL и pandasql?
Если вы знакомы с pandasql, то у вас может возникнуть вопрос: Зачем использовать FugueSQL, если pandasql уже позволяет выполнять SQL с помощью pandas?
pandasql имеет единственный бэкэнд – SQLite. Передача данных между pandas и SQLite сопряжена с большими накладными расходами.
С другой стороны, FugueSQL поддерживает несколько локальных бэкендов: pandas, DuckDB и SQLite.
from fugue.api import fugue_sql
import json
query = """
SELECT id, value
FROM input_df
TRANSFORM USING map_letter_to_food(mapping={{mapping}}) SCHEMA *
"""
map_dict_str = json.dumps(map_dict)
# returns Pandas DataFrame
fugue_sql(query,mapping=map_dict_str)
# returns Spark DataFrame
fugue_sql(query, mapping=map_dict_str, engine="spark")
▪Читать
▪Github
@sqlhubSELECT * FROM users WHERE first_name SIMILAR TO '[AB]%';
Разберем примененный шаблон [AB]%. В квадратных скобках перечисляются допустимые символы, а далее следует знакомый нам символ %. Этот запрос вернет пользователей с именами Abigale, Andy, Brayan, и так далее.
Представим, что нам нужно найти пользователей, у которых username заканчивается любой буквой.
Это можно сделать таким шаблоном: %[abcdefghijklmnopqrstuvwxyz]. Согласитесь, такая запись неудобна для чтения и записи.
А что, если мы случайно пропустим какую-то букву? В квадратных скобках можно использовать символ - для перечисления. Если записать в квадратных скобках начальный символ, поставить "-" и указать конечный символ, то такой шаблон вернет любой символ из диапазона от начального до конечного.
Напишем запрос, который вернет всех пользователей у которых username заканчивается любой буквой, будет выглядеть так:
SELECT * FROM users WHERE username SIMILAR TO '%[a-z]';
Точно так же можно работать и с русскими буквами: '%[а-я]%'. Такой запрос поможет найти пользователей, у которых в поле username есть русские буквы:
SELECT * FROM users WHERE username SIMILAR TO '%[а-я]%';
Чтобы выбрать все цифры, используем шаблон [0-9]:
SELECT * FROM users WHERE username SIMILAR TO '%[0-9]';
Такой запрос вернет всех пользователей, чей username заканчивается на любую цифру.
Комбинируя правила, мы можем создавать достаточно сложные шаблоны. Например, проверим, что в поле email введены корректные адреса электронной почты.
Корректная почта должна содержать адрес, который состоит из:
*️⃣Имени с любым количеством любых символов — например, my_email
*️⃣Символа @
*️⃣Домена с любым количеством любых символов — например, gmail
*️⃣Точки
*️⃣Указания национальной зоны — например, com
Запрос на поиск корректных адресов будет таким:
SELECT username, email FROM users WHERE email SIMILAR TO '%@%.%';
Такой запрос выведет имена пользователей с корректными адресами электронной почты, однако нам интереснее найти ошибки. В этом случае частица NOT позволит найти строки, которые не соответствуют шаблону:
SELECT username, email FROM users WHERE email NOT SIMILAR TO '%@%.%';
Теперь выберем все адреса электронной почты, у которых национальная зона состоит ровно из двух символов — например, ru, su, io и так далее. При этом исключим зоны, состоящие из трех и более символов — например, com.
Это можно сделать так: %.[a-z][a-z]. Но удобнее воспользоваться еще одним спецсимволом — подчеркиванием _.
Символ подчеркивания обозначает ровно один любой символ, необязательно букву. Наш запрос будет выглядеть так:
SELECT username, email FROM users WHERE email SIMILAR TO '%.__';
Чтобы вывести пользователей с адресами электронной почты оканчивающимися на 3 символа, нужно добавить еще одно подчерктивание в наш шаблон:
SELECT
username,
email
FROM users WHERE email SIMILAR TO '%.___';
Мы рассмотрели наиболее полезные и часто используемые возможности регулярных выражений в SQL, но они ими не ограничиваются.Протестируйте обучение на открытых уроках:
🔹Триггеры в PostgreSQL, 31 августа в 20:00
Научимся разрабатывать триггеры и триггерные функции на PL/PgSQL
➡️ https://otus.pw/NVme/
🔹 Статистика и её значение для оптимизации запросов, 5 сентября в 20:00
Узнаете, где и как PostgreSQL хранит и как актуализирует статистику
➡️ https://otus.pw/VVCu/
Нативная интеграция. Информация о продукте www.otus.rupip install sqllex
▪Github
▪Документация
@sqlhubgit clone https://github.com/run-llama/modal_finetune_sql.git
▪GIthub
▪Ipynb
@sqlhub • оплата за ведение групп до 30 человек (количество групп можно выбрать самостоятельно)
• бесплатное обучение на интенсиве по коммуникациям и эффективному преподаванию;
• сертификаты о социально-полезной деятельности для портфолио,
• прокачка менторских, лидерских и soft skills, нетворкинг.
Идеальный кандидат: имеет техническое/педагогическое образование (3 курс и старше), опыт работы от полугода (подойдут фриланс, pet-проекты) и желание обучать подростков.
Необходимые навыки: разрабатывать сайты/приложения/нейросети на Python и создавать ботов для Telegram.
Узнать детали и откликнуться на вакансию наставника по Python-разработке.docker run -p 9042:9042 -p 7002:7000 -p 7001:7001 -p 9160:9160 -p 9180:9180 --name scylla --hostname scylla -d scylladb/scylla --smp 1 --developer-mode 1
Этой командой запустится одноузловой кластер Scylla. Так в режиме разработчика Scylla требуется минимум ресурсов в отличие от Cassandra, с которой у Docker Engine много работы.
Применение драйвера Scylla
Вот простой пример на Golang с использованием официального драйвера Scylla:
import "github.com/gocql/gocql"
func Connect(config Config) (*gocql.Session, error) {
cluster := gocql.NewCluster(config.Hosts...)
cluster.Keyspace = config.KeySpace
cluster.CQLVersion = "3.11"
cluster.RetryPolicy = &gocql.ExponentialBackoffRetryPolicy{
NumRetries: 5, Min: time.Millisecond * 5, Max: time.Second * 5}
cluster.ProtoVersion = 3
cluster.PoolConfig.HostSelectionPolicy = gocql.TokenAwareHostPolicy(
gocql.RoundRobinHostPolicy())
cluster.ConnectTimeout = time.Second * 10
cluster.Consistency = gocql.One
if config.Timeout != nil {
cluster.Timeout = *config.Timeout
}
cluster.Authenticator = gocql.PasswordAuthenticator{
Username: config.Username, //'cassandra' по умолчанию
Password: config.Password, //'cassandra' по умолчанию
}
session, err := cluster.CreateSession()
if err != nil {
return nil, err
}
return session, nil
}
Здесь стоит обратить внимание вот на что:
cluster.PoolConfig.HostSelectionPolicy = gocql.TokenAwareHostPolicy(
gocql.RoundRobinHostPolicy())
Драйвером-клиентом TokenAware с помощью ключа раздела пробуется первый сегмент, затем методом циклического перебора — следующий, если первый недоступен. Для этого необходимо подключиться не к порту Cassandra по умолчанию 9042, а к порту Scylla с поддержкой сегментов 19042.
Попробуем простой запрос:
func Ping(session *gocql.Session) error {
var str = new(string)
if err := session.Query("SELECT uuid() FROM system.local;").Scan(str); err != nil {
return err
}
if str == nil || len(*str) == 0 {
return errors.New("failed sanity check")
}
return nil
}
// альтернатива «select 1;» в SQL
Переходим в облако
ПРОДОЛЖЕНИЕ
Available now! Telegram Research 2025 — the year's key insights 
