Leia as perguntas frequentes
Novo
Suporte do Bitrix24
Inscrição e autorização
Segurança
Como Começar?
Feed
Messenger
Bitrix24 Collabs
Página inicial: Vibe
Calendário
Bitrix24 Drive
E-mail
Grupos de trabalho
Tarefas e Projetos
CRM
Agendamento on-line
CoPilot - IA no Bitrix24
Contact Center
Telefonia
CRM + Loja On-line
Sales Center
Análise CRM
Sales Intelligence
Criador de BI
Automação
Marketing
Bitrix24.Sites
Loja On-line (beta)
Gerenciamento do inventário
Empresa
Assinatura eletrônica para RH
Assinatura eletrônica
Base de conhecimento
Videoconferências em HD
Processos de negócio
Market (Aplicativos)
Assinatura
Enterprise
Configurações
Meu perfil
Bitrix24 Messenger
Bitrix24 On-premise
Questões Gerais
Novidades do Helpdesk (arquivo)
Login
Seu Bitrix24
Autorizar o acesso
à sua conta Bitrix24
Entrar

Suporte Bitrix24

Criador de BI: funções SQL para análise avançada de consultas

No Criador de BI, foram introduzidas novas funções SQL: bitrix24.bi_queries_t() e bi_explain_query(). Com elas, é possível visualizar o histórico de consultas e entender por que os relatórios estão carregando lentamente.

Essas funções ajudam a identificar quais filtros são utilizados nas consultas e o volume de dados processados. Se uma consulta estiver lenta, é possível otimizá-la ajustando os filtros ou reduzindo o número de colunas, por exemplo.

Conteúdo do artigo:


Visualizar o histórico de consultas SQL

Função SQL bitrix24.bi_queries_t(): Auxilia na análise do histórico de consultas SQL realizadas no Criador de BI. A função exibe uma tabela com informações sobre as consultas executadas, o volume de dados carregados e outros detalhes operacionais.

Para visualizar o histórico de consultas:

  1. Acesse o Criador de BI e navegue até a seção SQL > SQL Lab.
  2. Selecione o esquema bitrix24.
  3. Insira a consulta SQL SELECT * FROM TABLE(bitrix24.bi_queries_t()) e clique em Run (Executar).

Por padrão, a consulta exibe uma tabela com as 1.000 consultas mais recentes. Para limitar o número de resultados, utilize o operador LIMIT. Por exemplo, para visualizar as dez últimas consultas:

SELECT * FROM TABLE(bitrix24.bi_queries_t()) 
LIMIT 10;

A análise da tabela permite identificar consultas que impactam o desempenho dos relatórios e como otimizá-las. Por exemplo, caso um relatório esteja lento, verifique as consultas recentes e observe o volume de dados e o tempo de execução. Se houver excesso de dados, considere adicionar filtros por data para reduzir o escopo e melhorar o tempo de carregamento.

As informações apresentadas complementam os dados disponíveis na seção de estatísticas de uso de consultas do Criador de BI, oferecendo parâmetros adicionais para análise.

As colunas da tabela exibem detalhes sobre cada consulta:

TIMESTAMP — Data e hora da execução da consulta. Permite identificar períodos de pico de demanda.

QUERY_ID — Identificador único da consulta. Utilizado em conjunto com a função bi_explain_query() para análise específica.

BI_ENTITY — Entidade de dados referenciada pela consulta. Auxilia na identificação de consultas lentas relacionadas a conjuntos de dados específicos.

QUERY_RESULT — Resultado da execução (sucesso ou falha).

SIZE_BYTES — Volume de dados processados. Consultas com grande volume podem requerer otimização.

ROWS — Número de linhas retornadas. Considera adicionar filtros para reduzir este número quando necessário.

USED_DATE_FILTER — Filtro de data aplicado. Verifica se o período selecionado é adequado.

SELECTED_COLS_CNT — Quantidade de colunas selecionadas. Se houver muitas colunas, a consulta poderá ficar lenta. Selecione apenas as necessárias.

SERVER_FILTERS_CNT — Número de filtros aplicados no servidor. A ausência de filtros pode resultar em consultas mais lentas.

SERVER_FILTERS_INFO — Detalhes dos filtros aplicados. Garante a correta seleção de dados.

CACHE_SIZE_BYTES — Volume de dados recuperados do cache. Consultas em cache são mais rápidas (dados válidos por 1 hora por padrão).

DOWNLOAD_MILLS — Tempo de carregamento dos dados.

PARSE_MILLS — Tempo de processamento dos dados pelo Criador de BI antes do envio ao servidor.

COMPRESS_MILLS — Tempo de compressão dos dados para armazenamento em cache.

DECOMPRESS_MILLS — Tempo de descompressão dos dados recuperados do cache.

FROM_CACHE — Indica se a consulta foi executada a partir do cache.

QUERY_JSON — Detalhes da consulta em formato JSON, incluindo filtros e parâmetros utilizados.

A função bitrix24.bi_queries_t() pode ser utilizada em consultas SQL para selecionar colunas específicas, aplicar filtros ou agrupar dados por qualquer campo. Por exemplo, é possível identificar as cinco consultas mais lentas ordenando-as pelo volume de dados processados.

Analisar uma consulta SQL

Função SQL bi_explain_query(): Explica a execução da consulta no banco de dados MySQL do Bitrix24, mostrando tabelas, índices utilizados e possíveis gargalos de desempenho.

Para realizar a análise detalhada:

1. Obtenha os valores QUERY_ID e TIMESTAMP: Execute SELECT * FROM TABLE(bitrix24.bi_queries_t()), localize a consulta desejada e copie estes valores.

2. Adicione parâmetros e execute a consulta: Insira os parâmetros na consulta: SELECT bi_explain_query('20250319_081208_80250_xqccc', '2025-03-19 08:12:09.418'); Para facilitar a análise, copie o resultado para um editor de texto.

Você receberá um plano de execução detalhado para a consulta SQL. Ele mostra como o servidor a processa, incluindo quais tabelas e índices são usados ​​e quais operações podem causar lentidão. O plano tem duas partes:

Consulta SQL original. No exemplo, a consulta seleciona dados da tabela de negócios e os une a outras tabelas. Ela recupera o nome do negócio, categoria, responsável, datas de início e encerramento, origem e etapa.

Tabela de análise. Esta parte descreve as etapas que o servidor executa para executar a consulta. Cada linha da tabela representa uma etapa que o servidor executa para recuperar dados. A tabela consiste em várias colunas, cada uma explicando um detalhe específico da execução da consulta:

  • id — Número sequencial da etapa de execução.
  • select_type — Tipo de consulta (SIMPLE indica consulta sem subconsultas aninhadas).
  • table — Nome da tabela que está sendo acessada nesta etapa.
  • type — Método de acesso (ALL = O servidor verifica a tabela inteira, tornando a consulta lenta; eq_ref/ref = O servidor usa pesquisa indexada, tornando a consulta mais rápida).
  • possible_keys — Índices potenciais disponíveis para esta operação.
  • key — Índice que o servidor usa ao executar a consulta. Se o campo estiver vazio, o servidor não usará índices e a consulta poderá ficar mais lenta.
  • key_len — Tamanho da chave do índice utilizado. Chaves mais curtas geralmente melhoram a velocidade de pesquisa.
  • ref — Exibe os campos usados ​​para unir tabelas (por exemplo, por ID do negócio, categoria ou estágio). Isso ajuda a entender como o servidor vincula os dados.
  • rows — Número estimado de linhas processadas.
  • Extra — Informações adicionais (Using where = aplicação de filtros; Using filesort/Using temporary = o servidor cria tabelas temporárias ou executa a classificação na unidade, o que pode tornar a consulta lenta.). Consulte a documentação oficial do MySQL para valores possíveis.
    Documentação oficial do MySQL

Se você possui a versão On-premise do Bitrix24, pode adicionar os índices necessários ao banco de dados por conta própria. No entanto, na versão em Nuvem, não é possível alterar os índices manualmente. Se você acredita que adicionar um índice pode melhorar a velocidade das consultas SQL, entre em contato com nossa equipe de suporte.
Como entrar em contato com o Suporte Bitrix24


Destaques

  • As novas funções SQL do Criador de BI permitem diagnosticar problemas de desempenho em relatórios.
  • A função bitrix24.bi_queries_t() fornece insights sobre o histórico de consultas SQL, incluindo tempo de execução e volume de dados, ajudando você a identificar e melhorar consultas lentas.
  • A função bi_explain_query() oferece uma análise detalhada da execução da consulta, mostrando quais tabelas e índices são usados ​​e identificando possíveis lentidões, auxiliando na otimização da consulta e reduzindo a carga do banco de dados.
Essa informação foi útil?
Assistência de Especialistas em Integração
Não é o que estou procurando
Texto complexo e incompreensível
Informações estão desatualizadas
Explicação muito breve, preciso de mais informações
Não gosto de como esta ferramenta funciona
Ir ao Bitrix24
Não tem uma conta? Crie grátis
Artigos relacionados
Bitrix24, acompanhe as novidades de março de 2025 Casos de uso de formulários de CRM Perguntas frequentes sobre o Drive Configurar o reCAPTCHA V2 para formulários de CRM Contatos Scripts inteligentes no CRM Perguntas frequentes sobre chats no Bitrix24