में लेवेनशेटिन/समान_टेक्स्ट को तेज करना मैं वर्तमान में ~ 50,000 की सूची के विरुद्ध स्ट्रिंग की तुलना करने के लिए similar_text का उपयोग कर रहा हूं जो तुलना करता है हालांकि तुलना की संख्या बहुत धीमी है। ~ 500 अद्वितीय तारों की तुलना करने में लगभग 11 मिनट लगते हैं।PHP
इसे चलाने से पहले मैं यह देखने के लिए डेटाबेस जांचता हूं कि क्या इसे अतीत में संसाधित किया गया है, इसलिए इनटाइटल रन के तुरंत बाद यह तुरंत बंद हो जाता है।
मुझे यकीन है कि levenshtein का उपयोग करना थोड़ा तेज़ होगा और मैन्युअल में पोस्ट किए गए लेवेनशेटिनडिस्टेंस फ़ंक्शन को दिलचस्प लग रहा है। क्या मुझे कुछ याद आ रहा है जो इसे काफी तेज़ कर सकता है?
'ओ (एन ** 3) 'जहां एन' समान_टेक्स्ट' के लिए सबसे लंबी स्ट्रिंग की लंबाई है ... ouch। – jason
तारों की औसत लंबाई क्या है? आंडड ... स्ट्रिंग में कितना डेटा खोज के लिए वास्तव में प्रासंगिक है? यानी कितना क्रूर है? – jason
औसत लंबाई लगभग 20 वर्ण है और डेटा का एक उच्च प्रतिशत प्रासंगिक है, शायद 85-95%। मुझे लगता है कि शायद इनका उपयोग थोड़ा अधिक है और मैं शायद कुछ चेक के बाद mysql में एक पूर्ण पाठ खोज का उपयोग कर सकता हूं। – DanCake