🔥 Подборка каналов для Дата сайентиста
🖥 Machine learning
ai_ml – машинное обучение, ии, нейросети.
datasc - Data science в телеграм!
@bigdatai - Big Data
@machinelearning_ru – гайды по машинному обучению
@machinelearning_interview – подготовка к собеседованию мл.
@datascienceiot – бесплатные книги ds
@ArtificialIntelligencedl – ИИ
@machinee_learning – чат о машинном обучении
@datascienceml_jobs - вакансии ds, ml
@Machinelearning_Jobs - чат с вакансиями
#️⃣ c# c++
C# - погружение в C#
@csharp_cplus чат
С++ - обучающий канал по C++.
@csharp_1001_notes - инструменты C#
🖥 SQL базы данных
@sqlhub - Повышение эффективности кода с грамотным использованием бд.
@chat_sql - чат изучения бд.
👣 Golang
@Golang_google - восхитительный язык от Google, мощный и перспективный.
@golang_interview - вопросы и ответы с собеседований по Go. Для всех уровней разработчиков.
@golangtests - интересные тесты и задачи GO
@golangl - чат изучающих Go
@GolangJobsit - отборные вакансии и работа GO
@golang_jobsgo - чат для ищущих работу.
@golang_books - полезные книги Golang
@golang_speak - обсуждение языка Go
@golangnewss - новости go
🖥 Linux
linux - kali linux ос для хакинга
linux chat - чат linux для обучения и помощи.
@linux_read - бесплатные книги linux
🖥 Python
@pythonl - главный канал самого популярного языка программирования.
@pro_python_code – учим python с ментором.
@python_job_interview – подготовка к Python собеседованию.
@python_testit - проверочные тесты на python
@pythonlbooks - современные книги Python
@python_djangojobs - работа для Python программистов
@python_django_work - чат обсуждения вакансий
🖥 Javascript / front
@react_tg - - 40,14% разработчиков сайтов использовали React в 2022 году - это самая популярная библиотека для создания сайтов.
@javascript -канал для JS и FrontEnd разработчиков. Лучшие практики и примеры кода. Туториалы и фишки JS
@Js Tests - каверзные тесты JS
@hashdev - погружение в web разработку.
@javascriptjobjs - отборные вакансии и работа FrontEnd.
@jsspeak - чат поиска FrontEnd работы.
🖥 Java
@javatg - выучить Java с senior разработчиком на практике
@javachats - чат для ответов на вопросы по Java
@java_library - библиотека книг Java
@android_its - Android разработка
@java_quizes - тесты Java
@Java_workit - работа Java
@progersit - шпаргалки ит
👷♂️ IT работа
https://t.me/addlist/_zyy_jQ_QUsyM2Vi -ит каналы по яп с вакансиями
🤡It memes
@memes_prog - ит-мемы
⚙️ Rust
@rust_code - Rust избавлен от болевых точек, которые есть во многих современных яп
@rust_chats - чат rust
📓 Книги
https://t.me/addlist/HwywK4fErd8wYzQy - актуальные книги по всем яп
⭐️ Нейронные сети
@vistehno - chatgpt ведет блог, решает любые задачи и отвечает на любые ваши вопросы.
@aigen - сети для генерации картинок. видео, музыки и многого другого.
@neural – погружение в нейросети.
📢 English for coders
@english_forprogrammers - Английский для программистов
🖥 Devops
Devops - канал для DevOps специалистов.
ai_ml – машинное обучение, ии, нейросети.
datasc - Data science в телеграм!
@bigdatai - Big Data
@machinelearning_ru – гайды по машинному обучению
@machinelearning_interview – подготовка к собеседованию мл.
@datascienceiot – бесплатные книги ds
@ArtificialIntelligencedl – ИИ
@machinee_learning – чат о машинном обучении
@datascienceml_jobs - вакансии ds, ml
@Machinelearning_Jobs - чат с вакансиями
#️⃣ c# c++
C# - погружение в C#
@csharp_cplus чат
С++ - обучающий канал по C++.
@csharp_1001_notes - инструменты C#
@sqlhub - Повышение эффективности кода с грамотным использованием бд.
@chat_sql - чат изучения бд.
@Golang_google - восхитительный язык от Google, мощный и перспективный.
@golang_interview - вопросы и ответы с собеседований по Go. Для всех уровней разработчиков.
@golangtests - интересные тесты и задачи GO
@golangl - чат изучающих Go
@GolangJobsit - отборные вакансии и работа GO
@golang_jobsgo - чат для ищущих работу.
@golang_books - полезные книги Golang
@golang_speak - обсуждение языка Go
@golangnewss - новости go
linux - kali linux ос для хакинга
linux chat - чат linux для обучения и помощи.
@linux_read - бесплатные книги linux
@pythonl - главный канал самого популярного языка программирования.
@pro_python_code – учим python с ментором.
@python_job_interview – подготовка к Python собеседованию.
@python_testit - проверочные тесты на python
@pythonlbooks - современные книги Python
@python_djangojobs - работа для Python программистов
@python_django_work - чат обсуждения вакансий
@react_tg - - 40,14% разработчиков сайтов использовали React в 2022 году - это самая популярная библиотека для создания сайтов.
@javascript -канал для JS и FrontEnd разработчиков. Лучшие практики и примеры кода. Туториалы и фишки JS
@Js Tests - каверзные тесты JS
@hashdev - погружение в web разработку.
@javascriptjobjs - отборные вакансии и работа FrontEnd.
@jsspeak - чат поиска FrontEnd работы.
@javatg - выучить Java с senior разработчиком на практике
@javachats - чат для ответов на вопросы по Java
@java_library - библиотека книг Java
@android_its - Android разработка
@java_quizes - тесты Java
@Java_workit - работа Java
@progersit - шпаргалки ит
👷♂️ IT работа
https://t.me/addlist/_zyy_jQ_QUsyM2Vi -ит каналы по яп с вакансиями
🤡It memes
@memes_prog - ит-мемы
⚙️ Rust
@rust_code - Rust избавлен от болевых точек, которые есть во многих современных яп
@rust_chats - чат rust
📓 Книги
https://t.me/addlist/HwywK4fErd8wYzQy - актуальные книги по всем яп
@vistehno - chatgpt ведет блог, решает любые задачи и отвечает на любые ваши вопросы.
@aigen - сети для генерации картинок. видео, музыки и многого другого.
@neural – погружение в нейросети.
@english_forprogrammers - Английский для программистов
Devops - канал для DevOps специалистов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤2🔥1
🧑🏫 9 лучших курсов и сертификаций по Spark.
Apache Spark — фреймворк с открытым исходным кодом для реализации распределённой обработки неструктурированных и слабоструктурированных данных, входящий в экосистему проектов Hadoop.
1. NoSQL, Big Data, and Spark Foundations Specialization
Время прохождения – 4 месяца (если тратить 3 часа в неделю)
Кому стоит записаться?
Для новичков.
2. Distributed Computing with Spark SQL
Время прохождения – 13 часов
Кто должен записаться на курс?
Тем, кто уже имеет представление о SQL.
3. Apache Spark (TM) SQL for Data Analysts
Время прохождения – 13 часов
Кому стоит записаться на курс?
Тем, кто уже знаком с SQL.
4.Meta Spark Creator AR Certification Prep Specialization
Время прохождения – 3 месяца
Кому стоит записаться?
Тем, кто является новичком.
5. Data Analysis Using Pyspark
Время выполнения – 1,5 часа
Кому стоит записаться на курс?
Тем, кто уже знает программирование на Python.
6. Scalable Machine Learning on Big Data using Apache Spark
Время прохождения – 6 часов
Кому стоит записаться?
Тем, кто уже владеет Python, машинным обучением и базовыми знаниями SQL.
7. Big Data Analysis with Scala and Spark
Время прохождения – 27 часов
Кому стоит записаться?
Тем, у кого есть предыдущие знания программирования на любом языке.
8. Data Engineering with MS Azure Synapse Apache Spark Pools
Время прохождения – 7 часов
Кому стоит записаться на курс?
Тем, кто уже знает Python или SQL.
9. Building Machine Learning Pipelines in PySpark MLlib
Время выполнения – 1,5 часа
Кому стоит записаться?
Тем, кто знает Python и основы машинного обучения.
@sqlhub
Apache Spark — фреймворк с открытым исходным кодом для реализации распределённой обработки неструктурированных и слабоструктурированных данных, входящий в экосистему проектов Hadoop.
1. NoSQL, Big Data, and Spark Foundations Specialization
Время прохождения – 4 месяца (если тратить 3 часа в неделю)
Кому стоит записаться?
Для новичков.
2. Distributed Computing with Spark SQL
Время прохождения – 13 часов
Кто должен записаться на курс?
Тем, кто уже имеет представление о SQL.
3. Apache Spark (TM) SQL for Data Analysts
Время прохождения – 13 часов
Кому стоит записаться на курс?
Тем, кто уже знаком с SQL.
4.Meta Spark Creator AR Certification Prep Specialization
Время прохождения – 3 месяца
Кому стоит записаться?
Тем, кто является новичком.
5. Data Analysis Using Pyspark
Время выполнения – 1,5 часа
Кому стоит записаться на курс?
Тем, кто уже знает программирование на Python.
6. Scalable Machine Learning on Big Data using Apache Spark
Время прохождения – 6 часов
Кому стоит записаться?
Тем, кто уже владеет Python, машинным обучением и базовыми знаниями SQL.
7. Big Data Analysis with Scala and Spark
Время прохождения – 27 часов
Кому стоит записаться?
Тем, у кого есть предыдущие знания программирования на любом языке.
8. Data Engineering with MS Azure Synapse Apache Spark Pools
Время прохождения – 7 часов
Кому стоит записаться на курс?
Тем, кто уже знает Python или SQL.
9. Building Machine Learning Pipelines in PySpark MLlib
Время выполнения – 1,5 часа
Кому стоит записаться?
Тем, кто знает Python и основы машинного обучения.
@sqlhub
👍14❤5🔥3
🔥 Краткий обзор 25 баз данных, которые актуальны в 2023 году.
Сейчас я познакомлю вас с 25 актуальными базами данных.
От классических фаворитов до передовых новичков,
приготовьтесь к дикой поездке по стране баз данных!
1. MySQL – The Classic
MySQL – это надежный дедушка баз данных – он существует с самой зари времен и каким-то образом продолжает становиться все лучше.
Благодаря высокой производительности и совместимости почти со всеми языками программирования.
2. MongoDB – NoSQL Hipster Kid
MongoDB - это крутая NoSQL база, которую я часто использую в своих проектах.
3. PostgreSQL – The Sophisticated One
PostgreSQL, возможно, представляет собой идеальное сочетание производительности, функциональности и элегантности.
4. Oracle – The Enterprise Behemoth
Oracle похож на популярного школьника, который получает одни пятерки, но при этом играет в каждой спортивной команде – он все делает хорошо!
5. Cassandra – Distributed Dynamo
Cassandra – это королева пчел распределенных баз данных – она обладает высокой масштабируемостью и отказоустойчивостью.
6. Redis – The Speedster
Redis – это тот единственный друг, который может бегать быстрее Усэйна Болта, жонглируя горящими бензопилами. Это хранилище данных in-memory отличается молниеносной скоростью и идеально подходит для кэширования или приложений реального времени.
7. MariaDB – MySQL’s Open-Source Sibling
MariaDB имеет много общего с MySQL, но при этом делает упор на открытый исходный код и ориентированность на сообщество. Это как выбор между Pepsi и Coke – они обе утоляют жажду, просто зависит от того, какой вкус вы предпочитаете!
▪ Читать дальше
@sqlhub
Сейчас я познакомлю вас с 25 актуальными базами данных.
От классических фаворитов до передовых новичков,
приготовьтесь к дикой поездке по стране баз данных!
1. MySQL – The Classic
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255));
INSERT INTO users (name) VALUES ('John Rush');
SELECT * FROM users;
MySQL – это надежный дедушка баз данных – он существует с самой зари времен и каким-то образом продолжает становиться все лучше.
Благодаря высокой производительности и совместимости почти со всеми языками программирования.
2. MongoDB – NoSQL Hipster Kid
// Connect to MongoDB and insert a document
const { MongoClient } = require("mongodb");
const uri = "mongodb://localhost:27017";
const client = new MongoClient(uri);
await client.connect();
const db = client.db("mydb");
await db.collection("users").insertOne({ name: "John Rush" });
MongoDB - это крутая NoSQL база, которую я часто использую в своих проектах.
3. PostgreSQL – The Sophisticated One
CREATE TABLE users (id SERIAL PRIMARY KEY, name VARCHAR(255));
INSERT INTO users (name) VALUES ('John Rush');
SELECT * FROM users;
PostgreSQL, возможно, представляет собой идеальное сочетание производительности, функциональности и элегантности.
4. Oracle – The Enterprise Behemoth
CREATE TABLE users (id NUMBER GENERATED BY DEFAULT ON NULL AS IDENTITY PRIMARY KEY, name VARCHAR2(255));
INSERT INTO users (name) VALUES ('John Rush');
SELECT * FROM users;
Oracle похож на популярного школьника, который получает одни пятерки, но при этом играет в каждой спортивной команде – он все делает хорошо!
5. Cassandra – Distributed Dynamo
from cassandra.cluster import Cluster
cluster = Cluster(["127.0.0.1"])
session = cluster.connect()
session.execute("""
CREATE KEYSPACE mykeyspace
WITH replication={'class':'SimpleStrategy', 'replication_factor':1}
""")
session.set_keyspace("mykeyspace")
session.execute("""
CREATE TABLE users (
id UUID PRIMARY KEY,
name text
)
""")
Cassandra – это королева пчел распределенных баз данных – она обладает высокой масштабируемостью и отказоустойчивостью.
6. Redis – The Speedster
import redis
r = redis.Redis(host="localhost", port=6379)
r.set("name", "John Rush")
print(r.get("name"))
Redis – это тот единственный друг, который может бегать быстрее Усэйна Болта, жонглируя горящими бензопилами. Это хранилище данных in-memory отличается молниеносной скоростью и идеально подходит для кэширования или приложений реального времени.
7. MariaDB – MySQL’s Open-Source Sibling
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255));
INSERT INTO users (name) VALUES ('John Rush');
SELECT * FROM users;
MariaDB имеет много общего с MySQL, но при этом делает упор на открытый исходный код и ориентированность на сообщество. Это как выбор между Pepsi и Coke – они обе утоляют жажду, просто зависит от того, какой вкус вы предпочитаете!
▪ Читать дальше
@sqlhub
👍14🔥4❤2
В редакторе кода задаете любой запрос про данные на естественном языке и без написания кода получаете готовый ответ по вашим данным.
Установка:
pip install pandasai
Например, вы можете попросить PandasAI найти все строки в DataFrame, где значение столбца больше 5, и он вернет DataFrame, содержащий только эти строки:
import pandas as pd
from pandasai import PandasAI
df = pd.DataFrame({
"country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", "Canada", "Australia", "Japan", "China"],
"gdp": [19294482071552, 2891615567872, 2411255037952, 3435817336832, 1745433788416, 1181205135360, 1607402389504, 1490967855104, 4380756541440, 14631844184064],
"happiness_index": [6.94, 7.16, 6.66, 7.07, 6.38, 6.4, 7.23, 7.22, 5.87, 5.12]
})
# Instantiate a LLM
from pandasai.llm.openai import OpenAI
llm = OpenAI(api_token="YOUR_API_TOKEN")
pandas_ai = PandasAI(llm)
pandas_ai(df, prompt='Which are the 5 happiest countries?')
Вывод:
6 Canada
7 Australia
1 United Kingdom
3 Germany
0 United States
Name: country, dtype: object
Конечно, вы также можете попросить PandasAI выполнить более сложные запросы. Например, вы можете попросить PandasAI найти сумму ВВП двух самых несчастливых стран:
pandas_ai(df, prompt='What is the sum of the GDPs of the 2 unhappiest countries?')
Вывод:
19012600725504
Вы также можете попросить PandasAI нарисовать график:
pandas_ai(
df,
"Plot the histogram of countries showing for each the gdp, using different colors for each bar",
)
Вот еще один пример использования библиотеки Pandas AI в Google Colab.
▪ Github
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥7❤3👎1
🔥 30 SQL-запросов, объяснённых через их эквиваленты Pandas
В мире, где с 1974 года доминирует SQL, в 2008 году появился Pandas, предлагающий привлекательные функции, такие как встроенная визуализация и гибкая обработка данных. Он быстро стал популярным инструментом для исследования данных, затмив собой SQL.
Но не обманывайте себя, SQL по-прежнему держит свои позиции. Это второй по востребованности и третий по скорости роста язык для Data science (см. здесь ). Таким образом, в то время как Pandas привлекает всеобщее внимание, SQL остаётся жизненно важным навыком для любого специалиста по данным.
Давайте узнаем, как легко выучить SQL, если вы уже знаете Pandas.
▪Читать
@sqlhub
В мире, где с 1974 года доминирует SQL, в 2008 году появился Pandas, предлагающий привлекательные функции, такие как встроенная визуализация и гибкая обработка данных. Он быстро стал популярным инструментом для исследования данных, затмив собой SQL.
Но не обманывайте себя, SQL по-прежнему держит свои позиции. Это второй по востребованности и третий по скорости роста язык для Data science (см. здесь ). Таким образом, в то время как Pandas привлекает всеобщее внимание, SQL остаётся жизненно важным навыком для любого специалиста по данным.
Давайте узнаем, как легко выучить SQL, если вы уже знаете Pandas.
▪Читать
@sqlhub
👍19❤2🔥2
📌 SQL: Медианные суммы заказов
Необходимо рассчитать медианное значение суммы заказов в разрезе года и месяца. Медиана должна быть рассчитана в 2 вариантах:
▪интерполированная медиана: в качестве медианы берется сумма, которая делит все заказы ровно в 50% пропорции, даже если фактически такого заказа на было.
▪действительная медиана: в качестве медианы берется реальная сумма заказа. Если заказов четное число, то берется ближайшая сумма заказа, меньшая интерполированной медианы.
Пример:
Дано: 1; 2
Интерполированная медиана: 1.5
Действительная медиана: 1
Важно: Одним заказом считаем строки из таблицы Orders в которых полностью совпадает поле ord_datetime.
Сортировка
Результат отсортируйте по возрастанию года-месяца.
Столбцы в результате
▪dt - год и месяц
▪interpolated_median - интерполированная медиана
▪real_median - действительная медиана
Важно: Обратите внимание, что название столбцов в вашем ответе должно в точности совпадать с условием.
Дополнительные условия
▪Столбец dt должен быть представлен в виде строки в формате YYYY-MM
▪Столбцы с медианами должны иметь тип numeric
Пишите свое решение в комментариях👇
@sqlhub
Необходимо рассчитать медианное значение суммы заказов в разрезе года и месяца. Медиана должна быть рассчитана в 2 вариантах:
▪интерполированная медиана: в качестве медианы берется сумма, которая делит все заказы ровно в 50% пропорции, даже если фактически такого заказа на было.
▪действительная медиана: в качестве медианы берется реальная сумма заказа. Если заказов четное число, то берется ближайшая сумма заказа, меньшая интерполированной медианы.
Пример:
Дано: 1; 2
Интерполированная медиана: 1.5
Действительная медиана: 1
Важно: Одним заказом считаем строки из таблицы Orders в которых полностью совпадает поле ord_datetime.
Сортировка
Результат отсортируйте по возрастанию года-месяца.
Столбцы в результате
▪dt - год и месяц
▪interpolated_median - интерполированная медиана
▪real_median - действительная медиана
Важно: Обратите внимание, что название столбцов в вашем ответе должно в точности совпадать с условием.
Дополнительные условия
▪Столбец dt должен быть представлен в виде строки в формате YYYY-MM
▪Столбцы с медианами должны иметь тип numeric
Пишите свое решение в комментариях👇
@sqlhub
❤6👍3🔥1
Forwarded from YTsaurus Community Chat (RU)
🦖 Вебинар YTsaurus. DWH Яндекс Go: как мы готовим наши петабайты
Новый вебинар YTsaurus — об использовании платформы в реальных сервисах. В гостях — Яндекс Go, суперапп с разными сервисами внутри, который основан на data driven подходе. Владимир Верстов и Николай Гребенщиков из команды разработки Data Management Platform Яндекс Go расскажут, какие требования команда предъявляет к системам хранения и расскажет, как с этими требованиями справляется YTsaurus.
Ждём 28 июня в 18:30 Мск. Участие бесплатное, зарегистрироваться можно по ссылке.
Также запись вебинара будет доступна на YouTube.
Новый вебинар YTsaurus — об использовании платформы в реальных сервисах. В гостях — Яндекс Go, суперапп с разными сервисами внутри, который основан на data driven подходе. Владимир Верстов и Николай Гребенщиков из команды разработки Data Management Platform Яндекс Go расскажут, какие требования команда предъявляет к системам хранения и расскажет, как с этими требованиями справляется YTsaurus.
Ждём 28 июня в 18:30 Мск. Участие бесплатное, зарегистрироваться можно по ссылке.
Также запись вебинара будет доступна на YouTube.
❤1
Как освободить место без удаления индексов или данных
Раз в несколько месяцев мы получаем предупреждения от системы мониторинга базы данных о том, что свободное место скоро закончится. Обычно мы просто выделяем больше места и забываем об этом, однако в этот раз мы были на карантине и система была нагружена меньше, чем обычно. И тут мы подумали, что это хорошая возможность провести чистку.
Начнем с конца: в итоге нам удалось освободить более чем 70 GB не оптимизированного и неиспользуемого пространства без удаления индексов и данных.
Используя обычные приемы, такие как перестроение индексов и таблиц, мы очистили много пространства, но затем одна удивительная находка помогла нам освободить дополнительно примерно 20 GB неиспользуемых индексированных значений.
▪ Читать
#postgresql
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤4🔥3
Вы можете легко выполнить запрос MySQL из командной строки, используя команду MySQL вместе с опцией
-e.
mysql -h [хост] -u [имя пользователя] -p [пароль] [база данных] -e [SQL_запрос]
В приведенной выше команде необходимо указать имя пользователя, пароль, имя базы данных для соединения с базой данных MySQL. После опции
-e
необходимо указать SQL-запрос, который будет выполняться.Вот простой пример выполнения SQL-запроса при подключении к локальной базе данных.
mysql -utest_user -ptest_password -hlocalhost db -e "SELECT * FROM table;".
Вы также можете опустить аргумент имени базы данных
'db',
если вы ссылаетесь на нее в SQL-запросе.mysql -utest_user -ptest_password -hlocalhost -e "SELECT * FROM db.table;"
Добавление точки с запятой в конце SQL-запроса необязательно. Но если вы хотите выполнить несколько SQL-запросов, вам необходимо разделить их с помощью точки с запятой, как показано в следующем примере.
mysql -utest_user -ptest_password -hlocalhost -e "SELECT * FROM db.table; SELECT * from db.table2;"
Вы также можете выполнять отдельные команды MySQL с опцией
-e,
если хотите.mysql -utest_user -ptest_password -hlocalhost -e "SELECT * FROM db.table;"
mysql -utest_user -ptest_password -hlocalhost -e "SELECT * FROM db.table2;"
Вы также можете хранить свои SQL-запросы в файле и указать MySQL прочитать этот файл. Допустим, у вас есть файл queries.txt
nano queries.txt
со следующими запросами.
SELECT * FROM db.table;
SELECT * FROM db.table2;
Теперь, если вы хотите выполнить запросы в файле queries.txt, вы можете сделать это с помощью следующей команды. В этом случае MySQL будет читать входные данные из файла queries.txt.
mysql -utest_user -ptest_password -hlocalhost < queries.txt
Ключевым моментом, на который следует обратить внимание, является то, что вы должны указать ваш SQL-запрос в двойных кавычках. Если приведенный выше синтаксис команды вам не подходит, попробуйте заключить SQL-запрос в одинарные кавычки.
Также, если ваш SQL-запрос сам содержит двойные кавычки, то их нужно убрать, добавив перед ними обратную косую черту.
Результат вышеприведенного запроса будет выведен на консоль. Если вы хотите сохранить этот результат в другом файле, вам нужно будет использовать операторы перенаправления. Вот пример сохранения результата запроса MySQL в файл test.txt.
mysql -utest_user -ptest_password -hlocalhost -e "SELECT * FROM db.table;" > /home/user/test.txt
Одним из преимуществ выполнения запросов MySQL в командной строке является то, что вы можете передавать вывод другим командам Linux в соответствии с вашими требованиями. Вот простой пример, в котором мы передаем вывод запроса MySQL команде grep.
$ mysql -utest_user -ptest_password -hlocalhost -e "SELECT * FROM db.table;" | grep 'abc'
Заключение
В этом посте мы рассмотрели, как выполнять запросы MySQL из командной строки, сохранять их вывод в файлы и даже передавать их другим командам Linux для дальнейшей обработки. Вы можете эффективно использовать их в сценарии оболочки для автоматического получения данных, их обработки и принятия мер в зависимости от полученной информации.
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥5❤1
🔍Где и как учить SQL бесплатно?
SQLZoo - это бесплатный онлайн ресурс, который предлагает интерактивные уроки и задания для изучения SQL. Уроки начинаются с простых запросов и постепенно усложняются по мере продвижения в обучении.
W3Schools SQL - известный онлайн-ресурс, предлагающий уроки и примеры для изучения SQL и других языков программирования. Здесь пользователи могут найти множество материалов, которые помогут им углубить свои знания и применить их на практике.
Codecademy SQL - интерактивный курс для изучения SQL с возможностью практического применения на практике.
SQLBolt - это ресурс, который помогает начинающим и опытным пользователям SQL с помощью бесплатных уроков и задач.
Udacity SQL - курс известного онлайн-образовательного ресурса, позволит вам освоить основы языка SQL и показать, как применять его для анализа данных
Khan Academy SQL - бесплатный курс SQL, предоставляющий уроки и задачи для изучения языка.
LearnSQL - платный ресурс для изучения SQL. Содержит большое количество уроков и практических заданий.
SQLCourse - представляет собой бесплатную платформу, где можно овладеть навыками SQL. Здесь предоставлены обучающие уроки, практические задания и тесты, позволяющие проверить свои знания.
SQL Tutorial - это русскоязычный бесплатный ресурс, предоставляющий возможность изучения SQL. Здесь можно найти уроки и задания, которые помогут вам применять полученные знания на практике.
SQL Zoo - бесплатный ресурс для изучения SQL, содержащий уроки и задания на основе базы данных AdventureWorks.
Mode Analytics SQL Tutorial - бесплатный курс, который предлагает обучение базовым и продвинутым навыкам работы с языком SQL.
SQL Exercises - это бесплатный онлайн-ресурс, который предлагает задачи и упражнения для изучения и практики SQL. Ресурс содержит множество заданий, которые помогут вам развить практические навыки работы с SQL.
SQL Fiddle – это интернет-сервис, который предоставляет возможность создавать, тестировать и отлаживать SQL-запросы совершенно бесплатно.
Learn SQL the Hard Way - книга для изучения SQL, содержащая уроки и задания для практической работы.
DataCamp SQL- курс SQL от DataCamp, который научит Вас основам языка SQL и его применению в анализе данных. Содержит уроки и практические задания на практике.
@sqlhub
SQLZoo - это бесплатный онлайн ресурс, который предлагает интерактивные уроки и задания для изучения SQL. Уроки начинаются с простых запросов и постепенно усложняются по мере продвижения в обучении.
W3Schools SQL - известный онлайн-ресурс, предлагающий уроки и примеры для изучения SQL и других языков программирования. Здесь пользователи могут найти множество материалов, которые помогут им углубить свои знания и применить их на практике.
Codecademy SQL - интерактивный курс для изучения SQL с возможностью практического применения на практике.
SQLBolt - это ресурс, который помогает начинающим и опытным пользователям SQL с помощью бесплатных уроков и задач.
Udacity SQL - курс известного онлайн-образовательного ресурса, позволит вам освоить основы языка SQL и показать, как применять его для анализа данных
Khan Academy SQL - бесплатный курс SQL, предоставляющий уроки и задачи для изучения языка.
LearnSQL - платный ресурс для изучения SQL. Содержит большое количество уроков и практических заданий.
SQLCourse - представляет собой бесплатную платформу, где можно овладеть навыками SQL. Здесь предоставлены обучающие уроки, практические задания и тесты, позволяющие проверить свои знания.
SQL Tutorial - это русскоязычный бесплатный ресурс, предоставляющий возможность изучения SQL. Здесь можно найти уроки и задания, которые помогут вам применять полученные знания на практике.
SQL Zoo - бесплатный ресурс для изучения SQL, содержащий уроки и задания на основе базы данных AdventureWorks.
Mode Analytics SQL Tutorial - бесплатный курс, который предлагает обучение базовым и продвинутым навыкам работы с языком SQL.
SQL Exercises - это бесплатный онлайн-ресурс, который предлагает задачи и упражнения для изучения и практики SQL. Ресурс содержит множество заданий, которые помогут вам развить практические навыки работы с SQL.
SQL Fiddle – это интернет-сервис, который предоставляет возможность создавать, тестировать и отлаживать SQL-запросы совершенно бесплатно.
Learn SQL the Hard Way - книга для изучения SQL, содержащая уроки и задания для практической работы.
DataCamp SQL- курс SQL от DataCamp, который научит Вас основам языка SQL и его применению в анализе данных. Содержит уроки и практические задания на практике.
@sqlhub
👍22🔥4❤3
Жестовый язык, квази-эксперименты и коды на PySpark Pipeline: Х5 Tech проведет Data Science Meetup #2
На онлайн-митапе 5 июля выступят спикеры из X5 Tech, Яндекс Маркет и SberDevices, чтобы поделиться своим опытом и обсудить несколько тем:
➖ Как с помощью PySpark Pipeline писать читаемый, легко тестируемый и поддерживаемый код?
➖ Как оценить эффект без стандартных A/B-тестов с помощью квази-экспериментов методом Propensity Score?
➖ Какие есть проблемы и решения в распознавании жестового языка?
🔔5 июля в 18:00
Участие бесплатно, нужна регистрация
На онлайн-митапе 5 июля выступят спикеры из X5 Tech, Яндекс Маркет и SberDevices, чтобы поделиться своим опытом и обсудить несколько тем:
➖ Как с помощью PySpark Pipeline писать читаемый, легко тестируемый и поддерживаемый код?
➖ Как оценить эффект без стандартных A/B-тестов с помощью квази-экспериментов методом Propensity Score?
➖ Какие есть проблемы и решения в распознавании жестового языка?
🔔5 июля в 18:00
Участие бесплатно, нужна регистрация
🔍 MySQL vs MongoDB
MySQL
Классическая реляционная база, известная практически каждому. Рассмотрим ее основные плюсы:
1. Проверенное временем решение. Действительно сложно с этим спорить. К тому же, современная MySQL — очень развитая и надежная СУБД, имеющая большое сообщество и множество примеров реализации.
2. Высокая совместимость. MySQL доступна на основных платформах: Linux, Mac, Windows, BSD, Solaris. Еще существуют библиотеки для Node.js, C++, Ruby, C#, Java, PHP, Perl, Python.
3. Окупаемость. Не секрет, что СУБД имеет открытый исходный код, который находится в свободном доступе.
4. Реплицируемость. Вы можете распределять БД между несколькими узлами, понижая нагрузку и повышая масштабируемость и доступность.
5. Шардинг. Если шардинг на многих SQL-базах и невозможен, то к MySQL это не относится.
MongoDB
Яркий представитель нереляционных БД, имеющий свои плюсы:
1. Динамическая схема. Позволяет более гибко работать со схемами данных без надобности в изменении самих данных.
2. Масштабируемость. MongoDB масштабируется горизонтально, поэтому вы сможете легко снизить нагрузку на серверы при наличии больших объемов данных.
3. Удобное управление. Отдельный администратор не нужен, а повышенное удобство применения позволяет использовать эту БД как разработчикам, так и системным администраторам.
4. Скорость. База отличается повышенной производительностью при выполнении простых запросов.
5. Гибкость. Вы можете добавлять поля либо колонки без какого-либо вреда для уже существующих данных и производительности СУБД.
Что же выбрать?
На эту тему можно написать отдельную статью, но мы ограничимся несколькими предложениями:
— MySQL — отличный выбор для любого проекта, если у нас предопределена структура и заданы схемы;
— MongoDB — прекрасный вариант для быстрорастущих проектов, не имеющих определенной схемы данных. И особенно она подходит, если вы никак не можете определить схему своей БД либо вам не годится ни одна из существующих схем из других СУБД.
@sqlhub
MySQL
Классическая реляционная база, известная практически каждому. Рассмотрим ее основные плюсы:
1. Проверенное временем решение. Действительно сложно с этим спорить. К тому же, современная MySQL — очень развитая и надежная СУБД, имеющая большое сообщество и множество примеров реализации.
2. Высокая совместимость. MySQL доступна на основных платформах: Linux, Mac, Windows, BSD, Solaris. Еще существуют библиотеки для Node.js, C++, Ruby, C#, Java, PHP, Perl, Python.
3. Окупаемость. Не секрет, что СУБД имеет открытый исходный код, который находится в свободном доступе.
4. Реплицируемость. Вы можете распределять БД между несколькими узлами, понижая нагрузку и повышая масштабируемость и доступность.
5. Шардинг. Если шардинг на многих SQL-базах и невозможен, то к MySQL это не относится.
MongoDB
Яркий представитель нереляционных БД, имеющий свои плюсы:
1. Динамическая схема. Позволяет более гибко работать со схемами данных без надобности в изменении самих данных.
2. Масштабируемость. MongoDB масштабируется горизонтально, поэтому вы сможете легко снизить нагрузку на серверы при наличии больших объемов данных.
3. Удобное управление. Отдельный администратор не нужен, а повышенное удобство применения позволяет использовать эту БД как разработчикам, так и системным администраторам.
4. Скорость. База отличается повышенной производительностью при выполнении простых запросов.
5. Гибкость. Вы можете добавлять поля либо колонки без какого-либо вреда для уже существующих данных и производительности СУБД.
Что же выбрать?
На эту тему можно написать отдельную статью, но мы ограничимся несколькими предложениями:
— MySQL — отличный выбор для любого проекта, если у нас предопределена структура и заданы схемы;
— MongoDB — прекрасный вариант для быстрорастущих проектов, не имеющих определенной схемы данных. И особенно она подходит, если вы никак не можете определить схему своей БД либо вам не годится ни одна из существующих схем из других СУБД.
@sqlhub
👍15🔥2❤1
Думаю, каждый хоть раз использовал команду explain или хотя бы слышал про нее. Эта команда демонстрирует план выполнения запроса, но как именно СУБД приходит к нему остается загадкой. Да и как вообще СУБД понимает, что выбранный запрос оптимален? Неужели она проверяет все возможные варианты?
В этой статье я постараюсь дать небольшое представление о том, как работают оптимизаторы запросов с теоретической точки зрения.
Начнем с того, что можно выделить два основных подхода к поиску наиболее эффективного варианта выполнения: эвристический и стоимостной.
📌 Читать
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤3👍3
При выборе баз данных для текущего проекта (или при замене тех, которые не отвечают вашим текущим потребностям) количество возможных вариантов очень велико. Это и хорошо, и плохо, ведь нужны какие-то критерии фильтрации.
Сегодня есть гораздо больше баз данных, чем когда-либо. В декабре 2012 года, когда DB-Engines.com впервые начал ранжировать базы данных, у него получился список из 73 систем (существенный рост по сравнению с самым первым списком из 18 систем). Спустя десять лет, на декабрь 2022 года в списке было уже почти четыреста систем. За последнее десятилетие произошёл настоящий кембрийский взрыв технологий баз данных.
Нужно ориентироваться в обширном пространстве вариантов: SQL, NoSQL, множество «многомодельных» баз данных, которые могут быть сочетанием SQL и NoSQL, или множественные модели данных NoSQL (сочетающие две или более опций: документы, ключи-значения, широкие столбцы, графы и так далее).
Кроме того, пользователи не должны путать популярность с применимостью для них. Хотя сетевой эффект имеет свои преимущества («Все пользуются X, поэтому не ошибусь, если выберу её»), он также может привести к групповому мышлению, торможению инноваций и конкуренции.
▪ Читать статью
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2🥰1
Два продвинутых SQL-метода, которые могут значительно улучшить ваши запросы
SQL — это основа для каждого специалиста по работе с данными. Неважно, являетесь ли вы аналитиком данных, специалистом по данным или инженером по обработке данных, вам необходимо иметь четкое представление о том, как писать чистые и эффективные SQL-запросы.
Это связано с тем, что за любым тщательным анализом данных или любой сложной моделью машинного обучения стоят базовые данные, и эти данные должны откуда-то поступать.
Cегодня мы рассмотрим две новые техники SQL, которые вы можете добавить в свой набор инструментов, чтобы вывести ваши запросы на новый уровень. Эти методы называются Обобщённое табличное выражение (CTE) и Оконные функции.
▪ Читать
@sqlhub
SQL — это основа для каждого специалиста по работе с данными. Неважно, являетесь ли вы аналитиком данных, специалистом по данным или инженером по обработке данных, вам необходимо иметь четкое представление о том, как писать чистые и эффективные SQL-запросы.
Это связано с тем, что за любым тщательным анализом данных или любой сложной моделью машинного обучения стоят базовые данные, и эти данные должны откуда-то поступать.
Cегодня мы рассмотрим две новые техники SQL, которые вы можете добавить в свой набор инструментов, чтобы вывести ваши запросы на новый уровень. Эти методы называются Обобщённое табличное выражение (CTE) и Оконные функции.
▪ Читать
@sqlhub
👍18❤3🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24👍6🥰2
🕵♂Использование CROSS JOIN для задач поиска пересечений в исторических данных
🔵 CROSS JOIN (или полное соединение таблиц без условий) — декартова перемножение множеств. Говоря простым языком — для каждого варианта первого множества будет сопоставлены все варианты второго множества.
• Правильное использование этого типа соединения может помочь в решении сложных задач, например, нахождении пересечений в исторических данных.
• Структура таблиц представленных примеров в изображении 1.
📕 Допустим: клиент Сидоров Степан Павлович подал заявку на кредит. На некотором этапе рассмотрения потребовался анализ платежеспособности клиента андеррайтером.
Заявка автоматически распределилась на сотрудника Петрова Екатерина Павловна.
На первый взгляд ничего подозрительного нет — в ФИО людей совпадает только отчество, что является широко распространенной ситуацией.
❗️ Однако, при детальном анализе выясняется, что девичья фамилия андеррайтера и клиента совпадают (Сидорова / Сидоров) изображение 2.
В таком случае заявка клиента должна была распределиться на другого сотрудника, чтобы решение, вынесенное по заявке, было не предвзятым.
• Для решения данной задачи можно использовать простой запрос с CROSS JOIN изображение 3.
➡️ Продолжение
• Правильное использование этого типа соединения может помочь в решении сложных задач, например, нахождении пересечений в исторических данных.
• Структура таблиц представленных примеров в изображении 1.
Заявка автоматически распределилась на сотрудника Петрова Екатерина Павловна.
На первый взгляд ничего подозрительного нет — в ФИО людей совпадает только отчество, что является широко распространенной ситуацией.
В таком случае заявка клиента должна была распределиться на другого сотрудника, чтобы решение, вынесенное по заявке, было не предвзятым.
• Для решения данной задачи можно использовать простой запрос с CROSS JOIN изображение 3.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
📌 SQL SELECT TOP, LIMIT, ROWNUM
TOP
Инструкция SELECT TOP используется для указания количества возвращаемых записей.
Она полезна для больших таблиц с тысячами записей. Возврат большого количества записей может повлиять на производительность.
Не все базы данных поддерживают SELECT TOP. MySQL поддерживает предложение LIMIT для выбора ограниченного числа записей, в то время как Oracle использует ROWNUM.
▪ Синтаксис SQL Server / MS Access:
▪ Синтаксис MySQL:
▪ Синтаксис Oracle:
Примеры SQL TOP, LIMIT и ROWNUM
▪ Следующая инструкция SQL выбирает первые три записи из таблицы "Customers":
▪ Следующий оператор SQL показывает эквивалентный пример использования предложения LIMIT:
▪ Следующая инструкция SQL показывает соответствующий пример использования параметра ROWNUM:
Пример SQL TOP PERCENT
▪ Следующая инструкция SQL выбирает первые 50% записей из таблицы "Customers":
Добавить WHERE
▪ Следующая инструкция SQL выбирает первые три записи из таблицы "Customers", где страна - "Germany":
▪ Следующий оператор SQL показывает эквивалентный пример использования LIMIT:
▪ Следующая инструкция SQL показывает соответствующий пример использования параметра ROWNUM:
@sqlhub
TOP
Инструкция SELECT TOP используется для указания количества возвращаемых записей.
Она полезна для больших таблиц с тысячами записей. Возврат большого количества записей может повлиять на производительность.
Не все базы данных поддерживают SELECT TOP. MySQL поддерживает предложение LIMIT для выбора ограниченного числа записей, в то время как Oracle использует ROWNUM.
▪ Синтаксис SQL Server / MS Access:
SELECT TOP number|percent column_name(s)
FROM table_name
WHERE condition;
▪ Синтаксис MySQL:
SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;
▪ Синтаксис Oracle:
SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;
Примеры SQL TOP, LIMIT и ROWNUM
▪ Следующая инструкция SQL выбирает первые три записи из таблицы "Customers":
SELECT TOP 3 * FROM Customers;
▪ Следующий оператор SQL показывает эквивалентный пример использования предложения LIMIT:
SELECT * FROM Customers
LIMIT 3;
▪ Следующая инструкция SQL показывает соответствующий пример использования параметра ROWNUM:
SELECT * FROM Customers
WHERE ROWNUM <= 3;
Пример SQL TOP PERCENT
▪ Следующая инструкция SQL выбирает первые 50% записей из таблицы "Customers":
SELECT TOP 50 PERCENT * FROM Customers;
Добавить WHERE
▪ Следующая инструкция SQL выбирает первые три записи из таблицы "Customers", где страна - "Germany":
SELECT TOP 3 * FROM Customers
WHERE Country='Germany';
▪ Следующий оператор SQL показывает эквивалентный пример использования LIMIT:
SELECT * FROM Customers
WHERE Country='Germany'
LIMIT 3;
▪ Следующая инструкция SQL показывает соответствующий пример использования параметра ROWNUM:
SELECT * FROM Customers
WHERE Country='Germany' AND ROWNUM <= 3;
@sqlhub
👍18❤2🔥2
🏃Как ускорить базу данных при помощи шардирования
• Шардирование было одним из первых механизмов, позволяющих распределять базы данных для повышения их производительности. Последние инновации превратили шардирование в один из лучших механизмов в своем роде.
🤔 Для чего требуется шардирование?
• Традиционные базы данных порой не справляются с обработкой растущих объемов данных и нарастающего трафика запросов. Сегодня очень популярны концепции NoSQL и NewSQL – соответственно, на рынке баз данных появляется все больше продуктов, вдохновленных этими новыми концепциями. Но их одних недостаточно, чтобы решить все более серьезные проблемы с данными.
Шардирование – это прием, позволяющий разбивать данные на отдельные строки и столбцы, хранимые на отдельных инстансах серверов базы данных. Так удается распределить нагрузку, оказываемую трафиком. Каждая такая малая таблица называется «шард». Некоторые NoSQL-продукты шардируются, таковы, например, Apache HBase или MongoDB. Шардинговая архитектура встроена в NewSQL-системы.
👀Как шардировать базу данных?
Один из наилучших способов создания шардов таков: данные нужно разделять на множество небольших таблиц. Они также называются «сегментами» (partitions).
Вот две ключевые составляющие шардирования:
▪Шардинговый ключ: конкретное значение в столбце, указывающее, в каком шарде хранится данная строка.
▪Шардинговый алгоритм: алгоритм, согласно которому ваши данные распределяются в одном или нескольких шардах.
Шаг 1: Проанализировать сценарий запроса и распределение данных, чтобы найти шардинговый ключ и шардинговый алгоритм
Шаг 2: Миграция имеющихся данных
Шаг 3: Перебросить трафик на новый кластер
Более детально тут. 👈
@sqlhub
• Шардирование было одним из первых механизмов, позволяющих распределять базы данных для повышения их производительности. Последние инновации превратили шардирование в один из лучших механизмов в своем роде.
🤔 Для чего требуется шардирование?
• Традиционные базы данных порой не справляются с обработкой растущих объемов данных и нарастающего трафика запросов. Сегодня очень популярны концепции NoSQL и NewSQL – соответственно, на рынке баз данных появляется все больше продуктов, вдохновленных этими новыми концепциями. Но их одних недостаточно, чтобы решить все более серьезные проблемы с данными.
Шардирование – это прием, позволяющий разбивать данные на отдельные строки и столбцы, хранимые на отдельных инстансах серверов базы данных. Так удается распределить нагрузку, оказываемую трафиком. Каждая такая малая таблица называется «шард». Некоторые NoSQL-продукты шардируются, таковы, например, Apache HBase или MongoDB. Шардинговая архитектура встроена в NewSQL-системы.
👀Как шардировать базу данных?
Один из наилучших способов создания шардов таков: данные нужно разделять на множество небольших таблиц. Они также называются «сегментами» (partitions).
Вот две ключевые составляющие шардирования:
▪Шардинговый ключ: конкретное значение в столбце, указывающее, в каком шарде хранится данная строка.
▪Шардинговый алгоритм: алгоритм, согласно которому ваши данные распределяются в одном или нескольких шардах.
Шаг 1: Проанализировать сценарий запроса и распределение данных, чтобы найти шардинговый ключ и шардинговый алгоритм
Шаг 2: Миграция имеющихся данных
Шаг 3: Перебросить трафик на новый кластер
Более детально тут. 👈
@sqlhub
👍10🔥3❤1