Базы данных (Data Base) – Telegram
Базы данных (Data Base)
8.21K subscribers
566 photos
468 videos
19 files
545 links
Базы данных (Data Base). По всем вопросам @evgenycarter
Download Telegram
SQL-Cheat-Sheet-Summary-Full.png
1.8 MB
Шпаргалка по SQL в формате PNG

👉 @database_info
3
Neo4j. Вместо тысячи join-ов…

Если вы столкнулись с задачей хранения сильно связанных данных, то отличным вариантом будет использовать графовую модель данных. Мы в Текфорс сделали именно так. Почему - разберем в этой статье, где я:

приведу общую информацию о том, где применяются графовые БД;

расскажу про Neo4j как один из примеров такой БД;
покажу на примере как использовать Neo4j через Spring Data.
Статья будет полезна тем, кто:
хочет расширить кругозор в плане графовых БД;
сомневается в правильности выбора типа БД;
ищет вводный материал по работе с Spring Data Neo4J.

https://habr.com/ru/post/711646/

👉 @database_info
👍3
Руководство по стилю SQL · SQL Style Guide

Рекомендации, описанные в этом руководстве, во многом пересекаются с описанными в книге Джо Селко «Стиль программирования Джо Селко на SQL» (оригинал: SQL Programming Style). Это, в частности, найдут полезным те, кто уже знаком с этой книгой. Тем не менее автор этого руководства в некоторых аспектах более категоричен, нежели Джо Селко, а в других, напротив, более гибок. И, конечно, нельзя не отметить, что это руководство значительно короче и лаконичнее книги Селко — здесь вы не встретите ни весёлых историй из жизни, наглядно объясняющих, как и почему лучше не делать, ни длинных повествований, мотивирующих на использование той или иной рекомендации.

https://www.sqlstyle.guide/ru/

👉 @database_info
👍10
Базы данных

Введение
Введение (практика)
Моделирование БД
Моделирование БД (практика)
Реляционная модель и функциональные зависимости
Реляционная модель и функциональные зависимости (практика)
Нормализация баз данных
Нормализация баз данных (практика)
Реляционная алгебра
Реляционная алгебра (практика)

источник

#db

👉 @database_info
👍3
Media is too big
VIEW IN TELEGRAM
NoSQL для начинающих 👨‍💻 На примере MongoDB

00:00 - Что такое NoSQL и где он применяется?
04:18 - Основные виды NoSQL
06:04 - Дополнительные темы
09:31 - SQL vs NoSQL
11:53 - Немного о MongoDB
14:37 - Практика. Моделирование структуры. Работа с shell и Compass

#db

👉 @database_info
👍4
SQL и NoSQL. Правда ли одно лучше другого?

Базы данных (БД) существуют с первых дней программирования, а появились они ещё раньше. Это — неотъемлемые части любых приложений. Хорошо спроектированная БД — это один из важнейших компонентов, влияющих на производительность программных проектов. Из-за этого множество архитекторов программных решений исследовали массу подходов к управлению данными, пытаясь выяснить то, какие из этих подходов работоспособны в определённых сценариях, а какие — нет. Выбор подходящей архитектуры БД обычно сводится к выбору между SQL и NoSQL, между реляционными и нереляционными базами данных. А иногда в одном проекте используют и то, и другое.

Rus https://habr.com/ru/company/wunderfund/blog/691178/

Eng https://medium.com/@enjonpodrimaj/sql-vs-nosql-e3887c58664d

#db

👉 @database_info
👍3
Шпаргалка по MySQL

Коннект к mysql по TCP
mysql --user root --host localhost --port 3306 --protocol tcp

Создать БД
CREATE DATABASE $DB_NAME character set utf8;

Добавить пользователя
CREATE USER $DB_USER@localhost IDENTIFIED BY '$DB_PASSWORD';

Дать права пользователю на БД
GRANT ALL ON $DB_NAME.* TO $DB_USER@localhost;

на удаленный доступ:
GRANT ALL PRIVILEGES ON $DB_NAME.* TO $DB_USER@'%' IDENTIFIED BY '$DB_PASSWORD';

на удаленный доступ на все таблицы:
grant all privileges on *.* to DB_USER@'%';

сменить пароль пользователю
SET PASSWORD FOR логин@localhost = PASSWORD('пароль'); SET PASSWORD FOR логин@"%" = PASSWORD('пароль');

что бы права вступили в силу:
flush privileges;

Посмотреть права пользователя
SHOW GRANTS for $DB_USER@localhost;

Если нужно залить большой дамп, то в /etc/my.cnf в секцию [mysqld] добавить:
max_allowed_packet = 16M

Работа с кластером мастер-слейв

посмотреть состояние мастера:
show master status;

посмотреть состояние слейва:
SHOW SLAVE STATUS\G

Посмотреть структуры таблицы в БД
describe <table_name>;

или
SHOW CREATE TABLE <table_name>;

Посмотреть состояние таблиц в БД
SHOW TABLE STATUS;

Сброс пароля mysql
1). В /etc/mycnf в секцию [mysqld] вставляем строку skip-grant-tables
2). Перезапустить mysqld.

После этого пароль будут сброшен и можно ввести любой другой.

#db

👉 @database_info
👍111🔥1
8 книг по PostgreSQL: от баз данных с «нуля» для самоучек до руководства про БД в облаках

В целом, эта объектно-реляционная СУБД в дополнительном представлении не нуждается. Разработанная более 20 лет назад, она предназначена для создания и поддержки баз данных серверных приложений, в том числе ресурсоемких аналитических БД. Одна из особенностей PostgreSQL — открытый исходный код. Мы любим ее за развитое комьюнити и возможность развернуть «постгрю» самостоятельно и бесплатно.

Подготовили подборку полезных книг для тех, кто только начал или собирается работать с PostgreSQL. В нее вошли актуальные руководства на русском и английском языках. Если знаете еще одну-две отличных книги, смело рекомендуйте в комментариях.

https://habr.com/ru/company/selectel/blog/713714/

👉 @database_info
👍8
Вопрос с собеседования Amazon

Напишите запрос, который будет идентифицировать возвращающихся активных пользователей. Вернувшийся активный пользователь — это пользователь, совершивший вторую покупку в течение 7 дней после любой другой покупки. Выведите список user_id этих вернувшихся активных пользователей.

amazon_transactions

id:int
user_id:int
item:varchar
created_at:datetime
revenue:int


Ответ

SELECT
DISTINCT(a.user_id)
FROM amazon_transactions a
JOIN amazon_transactions b
ON a.user_id = b.user_id
WHERE a.created_at - b.created_at BETWEEN 0 AND 7
AND a.id != b.id


#db

👉 @database_info
👍16
Рекомендуем к прочтению книгу Александра Бындю "Антихрупкость в IT"

Эта книга — результат многолетнего опыта построения IT-продуктов. И прежде всего она о том, как выстроить процессы разработки IT-систем таким образом, чтобы успевать вовремя подстроиться под любые изменения.

В её основе — описание работающих практик, примеры из реальных проектов, анализ ошибок и выводы. В книге собраны рекомендации для владельцев бизнеса и разработчиков. Первые приобретут систематизированные знания о том, как правильно взаимодействовать с IT, а вторые — как делать хорошо и не делать плохо.

Сайт издания

Ознакомиться с книгой