Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak Najwydajniej Zapisac Do Pliku Dane Pobrane...
Forum PHP.pl > Forum > PHP
ActivePlayer
jak w temacie... chodzi o jaknajwydajniejszy odczyt... serialize() jest za wolne...
ja zapisywalem tak:


  1. <?php
  2. $i=0;
  3. while($row=mysql_fetch_assoc($result))
  4. {
  5. $data[$i]=serialize($row);
  6. $i++;
  7. }
  8. $data=serialize($data);
  9. //zapis do pliku
  10. ?>


odczyt w podobny sposob tylko od tylu czyli

  1. <?php
  2. //odczyt z pliku
  3. $data=unserialize($data);
  4. foreach($data as $id=>$wartosc)
  5. {
  6. $data[$id]=unserialize($wartosc);
  7. }
  8. ?>


jakos tak to mialem...(w tym kodzie na gorze moga byc bledy bo na szybko pisalem z pamieci)

z tym ze bardzo niewydajne to jest... jakis inny pomysl questionmark.gif
Parti
  1. SELECT * INTO OUTFILE '/tmp/tablica.txt'
  2. FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"'
  3. LINES TERMINATED BY '\n'
  4. FROM tablica
ActivePlayer
A jak zapisac i do pliku i do bufora questionmark.gif jak potem wygląda odczyt ?
Parti
Cytat(ActivePlayer @ 2004-09-04 14:29:50)
A jak zapisac i do pliku i do bufora questionmark.gif jak potem wygląda odczyt ?

Proponuje wykonać test. Zrzuć jakąś tabele do pliku i zobacz jak on wygląda. I zastanów się czy to jest to, co jest potrzebne, bo nie wiem co Ty dokładnie chcesz z tymi danymi robić.

Odczyt wygląda normalnie, jak każdego innego pliku tekstowego. O jaki bufor chodzi?
ActivePlayer
potrzebuje do cachowania danych w mysqlu...
Parti
Cytat(ActivePlayer @ 2004-09-04 14:43:37)
potrzebuje do cachowania danych w mysqlu...

Chcesz cachować wyniki zapytań w plikach tekstowych? Kiepskie rozwiązanie. Jeśli wolno działają Ci zapytania znaczy się, że masz je źle napisane albo źle zaprojektowaną baze danych.

Chyba, że serwer MySQL znajduje się na innym komputerze i transfer jest wolny. W tedy może warto pomyśleć by nad replikacją?
ActivePlayer
Narazie chodzi dosc wspaniale ale przy 10 zapytaniach w jednym czasie pliki będą działały szybciej... dlatego to pisze... tak przyszłosciowo dosyc... pisze taki db_layer z wbudowanym cachem tongue.gif pełny automat z niego bedzie ;]
DeyV
a mozę warto byś się zapoznał z metodami wykorzystania cache w AdoDB?

(Choć również nieco dziwi mnie taka konieczność. Zazwyczaj jednak cache'uje się gotowy wynik działania skryptu - nie same zapytania)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.