📂Оптимизация данных в MS SQL
Одним из методов для оптимизации обработки, хранения и администрирования данных в базе данных и кубах MS SQL — это процесс создании партицирования данных.
Partitioning (партицирование или по-другому секционирование) — это разбиение таблицы на несколько частей, а эти части на одну или несколько файловых групп.
• Партицирование необходимо для целей ускорения доступа чтения или изменения данных и администрирования. Т.к. выровненный индекс по таблице будет содержаться в каждой условно своей секции, то при чтении или изменении данных будет обращение к конкретной секции и конкретному индексу в этой секции.
• Со стороны администрирования для процесса переноса (например архивирования) данных в другую таблицу без физического перемещения данных, а перемещения только логической секций, подлежащих этой операции, выполнение этого действия происходит мгновенно, что экономит время и ресурсы машины. Для этого необходимо подготовить таблицу «архив» — копию по структуре с таблицей источника, она может быть не партицированна.
Пример кода для переноса в таблицу:
Но если мы хотим перемещать в партицированную таблицу, то таблица приемник должна использовать ту же функцию и схему партицирования, или схему и функцию повторяющую нужные нам диапазоны секционирования. Так же таблица должна содержать CONSTRAINT (ограничение), которое накладывается по полю секционирования.
📌 Продолжение
@sqlhub
Одним из методов для оптимизации обработки, хранения и администрирования данных в базе данных и кубах MS SQL — это процесс создании партицирования данных.
Partitioning (партицирование или по-другому секционирование) — это разбиение таблицы на несколько частей, а эти части на одну или несколько файловых групп.
• Партицирование необходимо для целей ускорения доступа чтения или изменения данных и администрирования. Т.к. выровненный индекс по таблице будет содержаться в каждой условно своей секции, то при чтении или изменении данных будет обращение к конкретной секции и конкретному индексу в этой секции.
• Со стороны администрирования для процесса переноса (например архивирования) данных в другую таблицу без физического перемещения данных, а перемещения только логической секций, подлежащих этой операции, выполнение этого действия происходит мгновенно, что экономит время и ресурсы машины. Для этого необходимо подготовить таблицу «архив» — копию по структуре с таблицей источника, она может быть не партицированна.
Пример кода для переноса в таблицу:
ALTER TABLE DB.schema.table_sourse SWITCH PARTITION 1 TO DB.schema.table_arch;
Но если мы хотим перемещать в партицированную таблицу, то таблица приемник должна использовать ту же функцию и схему партицирования, или схему и функцию повторяющую нужные нам диапазоны секционирования. Так же таблица должна содержать CONSTRAINT (ограничение), которое накладывается по полю секционирования.
📌 Продолжение
@sqlhub
👍13❤5🔥2
Наиболее распространенной и используемой уязвимостью на веб-сайтах является SQL-инъекция.
• Одним из самых полезных и мощных инструментов для оценки уязвимостей SQL-инъекций является sqlmap. Инструмент написан на Python, который автоматизирует разведку и эксплуатацию Firebird, Microsoft SQL, MySQL (теперь называется MariaDB, разработанный сообществом и коммерчески поддерживаемый форк MySQL), Базы данных Oracle, PostgreSQL, Sybase и SAP MaxDB.
Мы продемонстрируем атаку SQL-инъекцией на базу данных Mutillidae.
1) Определить веб-сервер, внутреннюю систему управления базами данных и доступные базы данных.
2) Получите доступ к веб-сайту Mutillidae и просмотрите веб-страницы, чтобы определить те, которые принимают пользовательский ввод (например, форма входа пользователя, которая принимает имя пользователя и пароль от удаленного пользователя); эти страницы могут быть уязвимы для SQL-инъекций.
3) Затем откройте Kali и из терминала введите следующее (используя соответствующий целевой IP-адрес):
root@kali:~# sqlmap -u 'http://targetip/mutillidae/index.php?page=user- info.php&username=admin&password=&user-info-php-submitbutton=
sqlmap вернет данные, как показано на *рисунке 1.
• Наиболее вероятной базой данных для хранения данных приложения, является БД Mutillidae; поэтому мы проверим все таблицы этой базы данных, используя следующую команду:
root@kali:~# sqlmap -u "http://yourip/mutillidae/index.php?page=user-info.php&username=&password=&user-info-php-submit-button=View+Account+Details" -D mutillidae --tables
Данные, возвращаемые при выполнении этой команды, показаны на *рисунке 2.
📌Читать далее
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤3🔥3😁1
🤖12 сервисов искусственного интеллекта, для написания кода.
Mutable AI
Альтернатива Copilot, которая предлагает бесплатную версию со сокращенным функционалом, а стоимость ее платной подписки варьируется от $10 до $25 в месяц. Эта альтернатива также предлагает следующие возможности: автодополнение кода, управление с помощью промптов, рефакторинг кода и автоматическую документацию.
SpellBox
Это AI-помощник для программистов, который можно установить как настольное приложение (для Windows и macOS), так и как плагин для VS Code. Он способен генерировать код в ответ на запросы, объяснять принципы работы программы и сохранять фрагменты кода в закладках.
StarCoder
Это AI-ассистент, который может создавать код на 80 языках, обученный на данных из GitHub. Эта модель похожа на GitHub Copilot, но с открытым исходным кодом и, по мнению разработчиков, она лучше других моделей.
Blackbox AI
BlackboxAI поддерживает более 20 языков программирования, включая Python, Java, C, C++, C#, JavaScript, SQL, PHP, Go, TypeScript, Kotlin, MATLAB, R, Swift, Rust, Ruby, Dart и Scala.
Ghostwriter Chat
Разработчики Replit создали не имеющую себе равных онлайн-IDE, которая основана на искусственном интеллекте. Эта инновационная система способна написать код в соответствии с контекстом проекта и не только дополняет код, написанный программистом, но и помогает отслеживать ошибки.
CodeSquire.ai
Это ИИ-ассистент, который помогает дата-сайентистам, инженерам и аналитикам. Он способен генерировать код в ответ на вопросы, создавать функции различной сложности, преобразовывать вводимые команды в SQL-запросы и детально объяснять, как работает каждый блок кода.
Toolbuilder
Toolbuilder позволяет быстро создавать ИИ-приложения и чат-боты, которые хранятся и запускаются на сайте. Вы можете поделиться ссылками на приложения с друзьями, а для выбора подходящего инструмента есть каталог готовых приложений, например, инструменты для поиска персонализированных подарков, анализа SEO показателей, рекомендации коктейлей и описания товаров. Еще один популярный инструмент - генератор постов для блога. Также вы можете использовать Toolbuilder для описания сюжета фильма с помощью эмодзи и иконок.
Safurai
Это бесплатный инструмент на основе искусственного интеллекта, который можно использовать как плагин для VS Code. Для того чтобы воспользоваться ее возможностями, достаточно выделить фрагмент кода: Safurai объяснит, как он работает, предложит советы по оптимизации и рефакторингу, напишет необходимые тесты и документацию. Будучи обучаемым на коде проекта, он запомнит все заданные вопросы.
Text2SQL
Text2SQL - данный искусственный интеллект создает запросы SQL, регулярные выражения, дизайны баз данных и формулы для Excel и Google Sheets. Присутствует бесплатный тариф, в то время как цены платной подписки варьируются от $2.49 до $4.99 в месяц.
Code Snippets AI
Приложение, использующее технологию GPT-4 для генерации кода. По вопросу о необходимости данного инструмента, разработчики отвечают, что это более экономичный вариант по сравнению с оригинальным ChatGPT Plus, подписка на который стоит $24 в месяц, в то время как подписка на Code Snippets AI обойдется в $10 в месяц.
CodiumAI
CodiumAI - программа для тестирования, использующая TestGPT-1 и GPT-3.5 & 4 для интеллектуального создания тестов и обработки кода, выявления ошибок и багов. В настоящее время этот инструмент работает с кодом Python, JavaScript и TypeScript. Благодаря подключению к VS Code и другим IDE от JetBrains, использование CodiumAI бесплатно.
Metabob
Metabob исправляет ошибки и выявляет уязвимости в коде, а также интегрируется с такими платформами, как VS Code, GitHub, BitBucket и GitLab. Эта программа берет под контроль все самые популярные языки программирования, включая Python, Javascript, Typescript, C++, С и Java, и предоставляет своевременные рекомендации по улучшению кода. B процессе работы Metabob автоматически производит рефакторинг кода разработчиков и искусственный разум.
@sqlhub
Mutable AI
Альтернатива Copilot, которая предлагает бесплатную версию со сокращенным функционалом, а стоимость ее платной подписки варьируется от $10 до $25 в месяц. Эта альтернатива также предлагает следующие возможности: автодополнение кода, управление с помощью промптов, рефакторинг кода и автоматическую документацию.
SpellBox
Это AI-помощник для программистов, который можно установить как настольное приложение (для Windows и macOS), так и как плагин для VS Code. Он способен генерировать код в ответ на запросы, объяснять принципы работы программы и сохранять фрагменты кода в закладках.
StarCoder
Это AI-ассистент, который может создавать код на 80 языках, обученный на данных из GitHub. Эта модель похожа на GitHub Copilot, но с открытым исходным кодом и, по мнению разработчиков, она лучше других моделей.
Blackbox AI
BlackboxAI поддерживает более 20 языков программирования, включая Python, Java, C, C++, C#, JavaScript, SQL, PHP, Go, TypeScript, Kotlin, MATLAB, R, Swift, Rust, Ruby, Dart и Scala.
Ghostwriter Chat
Разработчики Replit создали не имеющую себе равных онлайн-IDE, которая основана на искусственном интеллекте. Эта инновационная система способна написать код в соответствии с контекстом проекта и не только дополняет код, написанный программистом, но и помогает отслеживать ошибки.
CodeSquire.ai
Это ИИ-ассистент, который помогает дата-сайентистам, инженерам и аналитикам. Он способен генерировать код в ответ на вопросы, создавать функции различной сложности, преобразовывать вводимые команды в SQL-запросы и детально объяснять, как работает каждый блок кода.
Toolbuilder
Toolbuilder позволяет быстро создавать ИИ-приложения и чат-боты, которые хранятся и запускаются на сайте. Вы можете поделиться ссылками на приложения с друзьями, а для выбора подходящего инструмента есть каталог готовых приложений, например, инструменты для поиска персонализированных подарков, анализа SEO показателей, рекомендации коктейлей и описания товаров. Еще один популярный инструмент - генератор постов для блога. Также вы можете использовать Toolbuilder для описания сюжета фильма с помощью эмодзи и иконок.
Safurai
Это бесплатный инструмент на основе искусственного интеллекта, который можно использовать как плагин для VS Code. Для того чтобы воспользоваться ее возможностями, достаточно выделить фрагмент кода: Safurai объяснит, как он работает, предложит советы по оптимизации и рефакторингу, напишет необходимые тесты и документацию. Будучи обучаемым на коде проекта, он запомнит все заданные вопросы.
Text2SQL
Text2SQL - данный искусственный интеллект создает запросы SQL, регулярные выражения, дизайны баз данных и формулы для Excel и Google Sheets. Присутствует бесплатный тариф, в то время как цены платной подписки варьируются от $2.49 до $4.99 в месяц.
Code Snippets AI
Приложение, использующее технологию GPT-4 для генерации кода. По вопросу о необходимости данного инструмента, разработчики отвечают, что это более экономичный вариант по сравнению с оригинальным ChatGPT Plus, подписка на который стоит $24 в месяц, в то время как подписка на Code Snippets AI обойдется в $10 в месяц.
CodiumAI
CodiumAI - программа для тестирования, использующая TestGPT-1 и GPT-3.5 & 4 для интеллектуального создания тестов и обработки кода, выявления ошибок и багов. В настоящее время этот инструмент работает с кодом Python, JavaScript и TypeScript. Благодаря подключению к VS Code и другим IDE от JetBrains, использование CodiumAI бесплатно.
Metabob
Metabob исправляет ошибки и выявляет уязвимости в коде, а также интегрируется с такими платформами, как VS Code, GitHub, BitBucket и GitLab. Эта программа берет под контроль все самые популярные языки программирования, включая Python, Javascript, Typescript, C++, С и Java, и предоставляет своевременные рекомендации по улучшению кода. B процессе работы Metabob автоматически производит рефакторинг кода разработчиков и искусственный разум.
@sqlhub
👍14❤3🔥3🤬1
PgCat — это open source прокси-сервер Postgresql, в развитии которого мы участвуем и который используем на продакшене. Функционал PgCat для кластеров Postgresql: пул соединений, балансировка нагрузки, отработка отказа реплики.
• В Instacart мы применяем Postgresql почти для всех задач баз данных: эффективным кешированием, индексированием, оптимизацией запросов и вертикальным масштабированием экземпляров выжимаем из одного экземпляра Postgres немало производительности.
• Все это отличные стратегии, но с ними далеко не уедешь.
Не ограничиваясь одним экземпляром за счет добавления реплик чтения или горизонтального сегментирования БД, мы в обоих случаях увеличиваем сложность.
Почему PgCat?
📌 Разбираем подробно
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2❤1
QueryFlow - это бесплатное веб-приложение, которое отображает время выполнения запросов пользователя к базе данных.
И так же, позволяет разработчикам устанавливать пороги производительности на основе имеющихся данных.
#бд #инструменты
@sqlhub
И так же, позволяет разработчикам устанавливать пороги производительности на основе имеющихся данных.
#бд #инструменты
@sqlhub
👍14❤3🔥3😁1
🗂Оптимизация работы с большим объемом данных при помощи партиционирования в SQL
Оптимизация работы с данными позволяет нам снизить временные затраты, улучшить производительность и повысить доступность нашего приложения.
Партиционирование в SQL
• Это техника, которая позволяет разбить таблицу на несколько физических или логических разделов. Каждая такая разделенная часть называется партицией. Партиционирование применяется с целью улучшения производительности и эффективности работы с базой данных.
Как работает партиционирование в SQL
• В SQL партиционирование может быть реализовано при помощи различных механизмов. В основе всех этих механизмов лежит принцип разделения таблицы на физические или логические единицы хранения данных. Разделение может основываться на различных критериях, таких как диапазон значений столбца, хеш-значение, список значений и т. д.
Существует два основных варианта партиционирования в SQL — горизонтальное и вертикальное.
• Шаги по реализации партиционирования
@sqlhub
Оптимизация работы с данными позволяет нам снизить временные затраты, улучшить производительность и повысить доступность нашего приложения.
Партиционирование в SQL
• Это техника, которая позволяет разбить таблицу на несколько физических или логических разделов. Каждая такая разделенная часть называется партицией. Партиционирование применяется с целью улучшения производительности и эффективности работы с базой данных.
Как работает партиционирование в SQL
• В SQL партиционирование может быть реализовано при помощи различных механизмов. В основе всех этих механизмов лежит принцип разделения таблицы на физические или логические единицы хранения данных. Разделение может основываться на различных критериях, таких как диапазон значений столбца, хеш-значение, список значений и т. д.
Существует два основных варианта партиционирования в SQL — горизонтальное и вертикальное.
• Шаги по реализации партиционирования
@sqlhub
👍16🔥4❤3
Дано
Дана следующая структура таблиц:
Задание
Напишите запрос, который посчитает количество звонков, сделанных между
2020-10-01
и сегодняшним днем. Полученная таблица должна состоять из двух столбцов: date
и cnt_calls
. В столбце date
должен находиться день вызова (без времени), а в столбце "cnt_calls
" должно отображаться количество звонков, совершенных в этот день.Столбцы в результате
date
cnt_calls
Примечание: для корректной работы вашего запроса обязательно указывайте схему таблиц - tinkoff.
Например,
FROM tinkoff.employees.
Пишите свое решение в комментариях👇
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤3🔥3🤬1
Лучший способ получать свежие обновлении и следить за трендами в разработке.
Машинное обучение: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
C#: t.me/csharp_ci
C/C++/ t.me/cpluspluc
Data Science: t.me/data_analysis_ml
Devops: t.me/devOPSitsec
Go: t.me/Golang_google
Базы данных: t.me/sqlhub
Rust: t.me/rust_code
Javascript: t.me/javascriptv
React: t.me/react_tg
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Linux: t.me/+A8jY79rcyKJlYWY6
Big Data: t.me/bigdatai
Хакинг: t.me/linuxkalii
Тестирование: https://t.me/+F9jPLmMFqq1kNTMy
Java: t.me/javatg
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка машинное обучение: https://t.me/addlist/_FjtIq8qMhU0NTYy
🇬🇧Английский: t.me/english_forprogrammers
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3🥰2❤1
NoSQL — это семейство нереляционных баз данных. В них разработчики отошли от использования традиционной табличной модели представления информации.
• Уже само название заявляет, что управлять данными можно не только с помощью Structured Query Language (SQL), т. е. языка структурированных запросов.
• Модель NoSQL появилась в ответ на необходимость оперативно обрабатывать действительно огромные объёмы данных. Поэтому NoSQL по большей части заточена под масштабирование по горизонтали и работу с недостаточно структурированными или постоянно меняющимися данными.
Почему появилась модель NoSQL
Расцвет реляционных (relation — «связь, взаимосвязь») баз данных пришёлся на 80-е годы, когда в БД в основном хранили текстовые документы и изображения. Однако с развитием технологий и ростом объёма обрабатываемой информации реляционные СУБД перестали справляться со всеми задачами одинаково хорошо. Термин NoSQL впервые прозвучал в 1998 году: его применил итальянский учёный Карло Строцци для описания своей open source СУБД. При разработке он отказался от SQL, а также от основного принципа реляционных СУБД — ACID (atomicity, consistency, isolation, durability).
В начале XXI века NoSQL БД стали популярны, в том числе у корпораций. Чтобы решить проблемы параллельных вычислений с очень большим объёмом информации и масштабируемости, Google построила на основе модели распределённых вычислений MapReduce колоночное хранилище. На базе этих технологий выросло целое семейство высокодоступных open source СУБД.
Основные причины появления NoSQL:
📌 Читать
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤4🔥1
PostgreSQL_Python.pdf
677.1 KB
🔥 Полезная Шпаргалка-гайд по работе с Python и PostgreSQL.
Все от установки и соединение с БД до создания таблиц и работы с полями.
@sqlhub
Все от установки и соединение с БД до создания таблиц и работы с полями.
@sqlhub
❤10👍6🔥4
Дата-инженер контролирует и анализирует большие наборы данных. SQL — мощный инструмент выполнения запросов и манипулирования данными, и для создания эффективных решений здесь имеется немало продвинутых функциональных средств. Рассмотрим ряд важных для дата-инженеров тем SQL, иллюстрируя их примерами применения набора данных.
Пример набора данных
Имеется три таблицы:
• product_table с данными различных продуктов — название, цена, категория;
• category_table с данными о категориях продуктов;
• order_table с данными о заказах: заказанный продукт, его количество, дата заказа.
Вот схема каждой таблицы:
product_table
+----+----------------------+-------+-------------+
| id | Название | Цена | category_id |
+----+----------------------+-------+-------------+
| 1 | iPhone 13 | 1000 | 2 |
| 2 | Galaxy S21 | 800 | 2 |
| 3 | Pixel 6 | 700 | 2 |
| 4 | MacBook Air | 1000 | 4 |
| 5 | Surface Pro 8 | 1200 | 4 |
| 6 | iPad Pro | 800 | 3 |
| 7 | iPad Mini | 400 | 9 |
| 8 | Smart TV | 800 | 1 |
| 9 | Home Theater System | 600 | 1 |
| 10 | Galaxy S21 Ultra | 1400 | 2 |
| 11 | iPhone 13 Pro Max | 1300 | 2 |
| 12 | Pixel 6 Pro | 1000 | 2 |
+----+----------------------+-------+-------------+
category_table
+----+-------------+
| id | Название |
+----+-------------+
| 1 | Электроника |
| 2 | Телефоны |
| 3 | Планшеты |
| 4 | Ноутбуки |
| 5 | Бытовая техника |
| 6 | Одежда |
| 7 | Спорттовары |
| 8 | Игрушки |
| 9 | Аксессуары |
+----+-------------+
order_table
+----+------------+-------------+------------+
| id | product_id | Количество | Дата |
+----+------------+-------------+------------+
| 1 | 1 | 2 | 2022-03-28 |
| 2 | 2 | 1 | 2022-03-28 |
| 3 | 3 | 3 | 2022-03-29 |
| 4 | 4 | 1 | 2022-03-30 |
| 5 | 5 | 2 | 2022-03-31 |
| 6 | 6 | 3 | 2022-03-31 |
| 7 | 7 | 2 | 2022-03-31 |
| 8 | 8 | 1 | 2022-03-31 |
| 9 | 9 | 1 | 2022-03-31 |
+--------------------------------------------+
Фильтрация данных
Предложение WHERE — это важный SQL-функционал для фильтрования данных по конкретным условиям. WHERE, которым определяется условие включения данных в результаты, добавляется в конце оператора SELECT.
Пример. Чтобы получить все продукты дороже 1000 $, применяем WHERE для их фильтрации по цене, в результаты включаются только продукты дороже 1000 $:
SELECT *
FROM product_table
WHERE price > 1000;
Возвращаемый результат:
+----+---------------------+-------+-------------+
| id | Название | Цена | category_id |
+----+---------------------+-------+-------------+
| 5 | Surface Pro 8 | 1200 | 4 |
| 10 | Galaxy S21 Ultra | 1400 | 2 |
| 11 | iPhone 13 Pro Max | 1300 | 2 |
+----+---------------------+-------+-------------+
Объединения
Чтобы иметь полную картину о данных нескольких таблиц, эти таблицы объединяют. Для этого в SQL имеются внутренние, левые, правые и полные внешние объединения.
Пример. Чтобы получить список всех заказов и название заказанного продукта, с помощью объединения в SQL объединяем таблицы: в одной данные о заказе, в другой — о продукте:
SELECT order_table.*, product_table.name
FROM order_table
INNER JOIN product_table ON order_table.product_id = product_table.id;
📌 Читать дальше
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17👎5🔥2❤1
Однажды Джоэл Спольски в своей знаменитой презентации «You Suck at Excel» сказал, что существуют сотни коммерческих продуктов, вместо которых можно было бы использовать табличку Excel.
В этой шутке очень высокая доля правды. Excel благородя интуитивному UI, формулам и VBA дает возможность пользователям самим решать широкий спектр задач, избавляя от необходимости каждый раз обращаться за помощью к разработчикам или внедрять в компании новый продукт. Excel используется везде от мелкой розницы до Fortune 500 и CERN.
Пользовательский интерфейс Excel оказался, настолько удачным – ни один из конкурентов так и отошел от привычных таблиц. Для пользователя Excel интерфейс Google Spreadsheet будет привычным и интуитивно понятным. А вот по своим функциональным возможностям Excel до сих пор превосходит большинство конкурентов.
Как с помощью двух мощных инструментов с открытым исходным кодом можно совместить привычный для пользователей интерфейс, надежность и мощь SQL, гибкость Python и командную работу как в Google Spreadsheet? Давайте рассмотрим это на простом примере.
📌Читать дальше
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤4🔥3
Избыточные индексы в SQL Server - это явление значительно более общее, чем мне бы хотелось. Я встречал это довольно часто. Это означает, что данное сообщение в блоге все еще будет иметь значительную целевую аудиторию!
Статья Brent Ozar дает исчерпывающую информацию об избыточных/дублирующих индексах, что они означают, почему это плохо, и что нужно с этим делать.
Несколько лет назад Guy Glantser также опубликовал статью об удалении избыточных индексов. Она весьма полезна для нахождения всех избыточных индексов во всех таблицах в заданной базе данных.
Но вот чего не хватает в этих статьях, так это возможности легко генерировать команды Drop/Disable для этих избыточных индексов.
Кроме того, что если имеются "похожие" индексы, которые только "частично" избыточны, и, следовательно, недостаточно просто удалить один из них? Иначе это может негативно сказаться на производительности некоторых запросов.
Есть ли способ учесть все эти проблемы?
Каждый из них? Повсюду? Сразу?
В посте я собираюсь показать вам, как обнаружить, получить подробную информацию и иметь возможность удалить КАЖДЫЙ избыточных индекс ЛЮБОЙ формы и размера:
▪Полностью дублируемые индексы
▪Избыточные индексы на основе ключевых столбцов + включенных столбцов
▪Частично избыточные индексы только на основе ключевых столбцов
▪Все таблицы
▪Все таблицы с минимальным числом строк
▪В конкретной базе данных
▪Во всех доступных базах данных
📌 Читать дальше
📌 Скрипт
📌 Индексы: обнаружение неиспользуемых индексов
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤3🔥1
🟡 Дайджест полезных материалов из мира sql за неделю
Почитать:
— Проблемы студентов курсов при работе с реальными данными
— Что такое «хорошо» и что такое «плохо» в NiFi. Часть 3
— pgmig — история разработки инструмента управления изменениями в БД или чего нам не хватило в Liquibase и Flyway
— Список популярных утечек с GitHub: Анализ репозиториев компаний
— Когда SQL решает, и задачки для прокачки
— Генеративный ИИ с базой данных SQL: Персональный чатбот разработчика SQL
— What is SQL?
— YugabyteDB official Dockerfile
— Golang Database Migration With Golang Migrate and Sqlc
— Window Functions: A comprehensive guide to mastery.
— MySQL CheatSheet
— Roadmap to Become a Database Engineer
— Securing Your Graph Database: Best Practices for Apache AGE
— Counters with YugabyteDB
— Stored Procedures: The Secret to Improving Your Database Applications
— Master the Technique of 'Update Only When Changes Occur' in SQL! Boost Your Database Efficiency
Посмотреть:
🌐 SQL Data Analytics Project (PART 2) | Data Analyst Portfolio Project
Хорошего дня!
❤️ Лайк, если полезно
@sqlhub
Почитать:
— Проблемы студентов курсов при работе с реальными данными
— Что такое «хорошо» и что такое «плохо» в NiFi. Часть 3
— pgmig — история разработки инструмента управления изменениями в БД или чего нам не хватило в Liquibase и Flyway
— Список популярных утечек с GitHub: Анализ репозиториев компаний
— Когда SQL решает, и задачки для прокачки
— Генеративный ИИ с базой данных SQL: Персональный чатбот разработчика SQL
— What is SQL?
— YugabyteDB official Dockerfile
— Golang Database Migration With Golang Migrate and Sqlc
— Window Functions: A comprehensive guide to mastery.
— MySQL CheatSheet
— Roadmap to Become a Database Engineer
— Securing Your Graph Database: Best Practices for Apache AGE
— Counters with YugabyteDB
— Stored Procedures: The Secret to Improving Your Database Applications
— Master the Technique of 'Update Only When Changes Occur' in SQL! Boost Your Database Efficiency
Посмотреть:
🌐 SQL Data Analytics Project (PART 2) | Data Analyst Portfolio Project
Хорошего дня!
❤️ Лайк, если полезно
@sqlhub
❤14👍6🔥2
Redis и Planetscale - лучшие варианты при запуске нового проекта. Более подробная информация и интересные статистические данные приведены в полном тексте отчета.
📌Читать
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤4🔥1
Распределенный SQL: Альтернатива шардированию баз данных
Шардирование баз данных — это процесс разделения данных на более мелкие части, называемые «шарды». Шардинг обычно используется, когда необходимо масштабировать записи. Распределенный SQL представляет новый способ масштабирования реляционных баз данных с использованием стратегии сегментирования, полностью автоматизированной и прозрачной для приложений. Подробнее ты узнаешь из этой статьи.
🚀 Читать статью
@sqlhub
Шардирование баз данных — это процесс разделения данных на более мелкие части, называемые «шарды». Шардинг обычно используется, когда необходимо масштабировать записи. Распределенный SQL представляет новый способ масштабирования реляционных баз данных с использованием стратегии сегментирования, полностью автоматизированной и прозрачной для приложений. Подробнее ты узнаешь из этой статьи.
🚀 Читать статью
@sqlhub
👍6❤4🔥1
🔥Большая подборка бесплатных SQL курсов.
▪ Интерактивный тренажер по SQL (— практические задания на создание SQL-запросов. Каждый шаг включает минимальные теоретические аспекты по базам данных или языку SQL, примеры похожих запросов и пояснение к реализации
▪ Марафон данных: первое знакомство с SQL и Python — это симулятор профессии дата-аналитика, который познакомит вас с базами данных и методами работы с ними
▪ Знакомство с SQLite (4.6 из 5) — этот небольшой курс покажет, как использовать SQLite в повседневной работе. Вы научитесь загружать, анализировать и выгружать данные, а также познакомитесь с разными типами данных
▪ Введение в базы данных - курс посвящен структурированному хранению данных, основами SQL, принципами использования баз данных в приложениях, обзор нереляционных способов хранения данных
▪ Погружение в СУБД — курс для тех, кто уже имеет некоторый опыт проектирования баз данных и разработки приложений и хочет расширить свои знания
🌐 Youtube
▪ Реляционные базы данных. SQL (39 видео) — курс раскрывает все аспекты реляционных баз данных, начиная от определения и создания баз данных, схем, таблиц и полей этих таблиц (DDL), и заканчивая запросами к этим таблицам (DML)
▪ Практика по SQL
▪ Основы SQL (18 видео) — объясняют базовые концепции языка: операторы, фильтрация, сортировка, группировка, декомпозиция и т. д.
▪ Уроки по SQL для начинающих (25 видео) — эти уроки помогут быстро разобраться с основами
12 Англоязычных курсов
Платформы: Stepik, Coursera, Udacity, Udemy и Kaggle.
1. Databases and SQL for Data Science with Python
2. SQL for Data Science
3. Introduction to Databases and SQL Querying
4. Intro to Relational Databases
5. Introduction to Structured Query Language (SQL)
6. Advanced Databases and SQL Querying
7. SQL for Data Analysis
8. Oracle SQL – A Complete Introduction
9. Intro to SQL
10. Advanced SQL
11. Oracle SQL Basics
12. Beginners Guide to SQL
👍 Лайк, если полезно
@Sqlhub
▪ Интерактивный тренажер по SQL (— практические задания на создание SQL-запросов. Каждый шаг включает минимальные теоретические аспекты по базам данных или языку SQL, примеры похожих запросов и пояснение к реализации
▪ Марафон данных: первое знакомство с SQL и Python — это симулятор профессии дата-аналитика, который познакомит вас с базами данных и методами работы с ними
▪ Знакомство с SQLite (4.6 из 5) — этот небольшой курс покажет, как использовать SQLite в повседневной работе. Вы научитесь загружать, анализировать и выгружать данные, а также познакомитесь с разными типами данных
▪ Введение в базы данных - курс посвящен структурированному хранению данных, основами SQL, принципами использования баз данных в приложениях, обзор нереляционных способов хранения данных
▪ Погружение в СУБД — курс для тех, кто уже имеет некоторый опыт проектирования баз данных и разработки приложений и хочет расширить свои знания
▪ Реляционные базы данных. SQL (39 видео) — курс раскрывает все аспекты реляционных баз данных, начиная от определения и создания баз данных, схем, таблиц и полей этих таблиц (DDL), и заканчивая запросами к этим таблицам (DML)
▪ Практика по SQL
▪ Основы SQL (18 видео) — объясняют базовые концепции языка: операторы, фильтрация, сортировка, группировка, декомпозиция и т. д.
▪ Уроки по SQL для начинающих (25 видео) — эти уроки помогут быстро разобраться с основами
12 Англоязычных курсов
Платформы: Stepik, Coursera, Udacity, Udemy и Kaggle.
1. Databases and SQL for Data Science with Python
2. SQL for Data Science
3. Introduction to Databases and SQL Querying
4. Intro to Relational Databases
5. Introduction to Structured Query Language (SQL)
6. Advanced Databases and SQL Querying
7. SQL for Data Analysis
8. Oracle SQL – A Complete Introduction
9. Intro to SQL
10. Advanced SQL
11. Oracle SQL Basics
12. Beginners Guide to SQL
👍 Лайк, если полезно
@Sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42❤4🔥4