Rozwiązywanie problemów z raportami: Raport wydajności

Podczas przeglądania raportu może wystąpić długi czas przed Zobacz pierwszej strona.Aby ustalić, gdzie przetwarzania raportu czas jest zużyty, zobacz Techniki rozwiązywania problemów zgłaszać problemy.Po ustaleniu, czy czas opóźnienia jest pobieranie danych, przetwarzania raport lub renderowanie raportu, należy użyć w tym temacie, aby ułatwić rozwiązywanie problemów.

Moje dane trwa zbyt długo, aby pobrać

Mój raport zbyt długo przetwarza

Mój raport zbyt długo renderowania

Wskazówki dotyczące optymalizowania przetwarzania raportu projektowania

Moje dane trwa zbyt długo, aby pobrać.

Więcej danych raport wymaga użycia więcej zasób, ruch w sieci, bardziej przetwarzania czasi więcej pamięci masowej.Analizować kwestie, przedstawione w raporcie, aby określić, ile potrzebne dane, a następnie tylko pobieranie danych ze źródeł danych raportu.

Pobrać więcej danych raportu, niż jest to wymagane

Filtrowanie, sortowanie, i agregacja jest bardziej wydajny niż źródło danych podczas przetwarzania raportu.Pisanie kwerend zwraca poziom szczegółów, które są widoczne w raporcie.Poniższa lista zawiera sugestie pomysły dotyczące oceny każdej kwerendy raportu w raporcie:

  • Pisanie kwerend, z którym klauzul lub klauzul HAVING, które ograniczają danych tylko przez użytkownika muszą znaleźć w raporcie.Użyć parametrów kwerendy w celu ograniczenia danych, które są pobierane przy uruchomieniu czas.Parametry kwerendy automatycznie powiązany odpowiednie parametry raportu i umożliwić użytkownikowi zdecydować, które dane są zainteresowani.Aby uzyskać więcej informacji, zobacz Filtrowanie wierszy przy użyciu WHERE i HAVING.

    Podczas tworzenia migawek raportów, który ma parametry raportu, które filtrują dane migawka należy zapisać wszystkie możliwe dane, które mogą być wyświetlane w raporcie.W tym przypadek nie należy używać parametrów kwerendy w kwerendach dataset.Zamiast ręcznie utworzyć parametry raportu, których można używać w wyrażeniach filtr, aby umożliwić użytkownikowi określić żądane dane raportu.

  • Pisanie kwerend z klauzula ORDER BY presort dane są pobierane do raportu.Sortowanie danych w żądanej kolejnooci sortowane raportu.Presorted danych zwiększa czas przetwarzania raportu ze względu na sposób jest przechowywany w pamięci.Wiele zadań przetwarzania raportu nie wymagają sortowania danych przed przetworzeniem go.Na przykład suma nie jest zależny od zamówienia.Danych w obrębie grupy wystąpień nie jest automatycznie sortowana.Jeśli nie potrzeba sortowania danych w raporcie, nie zestaw sortowania wyrażeń na danychzestaw lub obszaru danych.Aby uzyskać więcej informacji, zobacz Klauzula ORDER BY (Transact-SQL) i Jak Sortowanie danych w regionie danych (Konstruktora raportów 3.0 i SSRS).

    Sortowanie grup lub sortowanie według wartości wartość zagregowana jest znacznie prostsze niż raportu w kwerendzie i jest również często bardziej efektywne.

  • Zapisu kwerend z Grupuj według wartości sumaryczne na dane źródło.

    Wiele razy najbardziej skutecznym sposobem przekazywania informacji jest agregowanie wartości i wyświetlając podsumowań.Można obliczyć pewien poziom zagregowanych danych źródło i pobierać je dla elementu dataset."Szczegóły" dane w zestawie danych reprezentuje teraz obliczane na danych zagregowanych źródło.Aby uzyskać więcej informacji, zobacz Podsumowanie wyników kwerendy (wizualne Narzędzia bazy danych).

    Po tych wartości pre-aggregated są w raporcie, można kontynuować do agregowania wartości jak korzystanie z funkcja agregująca jest matematycznie przechodnie, na przykład wartość zagregowana.Na przykład załóżmy, że zestaw wartości 6: 1, 2, 3, 4, 5, 6.Jeśli wartości grupować pary, masz zestaw trzech wartości: 3, 7, 11.Można obliczyć sumę na pierwszy zestaw (21) i obliczyć sumę drugi zestaw (21) oraz sumy są takie same, niezależnie od grupowanie.Wartości w zestawach jest średnia przy użyciu funkcja AVG, da różne wyniki dla każdego zestaw.Średnia dla zestaw 6 jest 21 i 6 lub 3.5.Średnia zestaw 3 jest 21 i 3 lub 7.AVG nie jest przechodnie funkcja.

  • Należy wziąć pod uwagę ilość danych wymaganych dla wykresu lub miernika.Rysowanie setki punktów w kilka pikseli na monitorze obniża wydajność i nie zwiększa wyświetlania grafiki.Wartości wątpliwe jest więcej niż 7 lub 8 wycinki wykresu kołowego.Aby uzyskać więcej informacji, zapoznaj się z informacjami w wykresów określonych typów wymienionych w Typy wykresów (program Report Builder 3.0 i usługi SSRS).

  • Dla elementów raportu z widocznością warunkową, procesor raportu muszą stosować grupowanie, sortowanie i filtrowanie wyrażeń, nawet jeśli tylko najwyższy poziom jest najpierw widoczna.Chociaż na żądanie przetwarzania w SQL Server 2008 Reporting Services optymalizuje oceny danych przez przetwarzanie tylko dane, które jest widoczne, wszystkie możliwe dane części raportu.Jeśli użytkownik jest zainteresowana tylko niektóre wyświetlenie danych szczegółowych o czas, raport drążenia jest lepszym wyborem. Aby uzyskać więcej informacji, zobacz Typy raportów.

  • Należy rozważyć utworzenie wykonanie migawki raportu.Migawka raportu zawiera wszystkie dane raportu pobierane do zestawów danych w definicja raportu.Aby uzyskać więcej informacji, zobacz Tworzenie, modyfikowanie i usuwanie migawek w historii raportów.

