Przeczytaj FAQ
Nowości Bitrix24
Aktualizacje artykułów
Aktualności
Rejestracja i autoryzacja
Poczta
Zadania i projekty
Dysk
Kalendarz
Komunikator Bitrix24
Jak zacząć
Grupy robocze
CRM
Bitrix24 Market
Strony internetowe
Firma
Automatyzacja
Marketing
Zarządzanie asortymentem produktów
Ustawienia
Subskrypcja
Aplikacja desktopowa
Mój profil
Centrum Kontaktowe
Analityka CRM
Baza Wiedzy
CRM + Sklep internetowy
Wsparcie Bitrix24
Enterprise
AI CoPilot
Bitrix24 On-premise
e-Podpis
e-Podpis w HR
Telefonia
Kreator BI
Strona startowa: Vibe
Sklep online
Workflow
Centrum Sprzedaży
Kwestie ogólne
Collaby
Rezerwacja online
Sales Intelligence
Logowanie
Twój Bitrix24
Autoryzuj się aby wejść
do swojego Bitrix24.
Wejdź

Bitrix24Care

Kreator BI: funkcje SQL do zaawansowanej analizy zapytań

W Kreatorze BI pojawiły się nowe funkcje SQL: bitrix24.bi_queries_t() i bi_explain_query(). Te narzędzia zostały zaprojektowane, aby śledzić historię zapytań i zrozumieć przyczyny wolnego ładowania raportów, zwiększając możliwości zarządzania danymi.

Funkcje te umożliwiają identyfikację filtrów używanych w zapytaniach oraz ilości przetwarzanych danych. Jeśli zapytanie działa wolno, można je zoptymalizować, dostosowując filtry lub zmniejszając liczbę kolumn.

W tym artykule się dowiesz:


Zobacz historię zapytań SQL

Funkcja SQL bitrix24.bi_queries_t(). Ta funkcja pomaga analizować historię zapytań SQL wykonanych w Kreatorze BI. Wyświetla tabelę ze szczegółami: wykonane zapytania, ilość załadowanych danych i inne istotne informacje.

Aby wyświetlić historię zapytań:

  1. Otwórz Kreator BI i przejdź do sekcji SQL > SQL Lab.
  2. Wybierz schemat bitrix24.
  3. Wprowadź następujące zapytanie SQL i kliknij Run:
    SELECT * FROM TABLE(bitrix24.bi_queries_t()).

Domyślnie zapytanie wyświetla tabelę z ostatnimi 1000 wykonanymi zapytaniami. Aby ograniczyć liczbę wierszy, użyj operatora LIMIT. Na przykład, aby zobaczyć ostatnie dziesięć zapytań, użyj:

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

Analiza tabeli pomaga zidentyfikować zapytania spowalniające wydajność raportu i sposoby ich optymalizacji. Na przykład, jeśli ładowanie raportu trwa długo, przyjrzyj się najnowszym zapytaniom i zwróć uwagę na ich liczbę oraz czas wykonywania. Jeśli danych jest zbyt dużo, spróbuj dodać filtr dat, aby ograniczyć wybór i przyspieszyć ładowanie.

Informacje w tabeli częściowo pokrywają się z danymi z sekcji statystyk użycia zapytań w Kreatorze BI, ale dostarczają więcej parametrów do analizy.

W kolumnach tabeli znajdziesz szczegółowe informacje o każdym wykonanym zapytaniu:

Nazwa kolumny Opis
TIMESTAMP Dokładna data i czas wykonania zapytania. Pomaga zidentyfikować okresy szczytowego obciążenia.
QUERY_ID Unikalny identyfikator zapytania. Używany z bi_explain_query() do analizy szczegółów konkretnego zapytania.
BI_ENTITY Docelowy zestaw danych. Pomaga zrozumieć, które dane powodują powolne zapytania.
QUERY_RESULT Status wykonania. Wskazuje, czy zapytanie zakończyło się pomyślnie, czy wystąpił błąd.
SIZE_BYTES Rozmiar danych załadowanych przez zapytanie. Duże zestawy danych mogą wymagać optymalizacji.
ROWS Liczba zwróconych wierszy. W przypadku zbyt wielu wierszy warto dodać filtr, aby poprawić wydajność.
USED_DATE_FILTER Zastosowany filtr zakresu dat (jeśli istnieje). Sprawdź, czy zapytanie jest ograniczone do wymaganego okresu.
SELECTED_COLS_CNT Liczba wybranych kolumn. Wiele kolumn może spowalniać zapytanie. Wybierz tylko niezbędne.
SERVER_FILTERS_CNT Liczba filtrów zastosowanych po stronie serwera. Brak filtrów może powodować wolniejsze działanie zapytań.
SERVER_FILTERS_INFO Szczegóły dotyczące użytych filtrów. Pozwala zweryfikować poprawność wyboru danych.
CACHE_SIZE_BYTES Rozmiar danych ładowanych z pamięci podręcznej. Zapytania z pamięci podręcznej są realizowane szybciej, ponieważ dane nie są pobierane bezpośrednio z Bitrix24, ale z wcześniej przygotowanej kopii. Domyślnie pamięć podręczna jest ważna przez jedną godzinę.
DOWNLOAD_MILLS Czas pobierania danych. Pokazuje, ile czasu zajmuje załadowanie danych.
PARSE_MILLS Czas przetwarzania źródłowych danych zapytania przed wysłaniem ich do serwera. Im mniejsze dane źródłowe, tym szybsze przetwarzanie.
COMPRESS_MILLS Czas potrzebny na skompresowanie danych źródłowych przed zapisaniem ich w pamięci podręcznej. Im większa ilość danych, tym dłużej trwa ich kompresja.
DECOMPRESS_MILLS Czas dekompresji danych z pamięci podręcznej. Większe dane wymagają więcej czasu na dekompresję, co może wpływać na wydajność.
FROM_CACHE Wskazuje, czy wyniki zapytania pochodzą z pamięci podręcznej. Dane z pamięci podręcznej są dostępne szybciej.
QUERY_JSON Pełna konfiguracja zapytania w formacie JSON, w tym parametry i filtry.
Użyj bitrix24.bi_queries_t() w zapytaniach SQL, aby wybrać potrzebne kolumny, zastosować filtry lub pogrupować dane według dowolnego pola. Na przykład, możesz zidentyfikować pięć najwolniejszych zapytań i posortować je według rozmiaru załadowanych danych.

