Kom ihåg mig?
Home Menu

Menu


Fulltextsökningar i mysql låser tabellen

Ämnesverktyg Visningsalternativ
Oläst 2008-05-22, 13:33 #1
radioaktivitet radioaktivitet är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 336
radioaktivitet radioaktivitet är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 336
Jag har en ganska fet tabell med flera miljoner rader, myisam. På detta har jag ett fulltextindex. Fritextsökningarna går för det mesta väldigt snabbt. Men en del fritextsökningar, som är väldigt generella, tar lång tid. Och i dessa fall så verkar tabellen låsas - så att andra frågor (även frågor på en viss rad, dvs med unik nyckel) hamnar som LOCKED i processlistan.

Jag har tänkt att flytta ut själva fritextsökningen till sphynx. Men framtillsdess - vad kan jag göra åt problemet? Är det ö.h.t. normalt att en fritextsökning låser tabellen?

Obs, jag har tillfälligt stängt av alla inserts och updates på denna tabell. Så jag är helt säker på att det är fritextsökningarna som är "flaskhalsen".

Jag kör mysql 5 om det har någon betydelse.

Tacksam för hjälp.
radioaktivitet är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-05-22, 13:46 #2
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
Det är inte så att det är en jobbig select som ställs och sen en update/insert/replace/delete efter. Det gör att den update/insert/replace/delete måste vänta och sen alla selects efter måste vänta på queryn som ändrar.
WizKid är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-05-22, 13:52 #3
radioaktivitet radioaktivitet är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 336
radioaktivitet radioaktivitet är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 336
Nej. Jag har stängt av alla update/insert/replace/delete. Så jag är säker på att det endast är en fritext select som ställer till problemet...
radioaktivitet är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-05-22, 16:05 #4
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
Jag *tror* fritextsökningarna läser in indexet i ramet, det kan ta ett tag. Kolla din io med vmstat eller gkrellmd eller nåt.

Om mysql läser in indexet är det väl rätt rimligt att tro att den låser tabellen under tiden indexet är på väg in i ram. Jag skulle definitivt byta till sphinx med så mycket data.
grazzy är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-05-23, 12:58 #5
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Jonas Jonas är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Feb 2004
Inlägg: 3 364
Hur ser dina index ut för tabellen? Är indexet med fulltext fullt optimerad? Hur ser frågan ut?
Jonas är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 05:02.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017