Kuraito
g/webdev

Bawię się w domu różne phpy i mysqle... No i wychodzi jaki ze mnie jest niedouczony tłuk. xD
Mam sobie taką bazkę, w niej ponad 100k rekordów. No i przy pokazywaniu części tabeli o wysokich idach to całe gówno muli niemiłosiernie... :v To pole tresc to się zdarza, że ma ponad 60k znaków, więc danie CHAR odpada... :v BLOB dać czy co? Czy wyrzucić do do innej tabeli, żeby serwer musiał się przez to przebijać tylko przy wyświetlaniu treści?
Czy po prostu i5 3.10 GHz to za mało i muszę kupić sobie parę maszyn z i7 żeby móc to jakoś działało?

Pokaż ukrytą treśćinb4 HÓRR DÓRR GÓWNOBAZA Z POLSKIMI NAZWAMI - WOLNOĆ TOMKU W SWOIM DOMKU :D i tak tego nikt poza mną nie ruszy i chyba poza localhost to to nie wyjdzie
#
duxet

@Kuraito: tylko

Pokaż ukrytą treśćMongoDB
#
Kuraito

@duxet: Wiem.

Pokaż ukrytą treśćMasz jakiś pomysł co zrobić z problemem?
#
Wojnar

@Kuraito: Zły cfg mysqla. Ogólnie mysql (w sumie każdy sql) nie ma problemów (a przynajmniej nie powinien) z ilością danych, tylko z ilością kluczy w tabeli (ponad milion zaczyna się spadek wydajności ale od tego masz partycjonowanie bazy). Możesz wrzucić do innej tabeli. Nie wiem skąd problem ze 100k rekordów, ja takiej bazy używam na developerce (1 tabla 400k rekordów, reszta lacznie kolo tego, wiec w sumie nieco mniej niż milion)

Możesz sobie poszukać na stacku co radzą w przypadku baz z dużą ilością danych. Stawiam ze cache masz za mały i ustawienia co do bufora danych w query też.

Ewentualnie jak ja przeszukujesz to zamiast select * wypisz pola, które potrzebujesz (bez tego z 60k znaków), może pomoże bo nie będzie jechał po wszystkich danych.

#
duxet

@Kuraito: ile ta tabela tak w ogóle zajmuje?

tak w ogóle to polecam http://www.heidisql.com/

#
Kuraito

@duxet: 1 GB i wciąż rośnie...
@Wojnar
SELECT id, kategoria, tytul, zrodlo, jez, jak, data FROM tabela ORDER BY id ASC LIMIT 108485, 25
w jedyne 20 sekund... :v Chyba będę musiał się porządnie zapoznać z tym MySQL-em, bo moja wiedza z 5 stron jakiegoś czegoś już nie wystarcza...

#
Kuraito

@duxet: HeidiSQL > phpMyAdmin > gówno > SQL Workbench :3
Dziękuję.

#
Wojnar

@Kuraito: http://explainextended.com/2009/10/23/mysql-order-by-limit-performance-late-row-lookups/

Ewentualnie pobieranie sekwencyjne (w ActiveRecord w Rails masz to wbudowane i jedna linijka mozna rozbic zapytanie na kilka czyli od klucza y do x, od x do z itp.).

Silnik inno czy myisam?

#
Kuraito

@Wojnar: inno, bo taki był domyślny przy tworzeniu tabeli w phpmyadmin ;d
Nic z tego linka nie rozumiem, Chyba naprawdę będę musiał przeczytać jakąś książkę o tym MySQL-u. Bo się nauczyłem SELECT, INSERT i UPDATE i myślałem, że starczy.

#