Limit czasu kwerendy

Kwerenda czas-wartości są określane podczas tworzenia raportu po zdefiniowaniu zestawu danych.czas-Out wartość jest przechowywany raport w czaspoza elementem dla kwerendy.Domyślnie wartość ta wynosi 30 sekund.Aby uzyskać więcej informacji, zobacz Ustawienie wartości limitu czasu dla raportu i przetwarzania zestawu udostępnionych danych (SSRS).

Aby ustawić czas-poza wartość dataset kwerendy, zobacz Jak Tworzenie zestawu danych udostępnionych lub osadzone Dataset (Konstruktora raportów 3.0 i SSRS).

Duże ilości przyczyny ruchu sieciowego oczekiwania razy dla użytkownika

Duże ilości danych, przekazane jako ruch sieciowy może wprowadzić czas oczekiwania dla użytkownika.W zależności od bazy użytkowników oczekiwane i przewidywaną wielkość widoki raportu można wybrać właściwe podejście do wdrażania składniki serwer raportów.Aby uzyskać więcej informacji, zobacz Planowanie topologii rozmieszczania.

Na przykład następujące strategie może zmniejszyć czas oczekiwania dla użytkownika:

  • Wykaz server raportu należy przechowywać na tym samym komputerze co serwer raportów.

    baza danych serwera raportów Tempdb zarządza dane raportu są pobierane dla każdego zestawu danych kwerendy w definicja raportu.Przechowywanie danych raportu z procesorem raport zmniejsza ruch w sieci może spowalniać exeuction raportu.

  • Źródeł danych magazyn danych można przechowywać na oddzielnym serwerze niż serwer raportów magazyn danych.

    Chociaż pobieranie danych w sieci dodawać dodatkowe zadania wykonywania raportu, posiadające magazyn danych i Reporting Servicesusługi, które trzeba by usunąć pamięci na tym samym serwerze może zmniejszyć wydajność.

