SMART_DATA_CHANNEL Telegram 150
Всем привет. Давно не писал на канале, так что буду исправляться.

Мы продолжаем тему SQL и баз данных, и сегодня я хочу рассказать о 4-х типах объектов, которые встречаются в большинстве СУБД: base table (таблица), temporary table (временная таблица), view (представление), materialized view (материализованное представление).

Решил написать небольшую шпаргалку с описанием этих объектов и в каких случаях какой объект использовать или не использовать.


Base table - классическая таблица. На логическом уровне это выделенное пространство на диске или в памяти, где хранятся данные, которые мы загрузили в эту таблицу.
Базовая таблица является основой для создания других объектов в базе данных.


Temporary table - временная таблица, которая, как правило, существует в рамках одной сессии подключения к базе данных. Простыми словами, если вы подключились к базе данных, создали временную таблицу, использовали её для своих нужд и разорвали соединение, то в рамках следующей сессии этой таблицы уже не будет.

Когда использовать: временные таблицы могут быть полезными, если вы часто обращаетесь к данным большой базовой таблицы (base table) в рамках одной сессии. Это, в свою очередь, может замедлять скорость работы и потреблять большое количество вычислительных ресурсов, что сильно снижает эффективность. Поэтому, вы можете создать временную таблицу на базе основной для хранения промежуточных результатов и писать запросы уже к ней, что может сильно повысить производительность.

Когда не использовать: временные таблицы лучше не использовать для сложной логики запросов и вычисляемых полей. Для этих задач больше подходят views (представления).


View - по сути, это хранимый SQL-запрос, который содержит в себе направления к данным, которые хранятся в основных таблицах. Т.е. представление хранит не данные сами по себе, а направление к ним.

Когда использовать:
- для хранения сложной логики запросов к основным таблицам. Например, для джоинов часто используемых таблиц, для вычисляемых столбцов и метрик. Представления устраняют избыточную работу для получения данных из базовых таблиц: вместо того, чтобы постоянно описывать ту же самую логику в запросах к основным таблицам, мы можем писать запросы ко view, которые уже содержат эту логику;
- для предоставления доступа только к определённым полям в основной таблице для групп пользователей. Представления являются хорошей опцией для того, чтобы обезопасить данные от нежелательного доступа. Например, вы хотите предоставить информацию о работниках, но не хотите предоставлять информацию об их зарплате.

Когда не использовать: со временем базовые таблицы могут становиться всё больше, и сложный запрос во view становится всё медленее, что делает анализ данных очень долгим и неудобным. Чтобы устранить просадку в производительности, мы можем материализовать результаты запроса, который хранится в представлении. Для этой задачи и существуют materialized views.



tgoop.com/smart_data_channel/150
Create:
Last Update:

Всем привет. Давно не писал на канале, так что буду исправляться.

Мы продолжаем тему SQL и баз данных, и сегодня я хочу рассказать о 4-х типах объектов, которые встречаются в большинстве СУБД: base table (таблица), temporary table (временная таблица), view (представление), materialized view (материализованное представление).

Решил написать небольшую шпаргалку с описанием этих объектов и в каких случаях какой объект использовать или не использовать.


Base table - классическая таблица. На логическом уровне это выделенное пространство на диске или в памяти, где хранятся данные, которые мы загрузили в эту таблицу.
Базовая таблица является основой для создания других объектов в базе данных.


Temporary table - временная таблица, которая, как правило, существует в рамках одной сессии подключения к базе данных. Простыми словами, если вы подключились к базе данных, создали временную таблицу, использовали её для своих нужд и разорвали соединение, то в рамках следующей сессии этой таблицы уже не будет.

Когда использовать: временные таблицы могут быть полезными, если вы часто обращаетесь к данным большой базовой таблицы (base table) в рамках одной сессии. Это, в свою очередь, может замедлять скорость работы и потреблять большое количество вычислительных ресурсов, что сильно снижает эффективность. Поэтому, вы можете создать временную таблицу на базе основной для хранения промежуточных результатов и писать запросы уже к ней, что может сильно повысить производительность.

Когда не использовать: временные таблицы лучше не использовать для сложной логики запросов и вычисляемых полей. Для этих задач больше подходят views (представления).


View - по сути, это хранимый SQL-запрос, который содержит в себе направления к данным, которые хранятся в основных таблицах. Т.е. представление хранит не данные сами по себе, а направление к ним.

Когда использовать:
- для хранения сложной логики запросов к основным таблицам. Например, для джоинов часто используемых таблиц, для вычисляемых столбцов и метрик. Представления устраняют избыточную работу для получения данных из базовых таблиц: вместо того, чтобы постоянно описывать ту же самую логику в запросах к основным таблицам, мы можем писать запросы ко view, которые уже содержат эту логику;
- для предоставления доступа только к определённым полям в основной таблице для групп пользователей. Представления являются хорошей опцией для того, чтобы обезопасить данные от нежелательного доступа. Например, вы хотите предоставить информацию о работниках, но не хотите предоставлять информацию об их зарплате.

Когда не использовать: со временем базовые таблицы могут становиться всё больше, и сложный запрос во view становится всё медленее, что делает анализ данных очень долгим и неудобным. Чтобы устранить просадку в производительности, мы можем материализовать результаты запроса, который хранится в представлении. Для этой задачи и существуют materialized views.

BY Smart Data


Share with your friend now:
tgoop.com/smart_data_channel/150

View MORE
Open in Telegram


Telegram News

Date: |

Clear There have been several contributions to the group with members posting voice notes of screaming, yelling, groaning, and wailing in different rhythms and pitches. Calling out the “degenerate” community or the crypto obsessives that engage in high-risk trading, Co-founder of NFT renting protocol Rentable World emiliano.eth shared this group on his Twitter. He wrote: “hey degen, are you stressed? Just let it out all out. Voice only tg channel for screaming”. best-secure-messaging-apps-shutterstock-1892950018.jpg Telegram has announced a number of measures aiming to tackle the spread of disinformation through its platform in Brazil. These features are part of an agreement between the platform and the country's authorities ahead of the elections in October. Write your hashtags in the language of your target audience.
from us


Telegram Smart Data
FROM American