Article View: pl.comp.programming
Article #205581Re: jsp vs php
From: Michal Kleczek
Date: Mon, 13 May 2013 11:24
Date: Mon, 13 May 2013 11:24
89 lines
4946 bytes
4946 bytes
On 2013-05-13 12:05, M.M. wrote: > W dniu poniedziałek, 13 maja 2013 09:59:47 UTC+2 użytkownik Michal Kleczek napisał: > >> W calym watku to sie pojawia wielokrotnie: >> 1. twoje rozwiazania tego nie zapewniaja bo operuja na poziomie systemu >> plikow - a od systemu plikow do fizycznego rozlozenia danych na >> nosnikach jeszcze baaaaaaardzo daleka droga > Czy potrafisz to jakos uzasadnic? > Tak, ale nie chce mi sie, bo to oczywista oczywistosc dla kogokolwiek, kto ma chocby blade pojecie co to jest i jak dziala system plikow oraz czym "plik" tak naprawde jest. > >> 2. DBMS jest dokladnie pod to projektowany, by minimalizowac ilosc >> operacji we/wy przy dostepie do danych > Tu na pewno mylisz sie. Pisalem w tym watku kilka razy, napisze jeszcze raz: > projektowany jest po pierwsze pod ogolny przypadek. Poza tym projektowany > jest pod wygode, elastycznosc, bezpieczenstwo, transakcje, wielodostepnosc > itd. Minimalizowanie operacji we/wy ma ktorys z kolei priorytet. > Jasne. I dlatego wlasnie ktos wymysla struktury danych typu B-drzewa - specjalizowane wlasnie w celu minimalizacji ilosci operacji we/wy. > >> Wziac dobry (odpowiedni do zastosowan) DBMS. NIE probowac robic "lepiej". > Nie mam bladego jak uzywasz slowa "lepiej", pewnie zupelnie inaczej niz ja. > > >> Kazdy indeks jest po to, zeby minimalizowac czas dostepu do danych. >> Rozne rodzaje indeksow sa przeznaczone do >> a) roznego rodzaju dostepu >> b) roznych rodzajow danych >> Sa rozne rodzaje indeksow. Na poczatek: >> http://en.wikipedia.org/wiki/Database_index > A jesli dane sa rozrzucone po dysku, to zaden indeks nie pomoze i > trzeba zrobic tyle odczytow, ile jest danych, prawda? > _Zawsze_ trzeba odczytac przynajmniej tyle, zeby potrzebne dane z dysku wczytac do pamieci. Kwestia jest jak te dane na dysku znalezc, zeby zminimalizowac koniecznosc niepotrzebnych dodatkowych odczytow. Przyklad z twoim plikiem CSV posortowanym po dacie. Zalozmy, ze zawiera N rekordow. Pierwszy ma w kolumnie daty wartosc 2001-01-01. Ile potrzeba odczytow, zeby znalezc rekordy z data 2011-02-23? > >> Trzymanie danych "obok siebie" niekoniecznie jest najlepsza strategia. > Dobrze rozumiem: Niekoniecznie, czyli może być najlepszą? > Moze. > >>> Clustered mozna >>> zakladac tylko na jedno pole, wiec odpada, prawda? >> Nieprawda. > Czytalem ze tylko na jedno, no ale dobra. Wiec pytanie: jak w bazach > jest realizowany clustered na więcej niż jednym polu? > Nie rozumiem pytania... Tak samo jak na jednym. > > >> Jestem - probuje ci chyba bezskutecznie uswiadomic, ze proponowane przez >> ciebie rozwiazania to nic innego jak indeksy w DBMS. > Moze sie mylisz? Moje rozwiazanie w jednym programie potrzebuje kilku > sekund a na sqlite trwalo 90 minut na nieplnej bazie. > Mozesz pokazac kod jednego i drugiego? W szczegolnosci strukture bazy i zapytanie? Bo jesli masz taka roznice, to znaczy, ze cos straszliwie schrzaniles. > > >> Prawie na pewno szybciej, niz zrobi to kod pisany przez ciebie. > Tez to pisalem wiele razy. Nie chodzi o sciganie sie z baza danych > na poziomie samego kodu. Chodzi jeszcze o sciganie sie na poziomie > stuktur danych. Dokladnie :-) -- Michal
Technical Details
Message-ID:
<kmqih9$1lc$1@speranza.aioe.org>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!plix.pl!newsfeed2.plix.pl!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mailReferences:
<cfa1e1b8-b40c-45e1-a091-7e7a1f53c751@googlegroups.com> <klqg29$o16$1@news.mm.pl> <029812f4-fc45-4e87-86d9-716b915ec3eb@googlegroups.com> <klsle1$ogf$1@news.mm.pl> <2c18b639-c23f-4b76-9e8e-a02eb1f6ec82@googlegroups.com> <km4nal$kkp$1@news.mm.pl> <4485a9d5-1bcb-43f0-b0a1-d40637de7a4c@googlegroups.com> <db2da6e3-badf-46d1-b0b5-3bead35d039e@googlegroups.com> <e29c6d46-5143-4e90-b0d7-5322767a06e8@googlegroups.com> <51874eb2$0$1250$65785112@news.neostrada.pl> <6f61945a-2435-4f60-bd44-29994fd65fcd@googlegroups.com> <kmau09$ju5$1@speranza.aioe.org> <8c385987-52d9-4567-bbff-3aa0465b34bc@googlegroups.com> <kmbgce$ile$1@speranza.aioe.org> <e30f409d-0f8d-449c-93f2-9abf7383886f@googlegroups.com> <kmd4e5$k0a$1@speranza.aioe.org> <3b49cd2b-90c3-447d-8336-fb075c6b694e@googlegroups.com> <kmijq0$tc$1@speranza.aioe.org> <2446e68c-18fd-49b3-af81-c912a0b4205b@googlegroups.com> <kmq6hd$rac$1@speranza.aioe.org> <61d28d50-6b3f-4032-bbf6-d266980c3780@googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!plix.pl!newsfeed2.plix.pl!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail From: Michal Kleczek <michal_wytnijto@kleczek.org> Newsgroups: pl.comp.programming Subject: Re: jsp vs php Date: Mon, 13 May 2013 13:24:32 +0200 Organization: Aioe.org NNTP Server Lines: 89 Message-ID: <kmqih9$1lc$1@speranza.aioe.org> References: <cfa1e1b8-b40c-45e1-a091-7e7a1f53c751@googlegroups.com> <klqg29$o16$1@news.mm.pl> <029812f4-fc45-4e87-86d9-716b915ec3eb@googlegroups.com> <klsle1$ogf$1@news.mm.pl> <2c18b639-c23f-4b76-9e8e-a02eb1f6ec82@googlegroups.com> <km4nal$kkp$1@news.mm.pl> <4485a9d5-1bcb-43f0-b0a1-d40637de7a4c@googlegroups.com> <db2da6e3-badf-46d1-b0b5-3bead35d039e@googlegroups.com> <e29c6d46-5143-4e90-b0d7-5322767a06e8@googlegroups.com> <51874eb2$0$1250$65785112@news.neostrada.pl> <6f61945a-2435-4f60-bd44-29994fd65fcd@googlegroups.com> <kmau09$ju5$1@speranza.aioe.org> <8c385987-52d9-4567-bbff-3aa0465b34bc@googlegroups.com> <kmbgce$ile$1@speranza.aioe.org> <e30f409d-0f8d-449c-93f2-9abf7383886f@googlegroups.com> <kmd4e5$k0a$1@speranza.aioe.org> <3b49cd2b-90c3-447d-8336-fb075c6b694e@googlegroups.com> <kmijq0$tc$1@speranza.aioe.org> <2446e68c-18fd-49b3-af81-c912a0b4205b@googlegroups.com> <kmq6hd$rac$1@speranza.aioe.org> <61d28d50-6b3f-4032-bbf6-d266980c3780@googlegroups.com> NNTP-Posting-Host: ZzNcjiVEyHSgCAKxRrAf8w.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120824 Thunderbird/15.0 X-Notice: Filtered by postfilter v. 0.8.2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit