![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 655 Pomógł: 73 Dołączył: 2.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Cześć!
Przejde do rzeczy. Mamy tablice, w ten sposób:
Ogólnie takich małych tablic po 5-6 rekordów jest ok. 8mln. Podzielone są po 70 tyś. Teraz te 70 tyś. zapisuje w postaci .csv:
Teraz sedno sprawy: Przy 100k rekordów trwa to dosłownie kilka sekund. Przy 1mln trwa to już średnio 3 minuty (ostatnia próba: 223 sekundy) (licze z pomocą microtime(true)). Nawet boje się włączyć na 8mln rekordów... Jakiś pomysł jak to przyśpieszyć? Cel: zapis do pliku .csv. Ten post edytował Forti 7.08.2015, 09:57:19 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi o ten myk z cudzysłowem, to nie szkodzi. Miałem parę razy podobny problem i niestety mniej więcej tak się go rozwiązuje, więc jest to OK.
Jeśli chodzi o sam czas, to najprawdopodobniej to przez to, że ładujesz wszystkie dane do pamięci, przez co maszyna jest tak obciążona, że wszystko działa dużo wolniej. Jeśli pobierasz dane z bazy, to rób to jakimś data provider iteratorem i pobieraj w segmentach. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 20:43 |