Mój raport zbyt długo przetwarza.

Raport przetwarzanie odbywa się po pobraniu danych dla zestawów danych raportu, gdy procesor raport łączy układ raportu i danych, aby utworzyć format śródrocznego raportu, który jest następnie przekazywany do renderowania raportu.Ogólnie rzecz biorąc procesor raport łączy danych i układu tylko do bieżącej strona, który jest wyświetlany przez użytkownika.Czas przetwarzania raport może dotyczyć układ raportu, stronicowania i złożonych wyrażeń w obszarach raportu, które mają wiele wystąpień.

Użyj tej sekcji, aby poprawić wydajność przetwarzania raportu.

Wyrażenia w nagłówku lub stopce życie wszystkich stron do przetworzenia

Gdy zawiera odwołanie do pole wbudowane [&TotalPages], podzielony na procesor raport musi strona całego raportu przed można renderować pierwszej strona.Jeżeli nie odnosi się do [&TotalPages] istnieje, pierwsza strona może być renderowana i zwrócony do użytkownika natychmiast, bez przetwarzania pozostałej części raportu.Ponadto procesora raportu zakłada, że jakaś złożonych wyrażenie w strona nagłówka lub stopki może zawierać odwołanie do bezpośredniego lub pośredniego [&całkowitastronas].

Aby uniknąć procesora raportu, podzielony na strona obszerne sprawozdanie nie zawierają odniesienia do [&TotalPages] lub dowolnego wyrażenia złożone strona nagłówka i stopki strona.

Nie podziały stron w raporcie

Jako użytkownik stron raportu, raport procesora łączy danych i informacji układ raportu na każdej stronie raportu i przekazuje strona do renderowania raportu.W przypadku raportu ma podziałów stron całego raportu muszą zostać przetworzone zanim użytkownik może przeglądać pierwszej strona.

Renderowanie strona miękki podział, takich jak przeglądarka HTML automatycznie obsługuje stronicowania dla Ciebie.Można zmienić to zachowanie automatycznego i ustawić raport ma być strona przez zestaw właściwość raportu InteractiveHeight na 0.Dla renderowania podział strona można ręcznie dodać podziały stron.Aby uzyskać więcej informacji na temat typów renderowania, zobacz Opis zachowań renderowania (program Report Builder 3.0 i usługi SSRS).

Sprawdź, że InteractiveHeight nie jest 0 i jest zestaw niektóre rozmiaru strona uzasadnione, na przykład 8,5 cala.Dodawanie podziału strona do elementów raportu lub grupy element tablix do organizowania raportu do stron.Zmniejsza to ilość danych, które muszą być przetwarzane dla każdej strona.Aby uzyskać więcej informacji, zobacz Jak Dodawanie podziału strony (Konstruktora raportów 3.0 i SSRS).

Złożone grupowania regionu element tablix danych i funkcji agregujących

Wiele poziomów grup zagnieżdżonych i sąsiadujących w obszar danych elementu element tablix może wpływać na wydajność przetwarzania raportu.Należy wziąć pod uwagę poziom grupowanie liczbę wystąpień grupowanie i stosowania wartość zagregowana funkcje, które wymagają oceny po zastosowaniu grupowanie, filtrowania i sortowania wyrażeń.Na przykład jest poprzedni "drogi" wartość zagregowana wartość zagregowana, ponieważ jej wartość zależy od posortowane elementy danych region; Suma nie jest zależny od zamówienia i wymaga mniej zasobów.Inne post-sort agregatów najpierw dołączyć i ostatniego.Aby uzyskać więcej informacji, zobacz Kompendium funkcji agregujących (program Report Builder 3.0 i usługi SSRS).

