-
X-Received: by 10.49.110.103 with SMTP id hz7mr534980qeb.5.1368058202741; Wed, 08 May
2013 17:10:02 -0700 (PDT)
X-Received: by 10.49.110.103 with SMTP id hz7mr534980qeb.5.1368058202741; Wed, 08 May
2013 17:10:02 -0700 (PDT)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin1!goblin.stu.neva.ru!l3no3667535qak.0!news-out.google.com!y6ni20
871qax.0!nntp.google.com!m7no3716729qam.0!postnews.google.com!glegroupsg2000goo
.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Wed, 8 May 2013 17:10:02 -0700 (PDT)
In-Reply-To: <518ac39f$0$1222$65785112@news.neostrada.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=178.36.216.67;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 178.36.216.67
References: <c...@g...com>
<d...@g...com>
<e...@g...com>
<51874eb2$0$1250$65785112@news.neostrada.pl>
<6...@g...com>
<kmau09$ju5$1@speranza.aioe.org>
<8...@g...com>
<kmbgce$ile$1@speranza.aioe.org>
<e...@g...com>
<51895d09$0$1252$65785112@news.neostrada.pl>
<f...@g...com>
<518a01b5$0$1212$65785112@news.neostrada.pl>
<6...@g...com>
<518a831d$0$26699$65785112@news.neostrada.pl>
<6...@g...com>
<518aa18a$0$26685$65785112@news.neostrada.pl>
<1...@g...com>
<518aa797$0$26697$65785112@news.neostrada.pl>
<0...@g...com>
<518ac39f$0$1222$65785112@news.neostrada.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d...@g...com>
Subject: Re: jsp vs php
From: "M.M." <m...@g...com>
Injection-Date: Thu, 09 May 2013 00:10:02 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:203271
[ ukryj nagłówki ]W dniu środa, 8 maja 2013 23:29:02 UTC+2 użytkownik R.e.m.e.K napisał:
> Ciagle nie wiem skad bierzesz te 10 sekund. Po piewsze to zalezy od
> komputera, jesli na Twoim lapku trwa to 10 sekund to na serwerze z
> prawdziwego zdarzenia moze trwac 0,1 s.
Sprawdzam na lapku i na stacjonarnym, oba kompy sa dosc nowe, ale
na pewno nie sa to serwery z prawdziwego zdarzenia. Czasami na lapku
dziala szybciej. Domniemam ze wynika to z ulozenia danych w tabelach.
Jesli na lapku dane sa obok siebie, to zapytanie bedzie dzialalo
szybciej niz nawet na serwerze z prawdziwego zdarzenia - zaraz ktos mi
zarzuci ze pisze oczywiste rzeczy :D
Czy da sie z 10s zejsc do 0.1s tylko dzieki:
1) lepszej konfiguracji (np. indeksy, buforowanie w RAM)
2) zastosowaniu lepszego sprzetu
3) zastosowaniu wiekszej ilosci komputerow?
AD1) powiedzmy ze indeksy juz mam dobre, a buforow RAM nie bede zwiekszal,
bo w koncu i tak i tak zabraknie.
AD2) nie mam pod reka dyskow SSD zeby sprawdzic.
AD3) nie wiem jak sie zachowuje postgres uruchomiony na klastrze,
zdaje sie ze jest taka mozliwosc, ale nigdy nie korzystalem z niej.
> Po drugie jakie to zapytania sa?
W pierszym lepszym zapytaniu slowo JOIN mam 11 razy. Docelowe
rozmiary czterech najwieksych tabel z tego zapytania szacuje
mniej/wiecej tak: 1mln, 10mln, 100mln i 1mld rekordow. Obecne
rozmiary 135543, 135543, 12578310, 20573317. Pozostale tabele sa raczej
male, do 50tys rekordow, raczej zmieszcza sie w boforze RAM.
Kazda duza tabela jest laczona joinem tylko jeden raz. Jedna
mala table wystepuje w zapytaniu dwa razy - ale to bez znaczenia.
W tym zapytaniu wszystkie zlaczenia sa po klucz_glowy==klucz_obcy.
Wszystkie klucze to biginty. W klazuli where jest:
tabel1.klucz_glowy = stala_1 AND tabela2.klucz_glowny = stala_2;
Zapytanie nie ma sortowania, ani grupowania. Wynikiem zapytania jest
srednio 70tys rekordow.
Na klucze obce w duzych tabelach sa zalozone indeksy. Indeks hash byl
minimalnie szybszy od b-tree. Indeksy na malych tabelach nic nie daly.
Na klucze glowne postges zalozy sam indeksy.
Nie wiem co jest jeszcze wazne... Moze to, ze wraz z rozrostem bazy,
nie bedzie zwiekszala sie ilosc rekordow zwracanych przez te
czasochlonne zapytania. Raczej z rozrostem bedzie rosla ilosc zapytan
jakie mozna zadac, a otrzyma sie podobna ilosc danych.
> Pokaz przyklad, bo jesli to zwykly select wyciagajacy kilka rekordow z
> jednym czy dwoma joinami to nie powinien trwac 10 sekund w normalnych
> warunkach.
Nam nadzieje ze powyzszy opis wystarczy :)
> Kilka lat temu zrobilem w PHP pewien serwis (powiedzmy, ze
> paraspolecznosciowy). Strona dziala do dzis, nie jest mocno obciazona, ale
> ma obecnie w najwiekszej tabeli prawie milion rekordow. Podczas generowania
> jednej z podstron sa z niej odczytywane rekordy w liczbie od jednego do
> kilkudziesieciu, zapytanie to ma tez jednego joina. Strona na jedno
> odswiezenie wykonuje kilka zapytan i generuje caly kod w np. "0.0307 s" -
> skopiowalem to teraz ze strony - bylo tam kilka zapytan SQL w tym jedno z
> tej sporej tabeli. Baza MySQL. Hosting home.pl, wirtualka.
Tez robilem podobne rzeczy w oparciu o bazy danych, sam nie wiem ile tego
bylo. Moze z 50 serwisow w PHP i drugie tyle programow/programikow w C++.
W niektorych tabele sa znacznie wieksze niz 1mln rekordow. Nie pamietam
ile czasu trwaja zapytania. Moze w tej chwili nie pamietam jakiegos
upierdliwego przypadku, ale raczej nigdy operacje dyskowe nie byly
waznym problemem. Tez nigdy nie zrobilem strony www dla ktorej "10 tys
uzytkownikow to nic".
> Nie bylbym pewien czy niemozliwe, teoretycznie bym to potrafil sobie
> wyobrazic. Ale nie mam takich doswiadczen, gdyz nie pracuje z duzymi bazami.
Pewnie sie skonczy tak, ze gdzies wykupie jakas chmure do testow,
zainstaluje baze i pomierze czasy. Tez nie wiem jakie operacje bazodanowe w
jakim stopniu sie zrownoleglaja. Szukac w necie i czytac az sie boje,
trduno odroznic co jest przechwalkami producentow, a co rzetelnym testem.
> http://en.wikipedia.org/wiki/Oracle_RAC
> http://en.wikipedia.org/wiki/Oracle_Clusterware
> http://en.wikipedia.org/wiki/Oracle_Cluster_File_Sys
tem
Dzieki, popatrze, ciekawe ile kosztuja Oracle na klaster :)
> ...przy okazji okazuje sie, ze sa specjalne systemy plikow dla baz - prawie
> to co chciales :-)
Czasami docieraly do mnie takie doniesienia jak specjalny system plikow pod
baze danych, albo pod wyszukiwarke internetowa... pierwszy raz bede musial
sprawdzic to na wlasnej skorze :)
> Ale obawiam sie, ze koszty takich rozwiazan zmusilyby Cie
> do sprzedania calej rodziny na 3 pokolenia w przod ;-)
Ostatnio prawie stracilem przytomnosc, jak dowiedzialem sie, ze koszt
jednej, w sumie niezbyt duzej, reklamy, to okolo 800tys pln :) Niesadze
zeby serwis w ogle mogl zarobic az na taka reklame. Niemniej koszty
sprzetu i oprogramowania moga okazac sie relatywnie niskie.
Pozdrawiam
Następne wpisy z tego wątku
- 09.05.13 02:32 M.M.
- 09.05.13 08:44 Tomasz Sowa
- 09.05.13 08:58 Tomek Kańka
- 09.05.13 09:01 Ghost
- 09.05.13 09:04 M.M.
- 09.05.13 09:20 M.M.
- 09.05.13 09:28 R.e.m.e.K
- 09.05.13 09:56 firr kenobi
- 09.05.13 09:56 M.M.
- 09.05.13 10:08 M.M.
- 09.05.13 10:15 M.M.
- 09.05.13 10:21 Stachu 'Dozzie' K.
- 09.05.13 10:30 Ghost
- 09.05.13 10:31 R.e.m.e.K
- 09.05.13 11:28 M.M.
Najnowsze wątki z tej grupy
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- 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
Najnowsze wątki
- 2025-05-02 Wrocław => Controlling systems Consultant <=
- 2025-05-02 Kraków => Programista MS Dynamics 365BC/NAV <=
- 2025-05-02 Kraków => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu
- 2025-05-02 Warszawa => Spedytor Międzynarodowy <=
- 2025-05-02 Białystok => NMS System Administrator <=
- 2025-05-02 Warszawa => Sales Director (Cloud solutions) <=
- 2025-05-02 Czy na URZĘDACH RP3 można bezkarnie LATAMI wywieszać flagę obcego państwa? [podstawa prawna]
- 2025-05-02 tona telefonów komórkowych kryje ok. 3,5 kilograma srebra, 360 gramów złota i 280 gramów palladu.
- 2025-05-01 Jak zbudować Perpetum Mobile
- 2025-05-01 Wybory ten wygra kto odzyska TEPS'ę od Kulczyka
- 2025-04-30 Czy wymieniacie fotel kierowcy, gdy kupujecie używanego gruchota po prostacie i nietrzymaniu moczu ?
- 2025-05-02 dewastują Tesle
- 2025-05-02 jadę do państwa polskiego
- 2025-05-01 zachowaj odstęp
- 2025-04-30 Czy wymieniacie fotel kierowcy, gdy kupujecie używanego gruchota po prostacie