Vandag het ek gespeel vir die optimalisering van die stadige SQL aansoek op die vorm

SELECT * FROM 'table' WHERE `field` LIKE '%word%'

Waar is die probleem hier – die laaste deel van die ‘%woord%’ en in'n selfs meer spesifieke teken % voor die woord, vir wat ons doen. Wildcard simbool % ,om enige waarde, ons versoek direk vertaal direk te stadig, want op hierdie manier die navraag nie verhoed dat ons van die gebruik van indekse op die veld. Die oplossing soos altyd is, maar dit is nie altyd duidelik 😆 in die Algemeen MySQL jy het'n oplossing vir hierdie probleem fulltext soektog kruip velde. As daar is'n verandering boks'n baie geskryf in die dokumentasie, maar ek sal kortliks beskryf hoe om dit te verander navraag, want ons ontvang'n klein teater uiteindelik. Het hoe om aansoek te doen die fulltext boks bo, die versoek moet word om veranderinge in die tipe:

SELECT * FROM `table` WHERE MATCH (field) AGAINST ('word')

Dus, die struktuur is voor die hand liggend en moet geen onnodige bespreking. Hierdie navraag sal in werking tree, as die woord, vir wat jy maak die versoek, ten minste 4 karakters, die standaard waarde, as jy wil om dit te verander, moet jy spesifiseer'n waarde, която желаете в my.cnf в частта [tusdi] 'n verklaring ft_min_word_len=3 of 2, 1 не е добър избор очевидно 😉 . Nadat jy verander die waarde en begin mysql bediener-jy moet doen herstel tabelle dit, ten einde vir die nuwe indeks in werking getree het. Hier, alles is duidelik: Ek maak veranderinge, weer te begin, rebeldom indekse en maak'n versoek en ek opbrengste 0 om 😀 Raadpleeg

SHOW VARIABLES

Ek sien dat die waardes, Ek het gevra, in werking geloop, rebeldom, indekse – dieselfde resultaat. 🙄 Ongemaklik, baie ongemaklik. Hier en dan begin een groot Rogaine en skrape vir'n sleutel in die skuur 😀 Wat was baie, baie interessant. In Die Algemeen, Ek het begin om te lees die dokumentasie, ek weet nie wat die pad en het gekom om'n interessante verloop

Such a technique works best with large collections (in werklikheid, was dit deeglik ingeskakel op hierdie manier). Vir baie klein tafels, woord verspreiding nie voldoende weerspieël hul semantiese waarde, en hierdie model kan soms produseer bisarre resultate. Byvoorbeeld, hoewel die woord "MySQL" is teenwoordig in elke ry van die artikels tabel getoon vroeër, 'n soektog vir die woord produseer geen resultate

ГРЕДА 😳 Дам табличката ми беше малка – nog steeds, dit was'n toets. Ons navrae in een groot tafel met meer as 2 000 000 orde en dinge voorval. Wel, dit is'n voor die hand liggende probleem. Ten einde te verstaan die besluit, Ek kortliks daarop, wat beteken volledige teks soek ondersteuning 3 gevorderde af BOOLE , UITDRUKKINGS en NATUURLIKE TAAL as onlangse werk deur verstek. Vir die verskillende vorme kan gevind word in die dokumentasie, Ek sal verduidelik 2-3 woorde vir BOOLE, want dit is alles oor. Dit word ondersteun deur logiese operateurs EN, OF , NIE, en so meer, en jy kan doen verskillende spel met die gewilde frases, daar, nie die ander en so aan. Ondersteun en simbole *, gelykstaande aan wildcards % 😉 Dit is nuttig, wanneer jy soek vir die woord onder die grootte ft_min_word_len of klein bakkies ;). Ten minste het ek het die tafel rond 100 lyne is perfek. Jy hoef net om te sien die voltooide aansoek:

SELECT * FROM `table` WHERE MATCH (field)
AGAINST ('*word*' IN BOOLEAN MODE)

Nou hier kom die oomblik of ons werk met'n wildcard kruip karakters – отговорът е не знам. Принципно мисля, че да, защото не е казано друго в документацията, но в документацията очевидно не се казват или показват много неща 😀

Versterk deur Zemanta

How PulseAudio works.

Beeld via Wikipedia

Vandag- uiteindelik, na'n baie van die tyd, het ek besluit om te koop'n ander draad op te hang 5.1 klank stelsel wat ek ten volle. Tot nou toe het ek gewoonlik gebruik om'n normale stereo kabel en dan die stelsel self maak die skeiding van die klank kanale. Dat dit is nie goed nie. Nou elke kanaal het'n aparte kabel en die klank is baie skoon (van die kursus), in die vaste film, die gevoel toegeneem het baie keer oor. Daar was'n paar klein dramas wat kry beter met betrekking intuïtiewe. Die belangrikste drama was, dat die klank was net in die voorkant van die kolom buffer sonder sentrum of agterste na predestroy Gnome klank skema is 5.1 . Die meeste van die spelers het die opsie stel in die alsa as die kanaal daar is klank, maar daar is programme in wat otsystem so'n moontlikheid as, sê, adobe flash player. My aanvanklike idee was net predestroy .asoundrc hoe om die instellings te dupliseer die klank op al die kanale – die besluit, wat is nie om op trots te wees, want dit word beskou as algemeen by alle. Opset is triviale :

pcm.!standaard {
tipe prop
slaaf.pcm “surround51
slaaf.kanale 6
route_policy dupliseer
}

Met dit, jou dinge het in plek, totdat ek besef dat alsa kan hanteer slegs 1 proses en totdat dit voltooi is om dit te gebruik die ander kan nie. 😳 Неприятно но факт бях забравил времената в който слушаш или player или youtube и ако едното ти омръзне трябва да затвориш програмата, wat die gebruik van ander programme. Wat dadelik vir my gesê waar die ware wortel van die dinge – bediener verstellings pulseaudio. Pulseaudio die rofweg gesproke, 'n volmag bediener, wat prosesse van inligting tussen die klank hardeware en klank sagteware wat wil om dit te gebruik. Die stelsel, wat vir baie jare was baie keer. Wanneer hierdie opset is in die /etc/pols/daemon.Conf. By verstek, is al zakomentirano ; so as jy praille veranderinge reg veilig kan voeg die volgende reëls aan die einde van die lêer:

in staat stel om-lfe-dj = ja

standaard-monster-koers = 48000
standaard-monster-kanale = 6

Имената на опциите са очевидни задаваме стойноста на колко канално аудио ще сме малък тунинг на стандартния битрейт и разрешване на lfe ремиксирането. След това остава да рестартирате alsa и pulseaudio с

sudo /etc/init.d/alsa-utils weer te begin && pulseaudio -k

Hier en verdere gebly het vir my net en ek het die beste klank.

wysig: .asoundrc nodig het om te wees inhoud wat jy het probleme met skype en ander afwerking

pcm.pols {tipe pols }
sol.pols { tipe pols }

Versterk deur Zemanta