-
Data: 2013-05-06 21:55:09
Temat: Re: jsp vs php
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu poniedziałek, 6 maja 2013 08:33:21 UTC+2 użytkownik R.e.m.e.K napisał:
> A co z fragmentacja dysku?
Z tego co słyszałem, problem fragmentacji dysku na dobrych systemach
plików nie występuje przy spełnieniu prostego warunku: dysk nie może
być zapełniony, musi na nim być zawsze pewien zapas wolnego miejsca.
> Co Ci da to, ze dane beda "obok" siebie w pliku
Nie chodzi o to co da, ale co zlikwiduje. Zlikwiduje zbędne naprowadzania
głowicy. Będzie odczyt sekwencyjny zamiast random.
> skoro beda na dwoch koncach dysku?
O ile się nie mylę, na dobrych systemach plików tak się dzieje bardzo rzadko.
> Pomijajac juz taki detal, ze nie ma zadnego mechanizmu ukladania
> danych w tabelach wg swoich widzimisie.
Skoro znasz tak dobrze silniki bazodanowe, to wierzę, że takiego mechanizmu
żaden silnik nie oferuje. Ja je znam bardzo pobieżnie... umiem założyć
tabelę, indeksy, zrobić zapytanie, ewentualnie umiem dodać jakiś triger.
Myślałem że może są jakieś zaawansowane optymalizatory.
> Tym zarzadza serwer i nie masz do tego dostepu. Nie istnieje takie
> pojecie jak kolejnosc ulozenia danych w pliku bazy danych.
Kilka dni temu też tak powiedziałem, kumpel na to mi odrzekł: znasz góra
10% możliwości dwóch baz, lepiej się upewnij. Rozumiem że Ty znasz
bazy danych w 100% i mogę na tej informacji polegać?
> Z pewnoscia moge zaryzykowac stwierdzenie, ze chocbys stanal na glowie nie
> jestes w stanie zrobic nic wydajniejszego niz wspolczesne silniki DB.
Nie mogę, a jakimś dziwnym trafem kilka razy w swoim życiu zrobiłem. Kilka
ostatnich programów które napisałem działają setki razy szybciej na plikach
csv niż na bazach postgres i sqlite. Działają dlatego szybciej, że w jednym
plik csv mam dokładnie to, co z bazy muszę wyciągać skomplikowanym zapytaniem.
Zrób eksperyment. Załóż bazę która zawiera 5-7 tabel dużych tabel. Połącz
wszystkie tabele jakimiś relacjami. Napisz zapytanie do wyciągania danych.
Zmierz czas zapytania. Potem zapisz wyniki zapytania w pliku, w postaci
liniowych rekordów. Ostatecznie zmierz czas odczytania tego pliku ( w
jakimś dobrym języku, może Java, albo C++). Zobacz jakie będą różnice w
czasie.
No ale ja nie znam perfekcyjnie wszystkich możliwości jakie oferują bazy...
może na bazach też da się uzyskać taki efekt... może coś robię źle...
Nie wiem, ja raczej pytałem w tym poście o radę.
> Powiem wiecej, wydaje mi sie, ze trwonisz czas na nieistotnych rzeczach,
> bazy danych dzialaja z setkami milionow rekordow, ze zlaczeniami i innymi
> "utrudnieniami" i daja rade.
Dają radę, tak jak mogą. Masz setki milionów rekordów. Wśród nich masz tysiąc
rozrzuconych losowo przeznaczonych do wyciągnięcia. Jeśli rekordy nie są w
cache, to:
1) jeśli nie są zaindeksowane - trzeba przejrzeć setki milionów, aby znaleźć
ten tysiac;
2) jeśli są zaineksowane - w pesymistycznym przypadku trzeba naprowadzić
tysiąc razy głowicę + jeszcze trochę naprowadzeń na odczyt indeksów.
A gdy ten tysiąc rekordów leży w liniowym pliku, albo są w pamięci
RAM, bo programista napisał specjalistyczny algorytm cache, to dane
są w ułamku sekundy natychmiast.
> Na 90% zrobisz w swoim sofcie wiecej waskich gardel niz to, ktore
> dostaniesz od serwera SQL.
Nigdy nie twierdziłem że wyręczanie serwera SQL to łatwe zadanie i
pierwsza wersja wyrzeźbiona ręcznie będzie na pewno szybsza. Każdy
proces optymalizacji jest trudny i daje wiele możliwości na pogorszenie.
> Oczywiscie serwerowi tez
> mozesz pomoc lub podlozyc noge projektujac dobra lub zla strukture tabel.
No właśnie pytałem czy bazy danych oferują coś do układania potrzebnych
danych obok siebie :)
Pozdrawiam
Następne wpisy z tego wątku
- 06.05.13 22:34 M.M.
- 06.05.13 23:28 R.e.m.e.K
- 06.05.13 23:39 Stachu 'Dozzie' K.
- 06.05.13 23:52 R.e.m.e.K
- 07.05.13 00:50 grapeli23
- 07.05.13 01:07 Stachu 'Dozzie' K.
- 07.05.13 01:23 grapeli23
- 07.05.13 01:48 M.M.
- 07.05.13 01:58 M.M.
- 07.05.13 02:47 Stachu 'Dozzie' K.
- 07.05.13 03:16 M.M.
- 07.05.13 08:57 firr kenobi
- 07.05.13 09:21 R.e.m.e.K
- 07.05.13 09:23 firr kenobi
- 07.05.13 11:56 Piotr Chamera
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-19 Test - nie czytać
- 2025-01-19 qqqq
- 2025-01-19 Tauron przysyła aneks
- 2025-01-19 Nowa ładowarka Moya a Twizy -)
- 2025-01-18 Power BANK z ładowaniem przelotowym robi PRZERWY
- 2025-01-18 Pomoc dla Filipa ;)
- 2025-01-18 znowu kradno i sie nie dzielo
- 2025-01-18 Zieloni oszuchiści
- 2025-01-18 Zielonka => Specjalista ds. public relations <=
- 2025-01-18 Warszawa => Frontend Developer (JS, React) <=
- 2025-01-18 Warszawa => Software .Net Developer <=
- 2025-01-18 Warszawa => Developer .NET (mid) <=
- 2025-01-18 Katowice => Administrator IT - Systemy Operacyjne i Wirtualizacja <=
- 2025-01-17 Zniknął list gończy za "Frogiem". Frog się nam odnalazł?
- 2025-01-17 Kto wytłumaczy "głupiemu" prezydentowi Dudzie wielką moc prawną "dekretu premiera" TUSKA? [(C)Korneluk (2025)]