本發(fā)明涉及信息搜索相關(guān)技術(shù)領(lǐng)域,特別是一種商品信息搜索方法、系統(tǒng)、計(jì)算機(jī)程序及電子設(shè)備。
背景技術(shù):
現(xiàn)有搜索技術(shù),例如solr,其主要功能包含全文索引,命中標(biāo)示,動(dòng)態(tài)聚類,數(shù)據(jù)庫(kù)集成,以及富文本的處理,但現(xiàn)有的搜索技術(shù)的實(shí)時(shí)搜索性能較差,配置較為復(fù)雜。同時(shí),現(xiàn)有的搜索應(yīng)用所提供的大部分功能對(duì)于輕量級(jí)應(yīng)用來說較為復(fù)雜,大部分功能都用不上,且有一定的學(xué)習(xí)成本。
技術(shù)實(shí)現(xiàn)要素:
基于此,有必要針對(duì)現(xiàn)有的搜索技術(shù)存在實(shí)時(shí)性較差的技術(shù)問題,提供一種商品信息搜索方法、系統(tǒng)、計(jì)算機(jī)程序及電子設(shè)備。
本發(fā)明提供一種商品信息搜索方法,包括:
響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
進(jìn)一步的,所述第一數(shù)據(jù)庫(kù)的查詢效率高于所述第二數(shù)據(jù)庫(kù),所述第二數(shù)據(jù)庫(kù)的響應(yīng)效率高于所述第一數(shù)據(jù)庫(kù)。
進(jìn)一步的,還包括:
響應(yīng)于商品上架請(qǐng)求,將所述商品上架請(qǐng)求所包括的商品作為待上架商品,將所述商品上架請(qǐng)求所包括的關(guān)于所述待上架商品的商品信息作為待上架商品信息;
將所述待上架商品和所述待上架商品信息對(duì)應(yīng)存儲(chǔ)到所述第二數(shù)據(jù)庫(kù),獲取第二數(shù)據(jù)庫(kù)生成的關(guān)于所述待上架商品的商品主鍵作為待上架商品主鍵,將滿足所述待上架商品信息的搜索條件作為待上架搜索條件;
在所述第一數(shù)據(jù)庫(kù)中向所述待上架搜索條件所對(duì)應(yīng)的索引集合添加所述待上架商品主鍵。
更進(jìn)一步的,還包括:
響應(yīng)于商品更新請(qǐng)求,將所述商品更新請(qǐng)求所指定的商品作為待更新商品,將所述商品更新請(qǐng)求所包括的關(guān)于所述待更新商品的商品信息作為待更新商品信息;
獲取所述待更新商品的商品主鍵作為待更新商品主鍵,在所述第二數(shù)據(jù)庫(kù)中將所述待更新商品主鍵對(duì)應(yīng)的商品信息更新為所述待更新商品信息;
根據(jù)所述待更新商品信息判斷所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合是否需要更新,如果需要更新,則根據(jù)所述待更新商品信息對(duì)所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合進(jìn)行更新。
更進(jìn)一步的,還包括:
響應(yīng)于商品下架請(qǐng)求,將所述商品下架請(qǐng)求所指定的商品作為待下架商品;
獲取所述待下架商品的商品主鍵作為待下架商品主鍵,在所述第二數(shù)據(jù)庫(kù)中刪除所述待下架商品主鍵、以及所述待下架商品主鍵對(duì)應(yīng)的商品信息;
在所述第一數(shù)據(jù)庫(kù)中從搜索條件所包括的索引集合中刪除所述待下架商品主鍵。
本發(fā)明提供一種商品信息搜索系統(tǒng),包括:
搜索請(qǐng)求響應(yīng)模塊,用于:響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
索引獲取模塊,用于:從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
商品信息獲取模塊,用于:從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
進(jìn)一步的,所述第一數(shù)據(jù)庫(kù)的查詢效率高于所述第二數(shù)據(jù)庫(kù),所述第二數(shù)據(jù)庫(kù)的響應(yīng)效率高于所述第一數(shù)據(jù)庫(kù)。
進(jìn)一步的,還包括:上架模塊,用于:
響應(yīng)于商品上架請(qǐng)求,將所述商品上架請(qǐng)求所包括的商品作為待上架商品,將所述商品上架請(qǐng)求所包括的關(guān)于所述待上架商品的商品信息作為待上架商品信息;
將所述待上架商品和所述待上架商品信息對(duì)應(yīng)存儲(chǔ)到所述第二數(shù)據(jù)庫(kù),獲取第二數(shù)據(jù)庫(kù)生成的關(guān)于所述待上架商品的商品主鍵作為待上架商品主鍵,將滿足所述待上架商品信息的搜索條件作為待上架搜索條件;
在所述第一數(shù)據(jù)庫(kù)中向所述待上架搜索條件所對(duì)應(yīng)的索引集合添加所述待上架商品主鍵。
更進(jìn)一步的,還包括:更新模塊,用于:
響應(yīng)于商品更新請(qǐng)求,將所述商品更新請(qǐng)求所指定的商品作為待更新商品,將所述商品更新請(qǐng)求所包括的關(guān)于所述待更新商品的商品信息作為待更新商品信息;
獲取所述待更新商品的商品主鍵作為待更新商品主鍵,在所述第二數(shù)據(jù)庫(kù)中將所述待更新商品主鍵對(duì)應(yīng)的商品信息更新為所述待更新商品信息;
根據(jù)所述待更新商品信息判斷所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合是否需要更新,如果需要更新,則根據(jù)所述待更新商品信息對(duì)所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合進(jìn)行更新。
更進(jìn)一步的,還包括:下架模塊,用于:
響應(yīng)于商品下架請(qǐng)求,將所述商品下架請(qǐng)求所指定的商品作為待下架商品;
獲取所述待下架商品的商品主鍵作為待下架商品主鍵,在所述第二數(shù)據(jù)庫(kù)中刪除所述待下架商品主鍵、以及所述待下架商品主鍵對(duì)應(yīng)的商品信息;
在所述第一數(shù)據(jù)庫(kù)中從搜索條件所包括的索引集合中刪除所述待下架商品主鍵。
一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)計(jì)算機(jī)指令,當(dāng)計(jì)算機(jī)執(zhí)行所述計(jì)算機(jī)指令時(shí),用于執(zhí)行權(quán)利要求如前所述的商品信息搜索方法的所有步驟。
本發(fā)明提供一種電子設(shè)備,包括:
至少一個(gè)處理器;以及,
與所述至少一個(gè)處理器通信連接的存儲(chǔ)器;其中,
所述存儲(chǔ)器存儲(chǔ)有可被所述一個(gè)處理器執(zhí)行的指令,所述指令被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠:
響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
進(jìn)一步的,所述第一數(shù)據(jù)庫(kù)的查詢效率高于所述第二數(shù)據(jù)庫(kù),所述第二數(shù)據(jù)庫(kù)的響應(yīng)效率高于所述第一數(shù)據(jù)庫(kù)。
進(jìn)一步的,還包括:
響應(yīng)于商品上架請(qǐng)求,將所述商品上架請(qǐng)求所包括的商品作為待上架商品,將所述商品上架請(qǐng)求所包括的關(guān)于所述待上架商品的商品信息作為待上架商品信息;
將所述待上架商品和所述待上架商品信息對(duì)應(yīng)存儲(chǔ)到所述第二數(shù)據(jù)庫(kù),獲取第二數(shù)據(jù)庫(kù)生成的關(guān)于所述待上架商品的商品主鍵作為待上架商品主鍵,將滿足所述待上架商品信息的搜索條件作為待上架搜索條件;
在所述第一數(shù)據(jù)庫(kù)中向所述待上架搜索條件所對(duì)應(yīng)的索引集合添加所述待上架商品主鍵。
更進(jìn)一步的,還包括:
響應(yīng)于商品更新請(qǐng)求,將所述商品更新請(qǐng)求所指定的商品作為待更新商品,將所述商品更新請(qǐng)求所包括的關(guān)于所述待更新商品的商品信息作為待更新商品信息;
獲取所述待更新商品的商品主鍵作為待更新商品主鍵,在所述第二數(shù)據(jù)庫(kù)中將所述待更新商品主鍵對(duì)應(yīng)的商品信息更新為所述待更新商品信息;
根據(jù)所述待更新商品信息判斷所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合是否需要更新,如果需要更新,則根據(jù)所述待更新商品信息對(duì)所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合進(jìn)行更新。
更進(jìn)一步的,還包括:
響應(yīng)于商品下架請(qǐng)求,將所述商品下架請(qǐng)求所指定的商品作為待下架商品;
獲取所述待下架商品的商品主鍵作為待下架商品主鍵,在所述第二數(shù)據(jù)庫(kù)中刪除所述待下架商品主鍵、以及所述待下架商品主鍵對(duì)應(yīng)的商品信息;
在所述第一數(shù)據(jù)庫(kù)中從搜索條件所包括的索引集合中刪除所述待下架商品主鍵。
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
附圖說明
圖1為本發(fā)明一實(shí)施例提供的一種商品信息搜索方法的工作流程圖;
圖2為本發(fā)明另一實(shí)施例提供的一種商品信息搜索方法的工作流程圖;
圖3為本發(fā)明另一實(shí)施例提供的一種商品信息搜索方法的工作示意圖;
圖4為本發(fā)明一實(shí)施例提供的一種商品信息搜索系統(tǒng)的系統(tǒng)模塊圖;
圖5為本發(fā)明另一實(shí)施例提供的一種商品信息搜索系統(tǒng)的系統(tǒng)模塊圖;
圖6為本發(fā)明第六實(shí)施例提供的執(zhí)行商品信息搜索方法的一種電子設(shè)備的硬件結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明做進(jìn)一步詳細(xì)的說明。
實(shí)施例一
如圖1所示為本發(fā)明一實(shí)施例提供的一種商品信息搜索方法的工作流程圖,包括:
步驟s101,響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
步驟s102,從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
步驟s103,從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
具體來說,當(dāng)用戶進(jìn)行搜索時(shí),觸發(fā)步驟s101,用戶搜索可以按照商品熱度,價(jià)格區(qū)間,銷量,上新時(shí)間等維度進(jìn)行檢索和排序,每個(gè)維度的檢索生成對(duì)應(yīng)的搜索條件,多個(gè)維度的組合組成搜索條件組合。然后,在第一數(shù)據(jù)庫(kù)對(duì)搜索條件組合進(jìn)行檢索。
在步驟s102,得到第一數(shù)據(jù)庫(kù)返回的索引集合,索引集合包括一個(gè)或多個(gè)商品主鍵key,然后在第二數(shù)據(jù)庫(kù)中進(jìn)行檢索,從而觸發(fā)步驟s103,將第二數(shù)據(jù)庫(kù)檢索得到與每個(gè)key對(duì)應(yīng)的商品信息value的集合返回給客戶端。
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
實(shí)施例二
如圖2和圖3所示為本發(fā)明另一實(shí)施例提供的一種商品信息搜索方法的工作流程圖,包括:
步驟s201,響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵。
步驟s202,從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索。
步驟s203,從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
例如,用戶篩選搜索條件,通過第一數(shù)據(jù)庫(kù),例如mongodb搜索出符合搜索條件的集合key,在第二數(shù)據(jù)庫(kù),例如redis緩存,依據(jù)找到的集合key找到redis緩存的商品詳細(xì)信息。
步驟s204,響應(yīng)于商品上架請(qǐng)求,進(jìn)行商品上架操作,具體為:
響應(yīng)于商品上架請(qǐng)求,將所述商品上架請(qǐng)求所包括的商品作為待上架商品,將所述商品上架請(qǐng)求所包括的關(guān)于所述待上架商品的商品信息作為待上架商品信息;
將所述待上架商品和所述待上架商品信息對(duì)應(yīng)存儲(chǔ)到所述第二數(shù)據(jù)庫(kù),獲取第二數(shù)據(jù)庫(kù)生成的關(guān)于所述待上架商品的商品主鍵作為待上架商品主鍵,將滿足所述待上架商品信息的搜索條件作為待上架搜索條件;
在所述第一數(shù)據(jù)庫(kù)中向所述待上架搜索條件所對(duì)應(yīng)的索引集合添加所述待上架商品主鍵。
例如,當(dāng)后臺(tái)運(yùn)營(yíng)錄入商品,設(shè)置商品詳細(xì)信息,如商品需立即展示,商品索引信息立即進(jìn)入索引更新模塊;如商品需定時(shí)展示,商品索引信息進(jìn)入task索引更新模塊。其中,task索引更新模塊為定時(shí)任務(wù),根據(jù)商品發(fā)布時(shí)間點(diǎn),定時(shí)將商品信息錄入到第二數(shù)據(jù)庫(kù),例如redis,以及將索引錄入第一數(shù)據(jù)庫(kù),例如mongodb。
同時(shí),后臺(tái)錄入商品,商品的詳細(xì)信息進(jìn)入第二數(shù)據(jù)庫(kù),例如redis,以key-value形式展示,key存商品主鍵,value存商品詳細(xì)信息。
步驟s205,響應(yīng)于商品更新請(qǐng)求,執(zhí)行商品更新操作,具體為:
響應(yīng)于商品更新請(qǐng)求,將所述商品更新請(qǐng)求所指定的商品作為待更新商品,將所述商品更新請(qǐng)求所包括的關(guān)于所述待更新商品的商品信息作為待更新商品信息;
獲取所述待更新商品的商品主鍵作為待更新商品主鍵,在所述第二數(shù)據(jù)庫(kù)中將所述待更新商品主鍵對(duì)應(yīng)的商品信息更新為所述待更新商品信息;
根據(jù)所述待更新商品信息判斷所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合是否需要更新,如果需要更新,則根據(jù)所述待更新商品信息對(duì)所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合進(jìn)行更新。
例如,商品詳細(xì)信息對(duì)應(yīng)的第二數(shù)據(jù)庫(kù)數(shù)據(jù),例如redis數(shù)據(jù)更新,如涉及索引數(shù)據(jù),也需將第一數(shù)據(jù)庫(kù),例如mongodb存儲(chǔ)的索引信息更新。
步驟s206,響應(yīng)于商品下架請(qǐng)求,執(zhí)行商品下架操作,具體為:
響應(yīng)于商品下架請(qǐng)求,將所述商品下架請(qǐng)求所指定的商品作為待下架商品;
獲取所述待下架商品的商品主鍵作為待下架商品主鍵,在所述第二數(shù)據(jù)庫(kù)中刪除所述待下架商品主鍵、以及所述待下架商品主鍵對(duì)應(yīng)的商品信息;
在所述第一數(shù)據(jù)庫(kù)中從搜索條件所包括的索引集合中刪除所述待下架商品主鍵。
其中,所述第一數(shù)據(jù)庫(kù)的查詢效率高于所述第二數(shù)據(jù)庫(kù),所述第二數(shù)據(jù)庫(kù)的響應(yīng)效率高于所述第一數(shù)據(jù)庫(kù)。優(yōu)選地,第一數(shù)據(jù)庫(kù)為mongodb數(shù)據(jù)庫(kù),第二數(shù)據(jù)庫(kù)為redis數(shù)據(jù)庫(kù)。其中,mongodb作為非關(guān)系型數(shù)據(jù)庫(kù),存儲(chǔ)結(jié)構(gòu)簡(jiǎn)單,查詢效率高,而redis作為緩存數(shù)據(jù)庫(kù),支持豐富的數(shù)據(jù)結(jié)構(gòu),具有更高的響應(yīng)效率,二者結(jié)合,mongodb存儲(chǔ)搜索條件,redis緩存具體對(duì)象,從而達(dá)到高效的實(shí)時(shí)搜索的效果
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
實(shí)施例三
如圖4所示為本發(fā)明一實(shí)施例提供的一種商品信息搜索系統(tǒng)的系統(tǒng)模塊圖,包括:
搜索請(qǐng)求響應(yīng)模塊401,用于:響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
索引獲取模塊402,用于:從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
商品信息獲取模塊403,用于:從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
實(shí)施例四
如圖5所示為本發(fā)明另一實(shí)施例提供的一種商品信息搜索系統(tǒng)的系統(tǒng)模塊圖,包括:
搜索請(qǐng)求響應(yīng)模塊501,用于:響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵。
索引獲取模塊502,用于:從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索。
商品信息獲取模塊503,用于:從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
上架模塊504,用于:
響應(yīng)于商品上架請(qǐng)求,將所述商品上架請(qǐng)求所包括的商品作為待上架商品,將所述商品上架請(qǐng)求所包括的關(guān)于所述待上架商品的商品信息作為待上架商品信息;
將所述待上架商品和所述待上架商品信息對(duì)應(yīng)存儲(chǔ)到所述第二數(shù)據(jù)庫(kù),獲取第二數(shù)據(jù)庫(kù)生成的關(guān)于所述待上架商品的商品主鍵作為待上架商品主鍵,將滿足所述待上架商品信息的搜索條件作為待上架搜索條件;
在所述第一數(shù)據(jù)庫(kù)中向所述待上架搜索條件所對(duì)應(yīng)的索引集合添加所述待上架商品主鍵。
更新模塊505,用于:
響應(yīng)于商品更新請(qǐng)求,將所述商品更新請(qǐng)求所指定的商品作為待更新商品,將所述商品更新請(qǐng)求所包括的關(guān)于所述待更新商品的商品信息作為待更新商品信息;
獲取所述待更新商品的商品主鍵作為待更新商品主鍵,在所述第二數(shù)據(jù)庫(kù)中將所述待更新商品主鍵對(duì)應(yīng)的商品信息更新為所述待更新商品信息;
根據(jù)所述待更新商品信息判斷所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合是否需要更新,如果需要更新,則根據(jù)所述待更新商品信息對(duì)所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合進(jìn)行更新。
下架模塊506,用于:
響應(yīng)于商品下架請(qǐng)求,將所述商品下架請(qǐng)求所指定的商品作為待下架商品;
獲取所述待下架商品的商品主鍵作為待下架商品主鍵,在所述第二數(shù)據(jù)庫(kù)中刪除所述待下架商品主鍵、以及所述待下架商品主鍵對(duì)應(yīng)的商品信息;
在所述第一數(shù)據(jù)庫(kù)中從搜索條件所包括的索引集合中刪除所述待下架商品主鍵。
其中,所述第一數(shù)據(jù)庫(kù)的查詢效率高于所述第二數(shù)據(jù)庫(kù),所述第二數(shù)據(jù)庫(kù)的響應(yīng)效率高于所述第一數(shù)據(jù)庫(kù)。
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
本發(fā)明第五實(shí)施例提供一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)計(jì)算機(jī)指令,當(dāng)計(jì)算機(jī)執(zhí)行所述計(jì)算機(jī)指令時(shí),用于執(zhí)行權(quán)利要求如前所述的商品信息搜索方法的所有步驟。
如圖6所示為本發(fā)明第六實(shí)施例提供的執(zhí)行商品信息搜索方法的一種電子設(shè)備的硬件結(jié)構(gòu)示意圖,包括:
至少一個(gè)處理器601;以及,
與所述至少一個(gè)處理器601通信連接的存儲(chǔ)器602;其中,
所述存儲(chǔ)器602存儲(chǔ)有可被所述一個(gè)處理器執(zhí)行的指令,所述指令被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠:
響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
圖6中以一個(gè)處理器602為例。
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
實(shí)施例七
本發(fā)明第七實(shí)施例提供執(zhí)行商品信息搜索方法的一種電子設(shè)備,包括:
至少一個(gè)處理器;以及,
與所述至少一個(gè)處理器通信連接的存儲(chǔ)器;其中,
所述存儲(chǔ)器存儲(chǔ)有可被所述一個(gè)處理器執(zhí)行的指令,所述指令被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠:
響應(yīng)于客戶端的搜索請(qǐng)求,根據(jù)搜索請(qǐng)求所包括的搜索條件組合,在用于存儲(chǔ)搜索條件與對(duì)應(yīng)的索引集合的第一數(shù)據(jù)庫(kù)中進(jìn)行檢索,所述搜索條件組合包括至少一搜索條件,所述索引集合包括與商品一一對(duì)應(yīng)的商品主鍵;
從所述第一數(shù)據(jù)庫(kù)獲取所述搜索條件組合所包括的搜索條件所對(duì)應(yīng)的索引集合作為待搜索索引集合,根據(jù)所述待搜索索引集合,在用于存儲(chǔ)索引數(shù)據(jù)與對(duì)應(yīng)的商品信息的第二數(shù)據(jù)庫(kù)進(jìn)行檢索;
從所述第二數(shù)據(jù)庫(kù)獲取所述待搜索索引集合所包括的商品主鍵所對(duì)應(yīng)的商品信息的集合作為結(jié)果商品信息集合,將所述結(jié)果商品信息集合返回給客戶端。
響應(yīng)于商品上架請(qǐng)求,將所述商品上架請(qǐng)求所包括的商品作為待上架商品,將所述商品上架請(qǐng)求所包括的關(guān)于所述待上架商品的商品信息作為待上架商品信息;
將所述待上架商品和所述待上架商品信息對(duì)應(yīng)存儲(chǔ)到所述第二數(shù)據(jù)庫(kù),獲取第二數(shù)據(jù)庫(kù)生成的關(guān)于所述待上架商品的商品主鍵作為待上架商品主鍵,將滿足所述待上架商品信息的搜索條件作為待上架搜索條件;
在所述第一數(shù)據(jù)庫(kù)中向所述待上架搜索條件所對(duì)應(yīng)的索引集合添加所述待上架商品主鍵。
響應(yīng)于商品更新請(qǐng)求,將所述商品更新請(qǐng)求所指定的商品作為待更新商品,將所述商品更新請(qǐng)求所包括的關(guān)于所述待更新商品的商品信息作為待更新商品信息;
獲取所述待更新商品的商品主鍵作為待更新商品主鍵,在所述第二數(shù)據(jù)庫(kù)中將所述待更新商品主鍵對(duì)應(yīng)的商品信息更新為所述待更新商品信息;
根據(jù)所述待更新商品信息判斷所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合是否需要更新,如果需要更新,則根據(jù)所述待更新商品信息對(duì)所述第一數(shù)據(jù)庫(kù)中的搜索條件所對(duì)應(yīng)的索引集合進(jìn)行更新。
響應(yīng)于商品下架請(qǐng)求,將所述商品下架請(qǐng)求所指定的商品作為待下架商品;
獲取所述待下架商品的商品主鍵作為待下架商品主鍵,在所述第二數(shù)據(jù)庫(kù)中刪除所述待下架商品主鍵、以及所述待下架商品主鍵對(duì)應(yīng)的商品信息;
在所述第一數(shù)據(jù)庫(kù)中從搜索條件所包括的索引集合中刪除所述待下架商品主鍵。
其中,所述第一數(shù)據(jù)庫(kù)的查詢效率高于所述第二數(shù)據(jù)庫(kù),所述第二數(shù)據(jù)庫(kù)的響應(yīng)效率高于所述第一數(shù)據(jù)庫(kù)。
本發(fā)明通過第一數(shù)據(jù)庫(kù)存儲(chǔ)搜索條件,第二數(shù)據(jù)庫(kù)存儲(chǔ)商品信息,因此第一數(shù)據(jù)庫(kù)僅用于對(duì)商品進(jìn)行搜索,從而可以利用已經(jīng)預(yù)先存儲(chǔ)的搜索條件進(jìn)行快速檢索,然后再?gòu)牡诙?shù)據(jù)庫(kù)提取相應(yīng)的商品信息,從而提高實(shí)時(shí)性及搜索響應(yīng)速度。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。