[Linux-programlama] Re: MySQL: sorgu analizi

---------

[Linux-programlama] Re: MySQL: sorgu analizi

From: Anıl KARADAĞ <anil.karadag_at_gmail.com>
Date: Sun, 06 Apr 2008 21:07:41 +0300
Message-Id: <1207505261.6509.3.camel@karadag>

harflendirme yapayým derken hatalar yapmýsým. indeks kullanmak insert
islemlerinde sorun yaratmýyor mu? Yani suan 3 tane indexli alaným var
bunu arttýrmak mantýklý mý?

"KEY 'e' USING BTREE ('e')"

ben sorgularda arama yaptýgým 3 alanda index kullnýyorum. datetime
alanýnda index yok. O kýsmýný yanlýþ göstermisim.

yardýmlarýnýz icin tesekkurler ancak 350.000 habere mysql in bu kadar
yavas tepki vereceðini tahmin edemezdim.

Cts, 2008-04-05 tarihinde 22:40 +0300 saatinde, Ismail ASCI yazdý:
> tekrar merhabalar,
> gonderdiginiz tablo yapisinda mysql olusturdugunuz index'leri
> kullanmayacaktir. yani onlari olusturmus olmanizin bir faydasi yok.
> basitce f ve e alanlari uzerinde key yeni (f, e) seklinde bir index
> olusturmaniz oldukca faydali olacaktir diye dusunuyorum.
> bu asamadan sonra
> 1. sorgunuzda order by random() yerine
> select a, b, c, random() as x ......order by x seklinde deneyebilir
> misiniz?
> 2. ve 3. sorgular da ise benim aklima gelen pek birsey yok acikcasi
> esit degil ve not null pek hos durmuyorlar orada :)
>
> kolay gelsin.
>
> 2008/4/4 Anýl KARADAÐ <anil.karadag_at_gmail.com>:
> harflendirmeleri duzenledim
>
> tablo1:
>
> 'a' mediumint(11) NOT NULL auto_increment,
> 'b' text
> 'c' text
> 'd' text
> 'e' datetime,
> 'f' varchar(20) ,
> 'g' varchar(20) ,
> PRIMARY KEY ('a'),
> KEY 'e' USING BTREE ('e'),
> KEY 'b' ('b'(50),'c'(250))
> ) ENGINE=MyISAM
>
> SELECT a,b,c FROM tablo1 WHERE f='x' AND
> > cast(e as date)= '".$date."' ORDER BY rand() LIMIT
> 10
> >
> > 2-SELECT COUNT(*) FROM tablo1 WHERE f='x' and
> > cast(e as date)= '".$date."' and (c != '' or c is
> not null)
> >
> > 3-SELECT MAX(a) FROM tablo WHERE f= '".$cat." ' and
> > cast(e as date)= '".$date."' and (c != '' or c is
> not null)
>
> Sorgu cýktýlarý ile ilgili ne gibi bir acýklama koyabilirim
> anlayamadým
> tam olarak?
>
> Cum, 2008-04-04 tarihinde 23:39 +0300 saatinde, Ismail ASCI
> yazdý:
>
> > Merhaba,
> > index'ler hangi alanlarda tanimlilar?
> > cast(b as date) kullanmanizin nedeni nedir?
> > ayrica ORDER BY rand() pek efektif sonuclar doguracak gibi
> gorunmuyor.
> > tablonuzun yapisini ve bu uc sorgunun explain ciktisini
> > gonderebilirseniz daha fazla yardimci olmaya calisabilirim.
> > kolay gelsin..
> >
> > 2008/4/4 Anýl KARADAÐ <anil.karadag_at_gmail.com>:
> > Herkese iyi aksamlar MySQL kullanan ve tablolarýnda
> 300.000
> > satir ve
> > uzeri veriye sahip ve veritabanindan sorumlu
> uyelerimizin
> > dikkatine
> >
> > Suan 350.000 satýr veri iceren bir tablom
> bulunmaktadýr. 1
> > primary key
> > ve 2 tane normal index içermekte. Arama yaptigim
> diger bircok
> > kolonda
> > index bulunmuyor.
> >
> > 1-SELECT a,b,c FROM tablo1 WHERE a='x' AND
> > cast(b as date)= '".$date."' ORDER BY rand() LIMIT
> 10
> >
> > 2-SELECT COUNT(*) FROM tablo1 WHERE a='x' and
> > cast(b as date)= '".$date."' and (c != '' or c is
> not null)
> >
> > 3-SELECT MAX(e) FROM tablo WHERE a= '".$cat." ' and
> > cast(b as date)= '".$date."' and (c != '' or c is
> not null)
> >
> > ve benzeri sorgulari calistirdigim php sayfasi cok
> gec
> > yukleniyor. Bu
> > duruma nasýl cozum bulabilirim. Belirtmen gereken
> bir nokta
> > tablonun
> > dinamik olusudur. Gunluk ortalama bir sayida kayit
> > girilmektedir.
> >
> > Kayit girilirken db uzerinde cesitli sorgular
> yapilmaktadir.
> > Kisacasi
> > sistemde veri girisi sorgusu ve goruntuleme
> sorgularý ayni
> > zaman
> > diliminde gerceklesmektedir gunun belirli bir
> diliminde.
> >
> > Cluster konusuna bakiyorum. Onerilerinizi
> bekliyorum.
> >
> > _______________________________________________
> > Linux-programlama mailing list
> > Linux-programlama_at_liste.linux.org.tr
> >
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
> >
> >
> >
> > --
> > Ismail ASCI
> > Pozitim Technology
> > www.pozitim.com
> >
> > -----BEGIN PGP PUBLIC KEY BLOCK-----
> > Version: GnuPG v1.4.2.2 (GNU/Linux)
> >
> >
> iFQEIBECABQFAkRIDJMNHQBiYWNrdXAgY29weQAKCRBgYvyi4RxNdcnIAJ9vweb8
> > vUH9m3a2aQHyAfeo0oJtlACfQiqcbHvdBtrxylRh42G2xea7gFM=
> > =Xy4T
> > -----END PGP PUBLIC KEY BLOCK-----
> > _______________________________________________
> > Linux-programlama mailing list
> > Linux-programlama_at_liste.linux.org.tr
> > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
>
>
> --
> Ismail ASCI
> Pozitim Technology
> www.pozitim.com
>
> -----BEGIN PGP PUBLIC KEY BLOCK-----
> Version: GnuPG v1.4.2.2 (GNU/Linux)
>
> iFQEIBECABQFAkRIDJMNHQBiYWNrdXAgY29weQAKCRBgYvyi4RxNdcnIAJ9vweb8
> vUH9m3a2aQHyAfeo0oJtlACfQiqcbHvdBtrxylRh42G2xea7gFM=
> =Xy4T
> -----END PGP PUBLIC KEY BLOCK-----
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama

_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Sun 06 Apr 2008 - 20:23:55 EEST

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.