Analizuj zapytanie SQL

Funkcja SQL bi_explain_query(). Ta funkcja pokazuje, jak zapytanie jest wykonywane w bazie danych MySQL Bitrix24. Pomaga zidentyfikować, które tabele i indeksy są używane, jak dane są łączone i dlaczego zapytanie może działać wolno.

Aby uzyskać szczegółową analizę zapytania, wykonaj następujące kroki:

1. Skopiuj wartości QUERY_ID i TIMESTAMP. Możesz je znaleźć w tabeli historii zapytań (bitrix24.bi_queries_t()). Wykonaj zapytanie SQL: SELECT * FROM TABLE(bitrix24.bi_queries_t()). Znajdź potrzebny wiersz i skopiuj wartości QUERY_ID i TIMESTAMP.

2. Dodaj parametry i wykonaj zapytanie. Dodaj skopiowane parametry do zapytania: SELECT bi_explain_query('20250319_081208_80250_xqccc', '2025-03-19 08:12:09.418'); i wykonaj je. Dla wygodnej analizy skopiuj wynik do schowka i otwórz go w dowolnym edytorze tekstu.

Otrzymasz szczegółowy plan wykonania zapytania SQL. Pokazuje on, jak serwer przetwarza zapytanie, w tym które tabele i indeksy są używane oraz które operacje mogą powodować spowolnienia. Plan składa się z dwóch części:

Oryginalne zapytanie SQL. W przykładzie zapytanie wybiera dane z tabeli deali i łączy je z innymi tabelami. Pobiera nazwę deala, kategorię, osobę odpowiedzialną, daty rozpoczęcia i zamknięcia, źródło i etap.

Tabela analizy zapytania. Ta część przedstawia kroki wykonywane przez serwer podczas przetwarzania zapytania. Każdy wiersz w tabeli reprezentuje krok w procesie pobierania danych. Tabela zawiera kilka kolumn wyjaśniających szczegóły wykonania zapytania:

Nazwa kolumny Opis
id Numer kroku w sekwencji wykonania. Pokazuje kolejność przetwarzania tabel w zapytaniu.
select_type Typ zapytania. SIMPLE oznacza, że zapytanie jest proste i nie zawiera podzapytań.
table Nazwa tabeli, do której uzyskuje się dostęp na tym etapie.
type Metoda wyszukiwania danych w tabeli:
  • ALL: Serwer skanuje całą tabelę, co spowalnia zapytanie.
  • eq_ref lub ref: Serwer używa wyszukiwania indeksowanego, co przyspiesza zapytanie.
possible_keys Potencjalne indeksy dostępne dla tej operacji.
key Indeks używany przez serwer podczas wykonywania zapytania. Puste pole oznacza, że serwer nie używa indeksów, co może spowalniać zapytanie.
key_len Długość klucza indeksu. Krótsze klucze zazwyczaj poprawiają szybkość wyszukiwania.
ref Pokazuje pola używane do łączenia tabel (np. według ID deala, kategorii lub etapu). Pomaga zrozumieć sposób łączenia danych.
rows Liczba wierszy sprawdzanych na tym etapie. Większa liczba wierszy oznacza wolniejsze zapytanie.
extra Dodatkowe szczegóły wykonania:
  • Using where: Serwer stosuje filtr i wybiera tylko potrzebne dane.
  • Using filesort lub Using temporary: Serwer tworzy tymczasowe tabele lub wykonuje sortowanie na dysku, co może spowalniać zapytanie.
Pełne wartości można znaleźć w dokumentacji MySQL.
Oficjalna dokumentacja MySQL

W wersji Bitrix24 On-Premise możesz samodzielnie dodać potrzebne indeksy do bazy danych. W wersji chmurowej nie ma możliwości ręcznej modyfikacji indeksów. Jeśli uważasz, że dodanie indeksu przyspieszy zapytania SQL, skontaktuj się z pomocą techniczną.
Jak skontaktować się ze Wsparciem Bitrix24


W skrócie

  • Nowe funkcje SQL w Kreatorze BI zwiększają możliwości analizy wydajności zapytań i identyfikacji przyczyn wolnego ładowania raportów.
  • Funkcja bitrix24.bi_queries_t() wyświetla historię zapytań SQL, czas ich wykonania i ilość pobranych danych. Pomoże Ci to zrozumieć, które zapytania spowalniają raporty i jak je udoskonalić.
  • Funkcja bi_explain_query() dokładnie analizuje sposób, w jaki serwer wykonuje konkretne zapytanie: które tabele i indeksy są używane i co spowalnia działanie zapytania. Analiza ta pozwala przyspieszyć wykonywanie zapytań i zmniejszyć obciążenie bazy danych.
Czy te informacje były pomocne?
Pomoc specjalisty ds. integracji
To nie jest to, czego szukam
Skomplikowany i niezrozumiały tekst
Informacje są nieaktualne
Artykuł jest za krótki. Potrzebuję więcej informacji
Nie podoba mi się sposób działania tego narzędzia
Przejdź do Bitrix24
Nie masz konta? Utwórz za darmo