Media is too big
VIEW IN TELEGRAM
MongoDB. Полный курс
MongoDB - документно-ориентированная, NoSQL база, используемая для хранения больших объемов информации. Основная особенность базы - это представление данных в виде документов, структура которых напоминает JSON. Благодаря такому подходу MongoDB работает быстрее, обладает лучшей масштабируемость и ее легче использовать. Весь курс можно разбить на 2 основные части. В первой, мы разберём особенности работы с MongoDB, ключевые команды взаимодействия с базой и коллекцией. Команды поиска, сортировки, удаления и редактирования элементов. Во второй, используя Node.js, Express и библиотеку mongoose создадим свой API поддерживающий весь стэк CRUD операций.
✔ 0:00 - Введение (Introduction)
✔ 2:11 - Основные понятия (Basic Concepts)
✔ 9:15 - Установка инструментов (Installing Tools)
✔ 14:39 - Использование MongoDB Compass и Shell (Using MongoDB Compass & Shell)
✔ 20:04 - Добавление новых данных (Adding New Documents)
✔ 25:50 - Поиск документов (Finding Documents)
✔ 32:49 - Лимит и сортировка данных (Limiting & Sorting Data)
✔ 40:07 - Операторы и составные запросы (Operators & Complex Queries)
✔ 47:54 - Запросы вложенных документов (Querying Nested Documents)
✔ 53:55 - Удаление и обновление документов (Deleting & Updating Documents)
✔ 1:00:22 - Сложное обновление документов (Complex Updating Documents)
✔ 1:06:48 - Полезные методы и операторы (Useful Methods & Operators)
✔ 1:14:19 - Управление базами и коллекциями (Managing DBs & Collections)
✔ 1:21:06 - Создание сервера, подключение к БД (Creating Server & Connecting To MongoDB)
✔ 1:29:21 - Курсоры и получение данных (Cursors & Fetching Data)
✔ 1:35:09 - Чтение и удаление документа (Fetching & Removing Document)
✔ 1:40:51 - Создание и обновление документа (Creating & Updating Document)
✔ 1:47:28 - Интеграция mongoose (Mongoose Integration. Part I)
✔ 1:57:41 - Интеграция mongoose (Mongoose Integration. Part II)
✔ 2:04:43 - MVC и Роутер (MVC Pattern & Router)
✔ 2:12:58 - Облачная база данных MongoDB Atlas (MongoDB Atlas)
истрчник
#db
👉 @database_info
MongoDB - документно-ориентированная, NoSQL база, используемая для хранения больших объемов информации. Основная особенность базы - это представление данных в виде документов, структура которых напоминает JSON. Благодаря такому подходу MongoDB работает быстрее, обладает лучшей масштабируемость и ее легче использовать. Весь курс можно разбить на 2 основные части. В первой, мы разберём особенности работы с MongoDB, ключевые команды взаимодействия с базой и коллекцией. Команды поиска, сортировки, удаления и редактирования элементов. Во второй, используя Node.js, Express и библиотеку mongoose создадим свой API поддерживающий весь стэк CRUD операций.
✔ 0:00 - Введение (Introduction)
✔ 2:11 - Основные понятия (Basic Concepts)
✔ 9:15 - Установка инструментов (Installing Tools)
✔ 14:39 - Использование MongoDB Compass и Shell (Using MongoDB Compass & Shell)
✔ 20:04 - Добавление новых данных (Adding New Documents)
✔ 25:50 - Поиск документов (Finding Documents)
✔ 32:49 - Лимит и сортировка данных (Limiting & Sorting Data)
✔ 40:07 - Операторы и составные запросы (Operators & Complex Queries)
✔ 47:54 - Запросы вложенных документов (Querying Nested Documents)
✔ 53:55 - Удаление и обновление документов (Deleting & Updating Documents)
✔ 1:00:22 - Сложное обновление документов (Complex Updating Documents)
✔ 1:06:48 - Полезные методы и операторы (Useful Methods & Operators)
✔ 1:14:19 - Управление базами и коллекциями (Managing DBs & Collections)
✔ 1:21:06 - Создание сервера, подключение к БД (Creating Server & Connecting To MongoDB)
✔ 1:29:21 - Курсоры и получение данных (Cursors & Fetching Data)
✔ 1:35:09 - Чтение и удаление документа (Fetching & Removing Document)
✔ 1:40:51 - Создание и обновление документа (Creating & Updating Document)
✔ 1:47:28 - Интеграция mongoose (Mongoose Integration. Part I)
✔ 1:57:41 - Интеграция mongoose (Mongoose Integration. Part II)
✔ 2:04:43 - MVC и Роутер (MVC Pattern & Router)
✔ 2:12:58 - Облачная база данных MongoDB Atlas (MongoDB Atlas)
истрчник
#db
👉 @database_info
👍2
Переход на PgCat — прокси-сервер Postgres следующего поколения
PgCat — это open source прокси-сервер Postgresql, в развитии которого мы участвуем и который используем на продакшене. Функционал PgCat для кластеров Postgresql: пул соединений, балансировка нагрузки, отработка отказа реплики.
В Instacart мы применяем Postgresql почти для всех задач баз данных: эффективным кешированием, индексированием, оптимизацией запросов и вертикальным масштабированием экземпляров выжимаем из одного экземпляра Postgres немало производительности. Все это отличные стратегии, но с ними далеко не уедешь. Не ограничиваясь одним экземпляром за счет добавления реплик чтения или горизонтального сегментирования БД, мы в обоих случаях увеличиваем сложность.
https://tech.instacart.com/adopting-pgcat-a-nextgen-postgres-proxy-3cf284e68c2f
#db
👉 @database_info
PgCat — это open source прокси-сервер Postgresql, в развитии которого мы участвуем и который используем на продакшене. Функционал PgCat для кластеров Postgresql: пул соединений, балансировка нагрузки, отработка отказа реплики.
В Instacart мы применяем Postgresql почти для всех задач баз данных: эффективным кешированием, индексированием, оптимизацией запросов и вертикальным масштабированием экземпляров выжимаем из одного экземпляра Postgres немало производительности. Все это отличные стратегии, но с ними далеко не уедешь. Не ограничиваясь одним экземпляром за счет добавления реплик чтения или горизонтального сегментирования БД, мы в обоих случаях увеличиваем сложность.
https://tech.instacart.com/adopting-pgcat-a-nextgen-postgres-proxy-3cf284e68c2f
#db
👉 @database_info
👍4
Высокодоступный MySQL на конвейере
Что нужно автоматизировать в управляемой базе данных? Какие нас ждут проблемы эксплуатации MySQL в облаках? Разберём существующие решения, позволяющие обеспечивать эффективную конфигурацию под высокую доступность и высокие нагрузки, а также их недостатки и практическое применение.
Поможет нам в этом Дмитрий Смаль, руководитель подразделения Managed MySQL и SQL Server в Yandex Cloud. Каждый день он занимается эксплуатацией и автоматизацией СУБД, а до этого делал нагруженные и не очень web-приложения. В целом любит делать разные интересные штуковины, которые работают! Сегодня мы с ним будем говорить про решение для высокодоступного MySQL.
https://habr.com/ru/companies/oleg-bunin/articles/754634/
#db
👉 @database_info
Что нужно автоматизировать в управляемой базе данных? Какие нас ждут проблемы эксплуатации MySQL в облаках? Разберём существующие решения, позволяющие обеспечивать эффективную конфигурацию под высокую доступность и высокие нагрузки, а также их недостатки и практическое применение.
Поможет нам в этом Дмитрий Смаль, руководитель подразделения Managed MySQL и SQL Server в Yandex Cloud. Каждый день он занимается эксплуатацией и автоматизацией СУБД, а до этого делал нагруженные и не очень web-приложения. В целом любит делать разные интересные штуковины, которые работают! Сегодня мы с ним будем говорить про решение для высокодоступного MySQL.
https://habr.com/ru/companies/oleg-bunin/articles/754634/
#db
👉 @database_info
👍2
Визуализация SQL-запроса
SQL-запросы выполняются системой базы данных в несколько этапов, в том числе:
- разбор SQL-запроса и проверка его достоверности
- преобразование SQL-запроса во внутреннее представление, например в реляционную алгебру
- Оптимизация внутреннего представления и создание плана выполнения, использующего информацию об индексах
- Выполнение плана и возврат результатов
#db
👉 @database_info
SQL-запросы выполняются системой базы данных в несколько этапов, в том числе:
- разбор SQL-запроса и проверка его достоверности
- преобразование SQL-запроса во внутреннее представление, например в реляционную алгебру
- Оптимизация внутреннего представления и создание плана выполнения, использующего информацию об индексах
- Выполнение плана и возврат результатов
#db
👉 @database_info
👍9
T-SQL Fundamentals, 4th Edition
Автор: Itzik Ben-Gan (2023)
Начиная с истории создания запросов и программирования на T-SQL, книга также включает: логическую обработку запросов, конструкции запросов (запросы к одной таблице, объединения, подзапросы, табличные выражения, операторы набора, анализ данных), модификации данных, временные таблицы, транзакции и параллелизм, SQL Graph (совершенно новый для этого издания), а также программные конструкции T-SQL. В книгу включены обширные упражнения и решения с пояснениями, что позволяет читателю на практике применять полученные знания.
#db
👉 @database_info
Автор: Itzik Ben-Gan (2023)
Начиная с истории создания запросов и программирования на T-SQL, книга также включает: логическую обработку запросов, конструкции запросов (запросы к одной таблице, объединения, подзапросы, табличные выражения, операторы набора, анализ данных), модификации данных, временные таблицы, транзакции и параллелизм, SQL Graph (совершенно новый для этого издания), а также программные конструкции T-SQL. В книгу включены обширные упражнения и решения с пояснениями, что позволяет читателю на практике применять полученные знания.
#db
👉 @database_info
👍4
UNION в SQL
Оператор
Далее приведены основные правила объединения наборов результатов двух запросов SELECT с помощью
- Количество и порядок столбцов должны быть одинаковыми во всех запросах.
- Типы данных соответствующих столбцов должны быть совместимы.
Если эти критерии выполняются, то таблицы совместимы с оператором UNION.
Синтаксис
Базовый синтаксис оператора
SELECT список_столбцов FROM таблица1
UNION SELECT список_столбцов FROM таблица2;
Чтобы лучше понять, как работает оператор
Таблица employees
+----+------------+-----------+--------+
| id | first_name | last_name | salary |
+----+------------+-----------+--------+
| 1 | Ethan | Hunt | 5000 |
| 2 | Tony | Montana | 6500 |
| 3 | Sarah | Connor | 8000 |
| 4 | Rick | Deckard | 7200 |
| 5 | Martin | Blank | 5600 |
+----+------------+-----------+--------+
Таблица departments
+----+------------+-----------+----------+
| id | first_name | last_name | city |
+----+------------+-----------+----------+
| 1 | Maria | Anders | Berlin |
| 2 | Fran | Wilson | Madrid |
| 3 | Dominique | Perrier | Paris |
| 4 | Martin | Blank | Turin |
| 5 | Thomas | Hardy | Portland |
+----+------------+-----------+----------+
Выполним оператор
Следующая команда вернет имена и фамилии всех клиентов и сотрудников:
SELECT first_name, last_name FROM employees
UNION
SELECT first_name, last_name FROM customers;
После выполнения приведенной выше команды вы получите такой результат:
+---------------+--------------+
| first_name | last_name |
+---------------+--------------+
| Ethan | Hunt |
| Tony | Montana |
| Sarah | Connor |
| Rick | Deckard |
| Martin | Blank |
| Maria | Anders |
| Fran | Wilson |
| Dominique | Perrier |
| Thomas | Hardy |
+---------------+--------------+
Оператор
Однако если вы хотите оставить дублирующиеся строки, используйте ключевое слово
SELECT first_name, last_name FROM employees
UNION ALL
SELECT first_name, last_name FROM customers;
#db
👉 @database_info
Оператор
UNION используется для объединения результатов двух или более запросов SELECT в один набор результатов. Команда UNION отличается от JOIN-операторов, которые объединяют столбцы из двух таблиц. UNION создает новую таблицу, помещая все строки из двух исходных таблиц в таблицу результатов и располагая эти строки друг над другом.Далее приведены основные правила объединения наборов результатов двух запросов SELECT с помощью
UNION:- Количество и порядок столбцов должны быть одинаковыми во всех запросах.
- Типы данных соответствующих столбцов должны быть совместимы.
Если эти критерии выполняются, то таблицы совместимы с оператором UNION.
Синтаксис
Базовый синтаксис оператора
UNION представлен следующим образом:SELECT список_столбцов FROM таблица1
UNION SELECT список_столбцов FROM таблица2;
Чтобы лучше понять, как работает оператор
UNION, предположим, что в таблицах employees и departments существуют некоторые гипотетические поля first_name и last_name. Обратите внимание, что эти поля на самом деле не существуют в демонстрационных таблицах.Таблица employees
+----+------------+-----------+--------+
| id | first_name | last_name | salary |
+----+------------+-----------+--------+
| 1 | Ethan | Hunt | 5000 |
| 2 | Tony | Montana | 6500 |
| 3 | Sarah | Connor | 8000 |
| 4 | Rick | Deckard | 7200 |
| 5 | Martin | Blank | 5600 |
+----+------------+-----------+--------+
Таблица departments
+----+------------+-----------+----------+
| id | first_name | last_name | city |
+----+------------+-----------+----------+
| 1 | Maria | Anders | Berlin |
| 2 | Fran | Wilson | Madrid |
| 3 | Dominique | Perrier | Paris |
| 4 | Martin | Blank | Turin |
| 5 | Thomas | Hardy | Portland |
+----+------------+-----------+----------+
Выполним оператор
UNION, чтобы объединить результаты двух запросов.Следующая команда вернет имена и фамилии всех клиентов и сотрудников:
SELECT first_name, last_name FROM employees
UNION
SELECT first_name, last_name FROM customers;
После выполнения приведенной выше команды вы получите такой результат:
+---------------+--------------+
| first_name | last_name |
+---------------+--------------+
| Ethan | Hunt |
| Tony | Montana |
| Sarah | Connor |
| Rick | Deckard |
| Martin | Blank |
| Maria | Anders |
| Fran | Wilson |
| Dominique | Perrier |
| Thomas | Hardy |
+---------------+--------------+
Оператор
UNION по умолчанию удаляет дублирующиеся строки из объединенного набора результатов. Вот почему приведенный выше запрос возвращает только 9 строк. Если вы заметили, имя Martin Blank встречается и в таблице employees, и в таблице customers. Однако если вы хотите оставить дублирующиеся строки, используйте ключевое слово
ALL, как показано ниже:SELECT first_name, last_name FROM employees
UNION ALL
SELECT first_name, last_name FROM customers;
#db
👉 @database_info
👍7
Темпоральные типы в PostgreSQL и их использование
Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня это заинтересовало? Мне много раз приходилось сталкиваться с тем, что из-за разницы часовых поясов не сходились отчёты за месяц или даже за сутки. Подобные проблемы возникают из-за н
https://habr.com/ru/companies/postgrespro/articles/766998/
#db
👉 @database_info
Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня это заинтересовало? Мне много раз приходилось сталкиваться с тем, что из-за разницы часовых поясов не сходились отчёты за месяц или даже за сутки. Подобные проблемы возникают из-за н
https://habr.com/ru/companies/postgrespro/articles/766998/
#db
👉 @database_info
👍2
QueryFlow
Анализ и визуализация выполнения SQL-запросов
https://github.com/oslabs-beta/QueryFlow
#db
👉 @database_info
Анализ и визуализация выполнения SQL-запросов
https://github.com/oslabs-beta/QueryFlow
#db
👉 @database_info
👍2
LIKE в SQL
До сих пор мы сталкивались с условими, которые определяют точную строку, например WHERE name='Lois Lane'. Но в SQL можно использовать частичное или шаблонное сопоставление, используя оператор LIKE.
Оператор LIKE обеспечивает соответствие заданному шаблону, позволяя указывать подстановочные знаки для одного или нескольких символов. Для этого можно использовать следующие символы подстановки:
https://telegra.ph/LIKE-v-SQL-10-17
#db
👉 @database_info
До сих пор мы сталкивались с условими, которые определяют точную строку, например WHERE name='Lois Lane'. Но в SQL можно использовать частичное или шаблонное сопоставление, используя оператор LIKE.
Оператор LIKE обеспечивает соответствие заданному шаблону, позволяя указывать подстановочные знаки для одного или нескольких символов. Для этого можно использовать следующие символы подстановки:
https://telegra.ph/LIKE-v-SQL-10-17
#db
👉 @database_info
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
SQL для начинающих
Первые SQL запросы
Составные условия
Порядок AND и OR
Сортировка результатов (ORDER BY)
Ограничение и смещение (LIMIT, OFFSET)
20 типичных ошибок начинающего SQL разработчика, часть 1
TOP, LIMIT, OFFSET в других базах данных
источник
#db
👉 @database_info
Первые SQL запросы
Составные условия
Порядок AND и OR
Сортировка результатов (ORDER BY)
Ограничение и смещение (LIMIT, OFFSET)
20 типичных ошибок начинающего SQL разработчика, часть 1
TOP, LIMIT, OFFSET в других базах данных
источник
#db
👉 @database_info
👍3
Оптимизация работы с большим объемом данных при помощи партиционирования в SQL
Работа с большим объемом данных является неотъемлемой частью профессиональной разработки. Независимо от того, занимаетесь ли вы разработкой веб-приложений, аналитикой данных или созданием сложных систем управления, эффективная обработка больших объемов данных – это фундамент успеха вашего проекта.
Как разработчики, мы часто сталкиваемся с задачами, в которых требуется обрабатывать и анализировать огромные объемы данных. Наша задача – сделать это эффективно и быстро.
Оптимизация работы с данными позволяет нам снизить временные затраты, улучшить производительность и повысить доступность нашего приложения. Быстрая и надежная обработка данных также улучшает качество принимаемых решений и способствует успешным бизнес-операциям. Поэтому важно научиться эффективно работать с большими объемами данных и использовать подходы, которые позволят нам извлекать максимальную выгоду из наших ресурсов.
Одним из эффективных методов оптимизации работы с большим объемом данных является партиционирование. Партиционирование – это разделение таблицы на отдельные части (партиции) с целью улучшить производительность выполнения SQL запросов.
https://habr.com/ru/companies/otus/articles/745872/
#db
👉 @database_info
Работа с большим объемом данных является неотъемлемой частью профессиональной разработки. Независимо от того, занимаетесь ли вы разработкой веб-приложений, аналитикой данных или созданием сложных систем управления, эффективная обработка больших объемов данных – это фундамент успеха вашего проекта.
Как разработчики, мы часто сталкиваемся с задачами, в которых требуется обрабатывать и анализировать огромные объемы данных. Наша задача – сделать это эффективно и быстро.
Оптимизация работы с данными позволяет нам снизить временные затраты, улучшить производительность и повысить доступность нашего приложения. Быстрая и надежная обработка данных также улучшает качество принимаемых решений и способствует успешным бизнес-операциям. Поэтому важно научиться эффективно работать с большими объемами данных и использовать подходы, которые позволят нам извлекать максимальную выгоду из наших ресурсов.
Одним из эффективных методов оптимизации работы с большим объемом данных является партиционирование. Партиционирование – это разделение таблицы на отдельные части (партиции) с целью улучшить производительность выполнения SQL запросов.
https://habr.com/ru/companies/otus/articles/745872/
#db
👉 @database_info
👍3
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Администрирование PostgreSQL. Базовый курс
Тема 00 «Введение».
Тема 01 «Установка и управление сервером».
Тема 02 «Использование psql».
Тема 03 «Конфигурирование».
Тема 04 «Общее устройство PostgreSQL».
Тема 05 «Изоляция и многоверсионность».
Тема 06 «Буферный кэш и журнал».
Тема 07 «Базы данных и схемы».
Тема 08 «Системный каталог».
Тема 09 «Табличные пространства».
источник
#db
👉 @database_info
Тема 00 «Введение».
Тема 01 «Установка и управление сервером».
Тема 02 «Использование psql».
Тема 03 «Конфигурирование».
Тема 04 «Общее устройство PostgreSQL».
Тема 05 «Изоляция и многоверсионность».
Тема 06 «Буферный кэш и журнал».
Тема 07 «Базы данных и схемы».
Тема 08 «Системный каталог».
Тема 09 «Табличные пространства».
источник
#db
👉 @database_info
👍2🔥2