Sphinx (search engine)
સ્ફીન્કસ એ એક સંપૂર્ણ લખાણ શોધ એન્જિન છે જે ક્લાયન્ટ એપ્લિકેશન્સને લખાણ શોધ કાર્યક્ષમતા પ્રદાન કરે છે. ઝાંખી સ્ફિંક્સનો ઉપયોગ ક્યાં તો એકલ સર્વર તરીકે અથવા ડેટાબેઝના માયએસક્યુએલ પરિવાર માટે સ્ટોરેજ એન્જિન ("સ્ફિંક્સ") તરીકે થઈ શકે છે. જ્યારે એકલ સર્વર તરીકે ચલાવવામાં આવે છે ત્યારે સ્ફિંક્સ DBMS જેવી જ કામગીરી કરે છે અને તેમના મૂળ પ્રોટોકોલ દ્વારા અથવા ODBC મારફતે કોઈપણ ODBC-સુસંગત DBMS સાથે MySQL, MariaDB અને પોસ્ટગ્રેએસક્યુએલ સાથે વાતચીત કરી શકે છે. મારિયાડીબી, જે માયએસક્યુએલનો કાંટો છે, તે સ્ફિંક્સએસઈ સાથે વહેંચાયેલો છે. SphinxAPI જો Sphinx એકલ સર્વર તરીકે ચાલે છે, તો તેની સાથે એપ્લિકેશનને જોડવા માટે SphinxAPI નો ઉપયોગ કરવો શક્ય છે. એપીઆઈનું સત્તાવાર અમલીકરણ પીએચપી, જાવા, પર્લ, રુબી અને પાયથોન ભાષાઓ માટે ઉપલબ્ધ છે. અન્ય ભાષાઓ માટે બિનસત્તાવાર અમલીકરણ, તેમજ વિવિધ તૃતીય પક્ષ પ્લગિન્સ અને મોડ્યુલો પણ ઉપલબ્ધ છે. અન્ય ડેટા સ્રોતોને કસ્ટમ XML ફોર્મેટમાં પાઇપ દ્વારા અનુક્રમિત કરી શકાય છે. સ્ફિંક્સ સર્ચ ડેમન માયએસક્યુએલ દ્વિસંગી નેટવર્ક પ્રોટોકોલને સપોર્ટ કરે છે અને તેને નિયમિત માયએસક્યુએલ એપીઆઈ અને/અથવા ક્લાયન્ટ્સ સાથે એક્સેસ કરી શકાય છે. સ્ફિંક્સ સ્ફિંક્સક્યુએલ તરીકે ઓળખાતા એસક્યુએલના સબસેટને ટેકો આપે છે. તે SELECT સાથે તમામ અનુક્રમણિકા પ્રકારોની પ્રમાણભૂત ક્વેરીંગને સપોર્ટ કરે છે, INSERT, REPLACE અને DELETE અને વધુ સાથે રિયલટાઇમ અનુક્રમણિકામાં ફેરફાર કરે છે. SphinxSE Sphinx મારિયાડીબી અને માયએસક્યુએલ ડેટાબેઝ માટે વિશેષ સંગ્રહ એન્જિન પણ પ્રદાન કરી શકે છે. આ તે MySQL, MariaDB ને પ્રશ્નો ચલાવવા અને પરિણામો મેળવવા માટે સ્ફિંક્સની શોધ સાથે વાતચીત કરવાની મંજૂરી આપે છે. સ્ફિંક્સ સૂચકાંકોને નિયમિત એસક્યુએલ કોષ્ટકોની જેમ ગણવામાં આવે છે. SphinxSE સંગ્રહ એન્જિનને MariaDB સાથે મોકલવામાં આવે છે. પૂર્ણ-લખાણ ક્ષેત્રો અને અનુક્રમણિકા સ્ફિંક્સને તેના અનુક્રમણિકા દ્વારા ડેટા સેટની તપાસ કરવા માટે ગોઠવવામાં આવે છે. અનુક્રમણિકા પ્રક્રિયા આપેલ માહિતી/લખાણમાંથી પૂર્ણ-લખાણ અનુક્રમણિકા (એક વિશેષ માહિતી માળખું કે જે ઝડપી મુખ્ય શબ્દ શોધને સક્ષમ કરે છે) બનાવે છે. પૂર્ણ-લખાણ ક્ષેત્રો એ પરિણામી સામગ્રી છે જે સ્ફીન્કસ દ્વારા અનુક્રમિત છે; તેમને (ઝડપથી) કીવર્ડ્સ માટે શોધી શકાય છે. ક્ષેત્રોને નામ આપવામાં આવ્યું છે, અને તમે તમારી શોધને એક જ ક્ષેત્ર સુધી મર્યાદિત કરી શકો છો (દા. ત. ફક્ત "શીર્ષક" દ્વારા શોધો) અથવા ક્ષેત્રોના સબસેટ (દા. ત. ફક્ત "શીર્ષક" અને "અમૂર્ત"). સ્ફીન્કસનું અનુક્રમણિકા સ્વરૂપ સામાન્ય રીતે 256 ક્ષેત્રોને ટેકો આપે છે. નોંધ લો કે મૂળ માહિતી સ્ફિંક્સ અનુક્રમણિકામાં સંગ્રહિત નથી, પરંતુ અનુક્રમણિકા પ્રક્રિયા દરમિયાન કાઢી નાખવામાં આવે છે; સ્ફિંક્સ ધારે છે કે તમે તે સામગ્રીઓને અન્યત્ર સંગ્રહિત કરો છો. વિશેષતાઓ એ દરેક દસ્તાવેજ સાથે સંકળાયેલા વધારાના મૂલ્યો છે જેનો ઉપયોગ શોધ દરમિયાન વધારાના ગાળણ અને વર્ગીકરણ કરવા માટે થઈ શકે છે. લક્ષણોના નામ આપવામાં આવ્યા છે. એટ્રિબ્યુટ નામો કેસ અસંવેદનશીલ છે. વિશેષતાઓ પૂર્ણ-લખાણ અનુક્રમિત નથી; તેઓ અનુક્રમણિકામાં જેમ છે તેમ સંગ્રહિત છે. હાલમાં સપોર્ટેડ એટ્રિબ્યુટ પ્રકારો છેઃ સહી વગરના પૂર્ણાંકો (1-બીટથી 32-બીટ પહોળા); યુનિક્સ ટાઇમસ્ટેમ્પ્સ; ફ્લોટિંગ પોઇન્ટ મૂલ્યો (32-બીટ, IEEE 754 સિંગલ પ્રિસિઝન); સ્ટ્રિંગ ઓર્ડિનલ્સ (ખાસ ગણતરી કરેલ પૂર્ણાંકો); સ્ટ્રિંગ્સ (1.10-beta થી); JSON (2.1.1-beta થી); MVA, મલ્ટી-વેલ્યુ એટ્રિબ્યુટ્સ (32-બીટ સહી વગરના પૂર્ણાંકોની ચલ-લંબાઈ સૂચિ). સ્ફીન્કસ સ્ફીન્કસમાં જે. એસ. ઓ. એન. વિશેષતાઓ, ક્લાસિક એસ. ક્યુ. એલ. ડેટાબેસેસની જેમ, કહેવાતા નિશ્ચિત યોજના સાથે કામ કરે છે, એટલે કે, પૂર્વવ્યાખ્યાયિત વિશેષતા સ્તંભોનો સમૂહ. જ્યારે સંગ્રહિત મોટાભાગના ડેટામાં ખરેખર મૂલ્યો હોય ત્યારે આ સારી રીતે કામ કરે છેઃ વિરલ ડેટાને સ્થિર સ્તંભોમાં મેપિંગ કરવું બોજારૂપ હોઈ શકે છે. ઉદાહરણ તરીકે ધારો કે તમે વિવિધ ઉત્પાદનોની શ્રેણીઓ સાથે ભાવની સરખામણી અથવા હરાજી સાઇટ ચલાવી રહ્યા છો. કિંમત અથવા વિક્રેતા જેવા કેટલાક લક્ષણો તમામ ચીજવસ્તુઓમાં સમાન હોય છે. પરંતુ ત્યાંથી, લેપટોપ માટે, તમારે વજન, સ્ક્રીનનું કદ, એચડીડી પ્રકાર, રેમનું કદ વગેરે પણ સંગ્રહિત કરવાની જરૂર છે. અને, કહો, પાવડો માટે, તમે કદાચ રંગ, હેન્ડલની લંબાઈ વગેરે સંગ્રહિત કરવા માંગો છો. તેથી તે એક જ શ્રેણીમાં મેનેજ કરી શકાય તેવું છે, પરંતુ તમામ શ્રેણીઓમાં તમામ માલ માટે તમને જરૂરી તમામ અલગ-અલગ ક્ષેત્રો લીજન છે. આને દૂર કરવા માટે જે. એસ. ઓ. એન. ક્ષેત્રનો ઉપયોગ કરી શકાય છે. જે. એસ. ઓ. એન. લક્ષણની અંદર તમારે નિશ્ચિત માળખાની જરૂર નથી. તમારી પાસે વિવિધ કીઓ હોઈ શકે છે જે તમામ દસ્તાવેજોમાં હાજર હોઈ શકે છે અથવા ન પણ હોઈ શકે. જ્યારે તમે આ કીઓમાંથી કોઈ એકને ફિલ્ટર કરવાનો પ્રયાસ કરો છો, ત્યારે સ્ફિંક્સ એવા દસ્તાવેજોની અવગણના કરશે કે જેની પાસે JSON લક્ષણમાં કી નથી અને તે ફક્ત તે જ દસ્તાવેજો સાથે કામ કરશે કે જેમની પાસે તે છે. આવૃત્તિ 3 સુધી લાઇસન્સ, સ્ફીન્ક્સ બેવડા લાઇસન્સ ધરાવે છે; ક્યાં તોઃ જીએનયુ જનરલ પબ્લિક લાઇસન્સ સંસ્કરણ 2 અથવા માલિકીનું લાઇસન્સ એ ઉપયોગ-કિસ્સાઓ માટે ઉપલબ્ધ છે જે જીએનયુ જી. પી. એલ. વી. 2 ની શરતોમાં નથી. આવૃત્તિ 3 થી, સ્ફીન્ક્સ માલિકીનું બની ગયું છે, ભવિષ્યમાં તેના સ્રોત કોડને મુક્ત કરવાના વચન સાથે સ્ફીન્ક્સ ઉપયોગ ઉદાહરણો Craigslist.org Recruitment.aleph-graymatter.com Tradebit.com vBulletin.com મીડિયાવિકી એક્સ્ટેંશન Boardreader.com OMBE.com Limundo.com ફીચર લિસ્ટ બેચ અને વૃદ્ધિશીલ (સોફ્ટ રીઅલ-ટાઇમ) પૂર્ણ-ટેક્સ્ટ અનુક્રમણિકા. બિન-લખાણ વિશેષતાઓ (સ્કેલર્સ, શબ્દમાળાઓ, સમૂહો, JSON) માટે આધાર. એસક્યુએલ ડેટાબેઝનું સીધું અનુક્રમણિકા. માયએસક્યુએલ, મારિયાડીબી, પોસ્ટગ્રેએસક્યુએલ, એમએસએસક્યુએલ, વત્તા ઓડીબીસી જોડાણ માટે મૂળ આધાર. XML દસ્તાવેજ અનુક્રમણિકા આધાર. આઉટ-ઓફ-ધ-બોક્સ વિતરિત શોધ આધાર. ઍક્સેસ API દ્વારા સંકલન. માયએસક્યુએલ પ્રોટોકોલ દ્વારા એસક્યુએલ જેવા વાક્યરચના આધાર (0.9.9 થી) પૂર્ણ-લખાણ શોધ વાક્યરચના. ડેટાબેઝ જેવી પરિણામ સમૂહ પ્રક્રિયા. પ્રમાણભૂત બીએમ 25 ઉપરાંત વધારાના પરિબળોનો ઉપયોગ કરીને સુસંગતતા ક્રમાંકન. SBCS અને UTF-8 એન્કોડિંગ માટે ટેક્સ્ટ પ્રોસેસિંગ સપોર્ટ, સ્ટોપવર્ડ્સ, ડેટાબેઝમાં ન દેખાતા શબ્દોની અનુક્રમણિકા ("હિટલેસ"), સ્ટેમિંગ, શબ્દ સ્વરૂપો, ટોકનાઇઝિંગ અપવાદો અને "મિશ્રિત અક્ષરો" (વાસ્તવિક અક્ષર અને શબ્દ વિભાજક બંને તરીકે દ્વિ-અનુક્રમણિકા). યુડીએફને ટેકો આપે છે (2.0.1 થી). પ્રદર્શન અને માપનીયતા અનુક્રમણિકા ઝડપ 10-15 એમબી/સેકન્ડ પ્રતિ કોર અને એચડીડી. 2 જીબી રેમ સાથે 2-કોર ડેસ્કટોપ સિસ્ટમનો ઉપયોગ કરીને 1,000,000 દસ્તાવેજ/1.2 જીબી સંગ્રહ સામે 500 થી વધુ પ્રશ્નો/સેકન્ડની શોધ ઝડપ. સ્ફિંક્સનો ઉપયોગ કરતી સૌથી મોટી જાણીતી સ્થાપન, Boardreader.com, 16 અબજ દસ્તાવેજોને અનુક્રમિત કરે છે. સૌથી વ્યસ્ત ઇન્સ્ટોલેશન, ક્રેગલિસ્ટ, 300,000,000 પ્રશ્નો/દિવસ અને 50 અબજથી વધુ પૃષ્ઠ દૃશ્યો/મહિનામાં સેવા આપે છે. 2017 માં, મૂળ સ્ફીન્ક્સ ટીમના મુખ્ય સભ્યોએ મેન્ટિકોર નામના પ્રોજેક્ટનો કાંટો બનાવ્યો હતો. મેન્ટિકોર ટીમે પોતાને નીચેનું લક્ષ્ય નક્કી કર્યું છેઃ સંપૂર્ણ લખાણ શોધ માટે ઝડપી, સ્થિર અને શક્તિશાળી મફત સોફ્ટવેર પહોંચાડવું. મેન્ટિકોર ટીમ તેના ફોર્કને ઓપન સોર્સ રાખે છે, તેને ઓરિજિનલ સ્ફીન્કસ સર્ચના વિરોધમાં જી. પી. એલ. વી. 2 લાઇસન્સ હેઠળ રજૂ કરે છે, જે ત્રીજા સંસ્કરણમાંથી સ્રોતને બંધ કરે છે. આ પણ જુઓ માહિતી પુનઃપ્રાપ્તિ પુસ્તકાલયોની સૂચિ સંદર્ભો વધુ વાંચન કોઈ વધુ ઓપન-સોર્સ નથી (2017) https://sphinxsearch.com/blog/2017/07/24/sphinx-2017 બાહ્ય કડીઓ મારિયાડીબી નોલેજબેઝમાં સ્ફિંક્સએસઈ https://manticoresearch.com-મન્ટિકોર ઓપનસોર્સ ફોર્ક સાઇટ. ઇન્ટરનેટ સર્ચ એન્જિન મફત સર્ચ એન્જિન સોફ્ટવેર