Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][SQL][PHP] Baza SQL a TXT - co lepsze ?
Forum PHP.pl > Forum > Przedszkole
Tomplus
Witam,

Chciałbym się zapytać jakiegoś profesjonalisty która z baz będzie szybsza, bardziej wydajna ?

Chce ulepszyć system wyświetlania danych w tabeli ligowej. Na tą chwilę to postać: nowa kolejka = nowa aktualizacja
Aktualizacja dokonywana jest z poziomu administracyjnego po wpisaniu danych wyników.

Moim celem jest wyświetlenie tabel z 22 kolejek całego sezonu (taką małą ewolucje statycznej tabeli).
Aby to zrobić musiałbym:
a) udostostępnić skrypt aktualizacji TABEL jako publiczny i każde wejście na tabelę aktualizowałoby wszystkie TABELe z tabeli WYNIKI.
b) stworzyć tabele w bazie dla każdej z kolejek - absurd
c) stworzyć kolumny w tabeli z wyświetlaniem wyników TABEL - zbyt dużo kolumn więc absurd
d) zapisywać każdą kolejkę, ligę w osobny plik TXT.
e) inne (propozycje)

Pytanie które z rozwiązań będzie najlepsze dla wyświetalania danych ?
Mephistofeles
Baza danych, ale znormalizowana.
Tomplus
ale obydwie metody są bazami danych :P
Może coś więcej na temat normalizacji ?

Dlaczego bazy płaskie nie są zalecane ?
Mephistofeles
Nie bardzo rozumiem co chcesz osiągnąć, opisz może co byś zapisywał w tych plikach.
Bierz pod uwagę, że silnik bazy jest pisany specjalnie dla tej bazy, do osiągania jak największej wydajności, natomiast Twój sposób przetwarzania plików napisany w PHP będzie na pewno wolniejszy od dedykowanej aplikacji do obsługi bazy.
CuteOne
Jak wyżej bazy danych - dlaczego? wyobraź sobie sytuację w której potrzebujesz znaleźć słów kluczowych w każdym artykule... a to dopiero przedsmak tego czego możesz potrzebować. Poza tym po kiego gnata drugi pisać coś co już istnieje w końcu "obydwie metody są bazami danych"?
Crozin
Cytat
cool.gif stworzyć tabele w bazie dla każdej z kolejek - absurd
Nie, nie musisz. Wystarczy kolumna w tabeli, przechowująca identyfikator kolejki.
Cytat
c) stworzyć kolumny w tabeli z wyświetlaniem wyników TABEL - zbyt dużo kolumn więc absurd
Jak wyżej.

Zapisanie takiej tabeli w relacyjnej bazie nie powinno stanowić problemu. Jeżeli już miałbyś z takiej bazy danych zrezygnować powinieneś rozpatrzyć rozwiązania nierelacyjne (np. MongoDB). Zapisywanie w plikach tekstowych to z reguły zły pomysł (pomijając sytuację, gdzie dane się po prostu odczytuje na podstawie nazwy pliku).

Cytat
Może coś więcej na temat normalizacji ?
Przepraszam, ale... Google zamknęli? http://www.google.com/search?client=opera&...-8&oe=utf-8
pablo89pl
tabela kolejki
id
nr_kolejki
liga_id
...i inne

tabela mecze
id
id_kolejki
team1_id
team2_id
.. itdi td

jak wiesz dokaldnei jak to wyglada organizacyjnie to mozna cos znormalizowanego, relacyjnego zaprojektowac
Tomplus
Być może macie racje że lepiej korzystać z jednak z bazy danych SQL, ale metoda zapisu w tym wypadku wszystkich kolejek....
czylii np. 13sezonów x 22 kolejki = 286 plików. Mimo że 264 pliki były by przeważnie bardzo rzadko odwiedzane, to jednak wczytanie z bazy jest szybsze.

Jednakże trzymanie tych danych w płaskiej ma swoją zaletę... te pliki mogę udostępnić publicznie, aby użytkownicy mogli je wykorzystywać do swoich potrzeb, tego samego nie dostaną jeżeli będą wpisane do bazy danych, chyba że specjalnie dla nich będą generowane pliki lub strony.
CuteOne
Na necie masz gotowce do generowania xml, csv, xls itd. a przepisanie ich pod siebie nie zajmie więcej niż 20 min roboty
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.