Ocena projektu raportu raportu i rozważyć, czy niektóre agregacja danych może wystąpić na dane źródło.Zmniejszenie ilości danych w raporcie mogą być wystarczające dla zapewnienia wydajności bez zmieniania żadnych funkcja agregująca wywołań.

Wiele wystąpień podraporty w danych element tablix regionu raport wolniej

Zrozumieć, zalet i wad używania podraporty.Każde wystąpienie podraport jest wykonanie osobnej kwerendy i zadania przetwarzania oddzielny raport.

  • Podraporty po kilka wystąpień podraport.

  • Podraporty wewnątrz grupy nie należy używać w wielu wystąpień grupy.Rozważmy na przykład aby wyświetlić listę sprzedaży i zwraca wartość dla każdego klienta, za pomocą przeglądanie szczegółowe raportów.Należy rozważyć, czy można napisać kwerendę, aby łączyć klienta przy sprzedaży i zwraca wartość, a następnie Grupuj według identyfikatora klienta.

  • Przy podraporty podraport używa źródło danych innego niż raportu głównego.Jeśli problem jest wydajność, należy rozważyć zmianę kwerendy zestawu danych w raporcie głównym przy użyciu jednej z następujących strategii łagodzenia skutków:

    • Zbieranie danych w magazynie danych i użyj magazyn danych jako źródło danych dla pojedynczego zestawu danych.

    • Użyj SQL Server serwery połączone i napisać kwerendę, która pobiera dane z wielu baz danych.

    • Możliwości OTWARTYCH wierszy można użyć w celu określenia różnych baz danych.

Procesy konkurowanie o tej samej pamięci na serwerze raportów

Wiele aplikacji, które konkurują z tych samych zasobów pamięci serwer raportów mogą wpływać na przetwarzanie raportu.

Praca z administrator systemu, aby sprawdzić konfiguracja pamięci zarządzania jest poprawny model używanego serwer raportów.Aby uzyskać więcej informacji, zobacz Konfigurowanie pamięci dostępnej dla aplikacji serwera raportu.

Raport czasów wykonania Out

Aby uruchomić duże raporty, istnieją dwie czas-limity muszą dostosować: sprawozdanie z wykonania czas-out oraz ASP.NET czas-out.

Sprawozdanie z wykonania czas-wartości są określane serwer raportów.Aby uzyskać więcej informacji, zobacz Ustawienie wartości limitu czasu dla raportu i przetwarzania zestawu udostępnionych danych (SSRS).

ASP.NET czas-zasad jest kontrolowane przez plik konfiguracja serwera raportu.Domyślną lokalizacją tego pliku jest <dysku>: \Program Files\Microsoft SQL Server\MSRS10_5.MSSQLSERVER\Reporting Services\ReportServer\web.config.Aby zestaw maksymalną liczbę sekund można wykonać żądania, Dodaj httpRuntime element do tego pliku:

<configuration>
   . . .
   <system.web.
      . . .
      <httpRuntime executionTimeout="90"/>
      . . .
   </system.web.
   . . .
</configuration>

W zależności od rozmiaru raportu wartość ta może być reprezentują kilka godzin.

Mój raport zbyt długo renderowania.

Raport renderowania występuje po łączone w format tymczasowe i następnie przekazywane dane i układ rozszerzenie renderowania.Czas renderowania może dotyczyć ilości danych, liczbę wystąpień elementów raportu i stronicowania.Podczas eksportowania raportu są przekazywanie tymczasowe format do określonego mechanizmu renderującego.Jeśli wiadomo, że użytkownicy wyświetlić raport w określonym formacie, należy zoptymalizować raport dla tego modułu renderowania.Aby uzyskać więcej informacji, zobacz Eksportowanie raportów (program Report Builder 3.0 i usługi SSRS) i Opis zachowań renderowania (program Report Builder 3.0 i usługi SSRS).

