本申請(qǐng)屬于搜索匹配,具體涉及一種基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法。
背景技術(shù):
1、隨著信息技術(shù)的飛速發(fā)展,企業(yè)數(shù)字化轉(zhuǎn)型已成為不可逆轉(zhuǎn)的趨勢(shì),企業(yè)級(jí)云平臺(tái)作為支撐各類業(yè)務(wù)應(yīng)用的核心設(shè)施,其功能性和易用性直接影響著企業(yè)的運(yùn)營(yíng)效率。gscloud企業(yè)數(shù)字化云平臺(tái)作為一款服務(wù)于企業(yè)用戶的綜合管理工具,提供了一系列涵蓋數(shù)據(jù)管理、流程控制及報(bào)表生成等功能的服務(wù)。為了進(jìn)一步優(yōu)化用戶體驗(yàn),平臺(tái)特別集成了強(qiáng)大的搜索功能,使用戶能夠通過模糊搜索迅速定位所需信息。然而,隨著云計(jì)算技術(shù)的進(jìn)步與大數(shù)據(jù)分析能力的增強(qiáng),企業(yè)對(duì)于搜索功能的要求也水漲船高。傳統(tǒng)的精確匹配方式已不足以應(yīng)對(duì)日益增長(zhǎng)的需求,模糊搜索因其能更好地理解并滿足用戶的實(shí)際意圖而顯得尤為重要,它不僅要求系統(tǒng)處理標(biāo)準(zhǔn)查詢,還需應(yīng)對(duì)諸如拼寫錯(cuò)誤、同義詞及縮略詞等非標(biāo)準(zhǔn)輸入。
2、當(dāng)前,gscloud平臺(tái)上的模糊搜索功能主要通過sql查詢語言實(shí)現(xiàn),特別是利用like操作符來完成模糊匹配任務(wù)。但是,當(dāng)查詢條件包含通配符時(shí),like操作符往往會(huì)導(dǎo)致全表掃描,而非通過索引加速查詢,這在處理大規(guī)模數(shù)據(jù)集和復(fù)雜查詢時(shí)會(huì)顯著增加響應(yīng)時(shí)間。另一方面,在某些高級(jí)應(yīng)用場(chǎng)景下,平臺(tái)采用應(yīng)用程序級(jí)別的數(shù)據(jù)直接比較方法,雖然這種方法在某些場(chǎng)景下可以加快響應(yīng)速度,但它同樣伴隨著高內(nèi)存消耗和維護(hù)成本的問題。此外,若未能恰當(dāng)?shù)嘏渲盟阉鳈?quán)重或匹配算法,則可能導(dǎo)致搜索結(jié)果不夠精準(zhǔn),尤其在處理用戶多樣化的輸入形式時(shí),搜索的質(zhì)量可能會(huì)有所下滑。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)?zhí)峁┝艘环N基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法,以解決處理大規(guī)模數(shù)據(jù)查詢響應(yīng)速度慢、內(nèi)存消耗高和搜索不精準(zhǔn)的問題。
2、本申請(qǐng)所采用的技術(shù)方案為:
3、本申請(qǐng)實(shí)施例提供一種基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法,包括:
4、接收用戶輸入的關(guān)鍵詞和維度參數(shù),分析所述維度參數(shù),確定優(yōu)先級(jí);
5、按照所述優(yōu)先級(jí),將所述關(guān)鍵詞與數(shù)據(jù)庫(kù)進(jìn)行匹配,以生成候選結(jié)果集,根據(jù)所述維度參數(shù),對(duì)所述候選結(jié)果集進(jìn)行重新排序,得到最終結(jié)果集;
6、對(duì)所述最終結(jié)果集進(jìn)行維度檢查,若通過,則返回?cái)?shù)據(jù),若不通過,則重新執(zhí)行匹配過程或者報(bào)錯(cuò)。
7、本申請(qǐng)?zhí)峁┑囊环N基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法還包括下述附加技術(shù)特征:所述接收用戶輸入的關(guān)鍵詞和維度參數(shù),分析所述維度參數(shù),確定優(yōu)先級(jí),具體為:
8、接受用戶輸入的搜索字符集、維度信息和維度順序,根據(jù)所述維度信息確定每個(gè)維度的重要性以及每個(gè)所述維度在匹配過程中的角色,根據(jù)所述維度順序,將所述維度按照優(yōu)先級(jí)排序。
9、根據(jù)本申請(qǐng)的一個(gè)實(shí)施例,所述按照所述優(yōu)先級(jí),將所述關(guān)鍵詞與數(shù)據(jù)庫(kù)進(jìn)行匹配,以生成候選結(jié)果集,根據(jù)所述維度參數(shù),對(duì)所述候選結(jié)果集進(jìn)行重新排序,得到最終結(jié)果集,具體為:
10、將用戶輸入的所述搜索字符集拆分成多個(gè)部分,對(duì)于每個(gè)拆分后的部分,使用fuzzywuzzy算法與目標(biāo)字符集進(jìn)行匹配,生成一系列結(jié)果集;將所有結(jié)果集合并,并去除重復(fù)項(xiàng),形成一個(gè)初步的候選結(jié)果集;根據(jù)之前確定的所述維度信息,對(duì)候選結(jié)果集進(jìn)行重新排序,得到最終結(jié)果集。
11、根據(jù)本申請(qǐng)的一個(gè)實(shí)施例,所述對(duì)所述最終結(jié)果集進(jìn)行維度檢查,若通過,則返回?cái)?shù)據(jù),若不通過,則重新執(zhí)行匹配過程或者報(bào)錯(cuò),具體為:根據(jù)傳入的所述維度參數(shù),檢查匹配結(jié)果的正確性和相關(guān)性;如果結(jié)果正確,則準(zhǔn)備返回?cái)?shù)據(jù);如果結(jié)果不正確、相似度不夠高或與搜索內(nèi)容無關(guān),則需要重新執(zhí)行匹配過程或返回錯(cuò)誤信息。
12、根據(jù)本申請(qǐng)的一個(gè)實(shí)施例,所述返回?cái)?shù)據(jù),具體為:將經(jīng)過排序的最終結(jié)果集返回給用戶。
13、根據(jù)本申請(qǐng)的一個(gè)實(shí)施例,所述返回錯(cuò)誤信息,具體為:如果在搜索過程中發(fā)現(xiàn)任何問題,則返回相應(yīng)的錯(cuò)誤信息,提示用戶存在的問題或建議重新輸入搜索條件。
14、根據(jù)本申請(qǐng)的一個(gè)實(shí)施例,所述fuzzywuzzy算法用于評(píng)估兩個(gè)字符串之間的相似性,所述fuzzywuzzy算法包括編輯距離算法和jaccard相似度。
15、一種包含指令的計(jì)算機(jī)程序產(chǎn)品,當(dāng)其在設(shè)備上運(yùn)行時(shí),使得設(shè)備執(zhí)行實(shí)現(xiàn)基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法中的步驟。
16、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法中的步驟。
17、一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法中的步驟。
18、由于采用了上述技術(shù)方案,本申請(qǐng)所取得的有益效果為:
19、1.通過引入fuzzywuzzy算法,能夠基于多種相似性度量方法(如編輯距離算法、jaccard相似度等)評(píng)估兩個(gè)字符串之間的相似度,從而在海量數(shù)據(jù)中更精確地識(shí)別出與用戶輸入相匹配的內(nèi)容。這種方法相比傳統(tǒng)的精確匹配方式,能夠更好地理解并滿足用戶的實(shí)際意圖,即使用戶輸入存在拼寫錯(cuò)誤或使用了同義詞、縮略詞等情況,也能獲得較為準(zhǔn)確的搜索結(jié)果。
20、2.該技術(shù)方案允許用戶自定義維度參數(shù)和維度順序,從而能夠靈活地根據(jù)具體需求調(diào)整搜索策略。這種靈活性使得系統(tǒng)能夠適應(yīng)多樣化、復(fù)雜化的輸入形式,為用戶提供個(gè)性化的搜索體驗(yàn),增強(qiáng)了用戶滿意度。
21、3.fuzzywuzzy算法在處理大量數(shù)據(jù)時(shí)依然能夠保持較快的匹配速度,有效解決了傳統(tǒng)sql?like操作符導(dǎo)致的全表掃描問題。通過優(yōu)先級(jí)排序,系統(tǒng)可以在短時(shí)間內(nèi)篩選出高質(zhì)量的結(jié)果集,減少了不必要的計(jì)算資源消耗,大大縮短了響應(yīng)時(shí)間,提升了系統(tǒng)的整體效率。
22、4.通過對(duì)最終結(jié)果集進(jìn)行維度檢查,確保了返回?cái)?shù)據(jù)的正確性和相關(guān)性。如果發(fā)現(xiàn)任何問題,系統(tǒng)會(huì)自動(dòng)重新執(zhí)行匹配過程或報(bào)錯(cuò),避免了因數(shù)據(jù)質(zhì)量問題導(dǎo)致的誤判。這種機(jī)制提高了系統(tǒng)的穩(wěn)定性和可靠性。
23、5.該方法不僅改善了搜索功能,還間接促進(jìn)了企業(yè)數(shù)據(jù)管理的現(xiàn)代化進(jìn)程。通過優(yōu)化搜索功能,系統(tǒng)能夠更高效地處理數(shù)據(jù),幫助企業(yè)更好地利用信息資源,支持決策制定,提升運(yùn)營(yíng)效率。
1.一種基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述接收用戶輸入的關(guān)鍵詞和維度參數(shù),分析所述維度參數(shù),確定優(yōu)先級(jí),具體為:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述按照所述優(yōu)先級(jí),將所述關(guān)鍵詞與數(shù)據(jù)庫(kù)進(jìn)行匹配,以生成候選結(jié)果集,根據(jù)所述維度參數(shù),對(duì)所述候選結(jié)果集進(jìn)行重新排序,得到最終結(jié)果集,具體為:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述對(duì)所述最終結(jié)果集進(jìn)行維度檢查,若通過,則返回?cái)?shù)據(jù),若不通過,則重新執(zhí)行匹配過程或者報(bào)錯(cuò),具體為:根據(jù)傳入的所述維度參數(shù),檢查匹配結(jié)果的正確性和相關(guān)性;如果結(jié)果正確,則準(zhǔn)備返回?cái)?shù)據(jù);如果結(jié)果不正確、相似度不夠高或與搜索內(nèi)容無關(guān),則需要重新執(zhí)行匹配過程或返回錯(cuò)誤信息。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述返回?cái)?shù)據(jù),具體為:將經(jīng)過排序的最終結(jié)果集返回給用戶。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述返回錯(cuò)誤信息,具體為:如果在搜索過程中發(fā)現(xiàn)任何問題,則返回相應(yīng)的錯(cuò)誤信息,提示用戶存在的問題或建議重新輸入搜索條件。
7.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述fuzzywuzzy算法用于評(píng)估兩個(gè)字符串之間的相似性,所述fuzzywuzzy算法包括編輯距離算法和jaccard相似度。
8.一種包含指令的計(jì)算機(jī)程序產(chǎn)品,當(dāng)其在設(shè)備上運(yùn)行時(shí),其特征在于,使得設(shè)備執(zhí)行實(shí)現(xiàn)如權(quán)利要求1-7任一項(xiàng)所述的基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法中的步驟。
9.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有程序,其特征在于,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1-7任一項(xiàng)所述的基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法中的步驟。
10.一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的程序,其特征在于,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)如權(quán)利要求1-7任一項(xiàng)所述的基于fuzzywuzzy算法的通用數(shù)據(jù)模糊搜索匹配方法中的步驟。