Proteger e monitorar o data warehouse
Segurança e monitoramento são aspectos críticos do gerenciamento do data warehouse.
Segurança
A segurança do data warehouse é importante para proteger seus dados contra acesso não autorizado. O Fabric fornece uma série de recursos de segurança para ajudar você a proteger seu data warehouse. Estão incluídos:
- O RBAC (controle de acesso baseado em função) para controlar o acesso ao warehouse e aos dados dele.
- A Criptografia SSL para proteger a comunicação entre o warehouse e os aplicativos cliente.
- A Criptografia do Serviço de Armazenamento do Azure para proteger os dados em trânsito e inativos.
- O Azure Monitor e o Azure Log Analytics para monitorar a atividade do warehouse e auditar o acesso aos dados.
- Autenticação multifator (MFA) para adicionar uma camada extra de segurança às contas de usuário.
- A integração do Microsoft Entra ID para gerenciar as identidades de usuário e o acesso ao warehouse.
Permissões de workspace
Os dados no Fabric são organizados em workspaces, que são usados para controlar o acesso e gerenciar o ciclo de vida de dados e serviços. Funções de workspace apropriadas são a primeira linha de defesa na proteção do data warehouse.
Além das funções de workspace, é possível conceder permissões de item e acesso por meio do SQL.
Dica
Confira Workspaces no Power BI para saber mais sobre as funções de workspace.
Permissões de item
Diferentemente das funções de workspace, que se aplicam a todos os itens em um workspace, é possível usar permissões de item para conceder acesso a warehouses individuais. Isso permite que você compartilhe um único data warehouse para consumo downstream.
É possível conceder permissões aos usuários por meio do T-SQL ou no portal do Fabric. Conceda as seguintes permissões aos usuários que precisam acessar o data warehouse:
- Read: permite que o usuário se conecte usando a cadeia de conexão SQL.
- ReadData: permite que o usuário leia dados de qualquer tabela/exibição no warehouse.
- ReadAll: permite que o usuário leia dados dos arquivos Parquet brutos no OneLake que podem ser consumidos pelo Spark.
Uma conexão de usuário com o ponto de extremidade de análise do SQL falhará sem, no mínimo, uma permissão de leitura.
Monitoramento
As atividades de monitoramento no data warehouse são essenciais para garantir o desempenho ideal, a utilização eficiente de recursos e a segurança. Elas ajudam você a identificar problemas, detectar anomalias e tomar medidas para manter o data warehouse funcionando de maneira adequada e segura.
É possível usar DMVs (exibições de gerenciamento dinâmico) para monitorar a conexão, a sessão e o status da solicitação a fim de ver insights do ciclo de vida da consulta SQL em tempo real. Com as DMVs, é possível obter detalhes como o número de consultas ativas e identificar quais consultas estão em execução por um período estendido a fim de exigir o encerramento.
Atualmente, há três DMVs disponíveis para uso no Fabric:
- sys.dm_exec_connections: retorna informações sobre cada conexão estabelecida entre o warehouse e o mecanismo.
- sys.dm_exec_sessions: retorna informações sobre cada sessão autenticada entre o item e o mecanismo.
- sys.dm_exec_requests: retorna informações sobre cada solicitação ativa em uma sessão.
Monitoramento de consultas
Use 'sys.dm_exec_requests' para identificar as consultas de execução prolongada que podem estar afetando o desempenho geral do banco de dados e tomar as medidas apropriadas a fim de otimizar ou encerrar essas consultas.
Comece identificando as consultas que estão em execução há muito tempo. Use a seguinte consulta para identificar quais consultas estão em execução há mais tempo, em ordem decrescente:
SELECT request_id, session_id, start_time, total_elapsed_time
FROM sys.dm_exec_requests
WHERE status = 'running'
ORDER BY total_elapsed_time DESC;
É possível continuar investigando para entender qual usuário executou a sessão com a consulta de execução prolongada executando o seguinte:
SELECT login_name
FROM sys.dm_exec_sessions
WHERE 'session_id' = 'SESSION_ID WITH LONG-RUNNING QUERY';
Por fim, é possível usar o comando KILL
para encerrar a sessão com a consulta de execução prolongada:
KILL 'SESSION_ID WITH LONG-RUNNING QUERY';
Importante
Você deve ser um administrador de workspace para executar o comando KILL
. Os administradores de workspace podem executar todas as três DMVs. As funções de Membro, Colaborador e Visualizador podem ver os próprios resultados no warehouse, mas não podem ver os resultados de outros usuários.