Użyj tej sekcji, aby poprawić wydajność renderowania dla raportu.

Raport jest nie są zoptymalizowane dla wybranego formatu renderowania

Niektóre funkcje nie są obsługiwane w wszystkich renderowania.Jeśli podstawowy format wyświetlania raportu jest określonego formatu pliku, należy zmodyfikować projekt raportu zoptymalizowanie wyświetlania czynności użytkownika.

  • Dodaj strona podziały, gdzie to ma sens.Na przykład każdy podział strona definiuje nowy arkusz w programie Excel.Każdy arkusz może obsługiwać maksymalnie 65000 wierszy.Należy wziąć pod uwagę te limity, kiedy użytkownik zestaw podziały w raporcie.

  • Eksportowania do programu Excel, nie Scalaj komórki w obszar danych elementu element tablix.W dowolnej postaci raportów wyrównanie w pionie elementy raportów.Scalone komórki i elementy raportów odwołań do niewyrównanych zakłócać funkcje wyeksportowany raport programu Excel.

  • Analizatory składni HTML nie są skuteczne w bardzo dużych stron HTML renderowania.Jeśli masz problemy z renderowania raportu, zaznacz format, który generuje mniejszy plik (na przykład CSV).Jeśli nie można wybrać inny format, ponieważ narzędzi raportu nie jest dostępna, można zdefiniować subskrypcja zestaw renderowania formatu i dostawa raport jako statyczne dokument do udziału plików.Aby uzyskać więcej informacji, zobacz Usługi Reporting Services dostawy udział pliku.

Wskazówki dotyczące optymalizowania przetwarzania raportu projektowania

Jeśli raport wydajność głównych obaw, użyj następujących informacji do optymalizowania czas wymagany do przetworzenia raportu:

  • Dla raportów, które mają wiele wystąpień pola tekstowe zestaw CanGrow i CanShrink na tekst w polach wartość false.Domyślnie każda komórka w obszar danych elementu element tablix zawiera pole tekstowe tak, aby całkowita liczba pól tekstowych, które muszą być sporządzone można szybko rosnąć.

  • Dla raportów, które mają wiele obrazów zestaw AutoSize obrazów na inną wartość, takich jak dopasowanie.

  • Dla pól tekstowych należy unikać ustawienie właściwość TextAlign ogólne.Wartość ta wymaga przetwarzania warunkowego w zależności od zawartości pola tekstowego.

  • Należy unikać poziomych podziałów strona, gdy nie są wymagane.Przejrzyj marginesy, kolumna szerokości i odstępu w raporcie.Na przykład renderowania raportu.Plik TIFF i obejrzeć ją w Microsoft Podgląd faksów i obrazów systemu Windows, aby ustalić, czy dodatkowe strony są renderowane.

Właociwooć KeepTogether na członków element tablix, tylko wtedy, gdy musi kontrolować zachowanie renderowania specyficzne dla obszar danych elementu element tablix.Funkcja KeepTogether wymaga dodatkowego przetwarzania podczas strona podziały są obliczane.

Zrozumienie wpływu za pomocą flagi śledzenia

Flagi śledzenia aparatu bazy danych programu SQL Server może być użyteczne, ale ważne jest zrozumienie sposobu zoptymalizowana flagi śledzenia i ich wpływu na inne aplikacje.Na przykład podczas używania flagi T834 na komputerze, na którym jest uruchomiona baza danych i serwer raportów, zalecane jest konfigurowanie limity pamięci dla aparatu bazy danych programu SQL Server i serwer raportów.Więcej informacji na temat aparat bazy danych należy przejrzeć informacje w pamięci serwera max Opcja i uzyskać więcej informacji serwer raportów Konfigurowanie pamięci dostępnej dla aplikacji serwera raportu

-