Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 3
  • 48

Witam.

Napisałem aplikację, która pobiera pewne dane z kwerend, następnie z tych kwerend tworzy inne kwerendy i inne. Na końcu wyrzuca raport do Excela.

Niestety jest to bardzo niewydajne. 

Pracuję na dwóch tabelach (jedna to około 60 tys. rekordów, druga około 5 tys. rekordów). Szukam duplikatów i porównuję obie tabele.

Czy jest sposób, żeby zrobić to jakoś inaczej? Czy lepiej jest stworzyć do każdej kwerendy tabelę i ją po prostu aktualizować?

Czego należy unikać?

Pozdrawiam.
Michał.

Michał_Gwiazdonik
  • Zapytał
  • @ Michał_Gwiazdonik | 10.05.2016
    • lider
    • laureat
    • 13
    • 9
    • 51
Komentarze (1)
Popracowałem nad ustawieniami typów danych w tabelach i bardzo pomogło.
Skomentował : @ Michał_Gwiazdonik ,10.05.2016
  • 13
  • 9
  • 51

Odpowiedź (1)

  • 1

Witam.

Jeżeli pomiędzy tabelami stworzone zostały sprzężenia, to gdy jest ich zbyt wiele (nadmiarowe), to one też mocno obciążają kwerendę.

Pozdrawiam.
Tomasz Grabowski.

  • Odpowiedział
  • @ | 11.05.2016
  • TRENER MODERATOR ALTKOM AKADEMII
Komentarze
Tomaszu, dziękuję za odpowiedź. Okazało się, że optymalizacja tabel może zdziałać cuda. Głównie ograniczenie ilości znaków w typie tekstowym z 255 (defaultowym) na np. 4. Czas działania programu, skrócił się z około 40 min. do około 2 min.
Skomentował : @ Michał_Gwiazdonik ,11.05.2016
  • 13
  • 9
  • 51
Jeżeli będzie potrzeba jeszcze hardcore-owego dostrojenia wydajności polecam stosowanie, pól tekstowych o rozmiarze które są wielokrotnością 4 a najlepiej są potęgą liczby 2. Polecam również stosowanie dla pól liczbowych rozmiary liczba całkowita długa zamiast bajt i liczba całkowita. Pozdrawiam. Tomasz Grabowski.
Skomentował : @ TRENER MODERATOR ALTKOM AKADEMII ,12.05.2016
Dziękuje za wyczerpującą odpowiedź :) Pozdrawiam Michał
Skomentował : @ Michał_Gwiazdonik ,16.05.2016
  • 13
  • 9
  • 51