




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、多關(guān)鍵字模糊匹配的終端適配算法應(yīng)用軟件開發(fā)功能需求規(guī)格書版本號 2.0.0修訂記錄日期修訂版本修改章節(jié)修改描述作者2014-08-011.0新建袁勇2014-10-09 2.0補(bǔ)充袁勇目 錄1前言21.1編寫目的21.2文檔范圍說明21.3文檔適用讀者21.4術(shù)語、定義及縮略語22終端適配模糊算法32.1終端適配模糊算法簡介31 前言1.1 編寫目的 本文檔的目的主要是介紹多關(guān)鍵字模糊匹配的終端適配算法的流程和處理邏輯。1.2 文檔適用讀者文檔適用于對開發(fā)測試人員,和終端適配相關(guān)的專業(yè)人士。1.3 術(shù)語、定義及縮略語縮寫英文名稱中文描述FRSFunction Requirement Speci
2、fication功能規(guī)格說明書FTPFile Transfer Protocol文件傳輸協(xié)議HTTPHypertext Transfer Protocol超文本傳輸協(xié)議IMEIInternational Mobile Equipment Identity國際移動設(shè)備標(biāo)識OSOperating System操作系統(tǒng)SFTPSecure File Transfer Protocol安全文件傳輸協(xié)議SNMPSimple Network Management Protocol簡單網(wǎng)絡(luò)管理協(xié)議WAPWireless Access Protocol無線接入?yún)f(xié)議WAPGWWAP GatewayWAP網(wǎng)關(guān)UR
3、LUniform Resource Locator統(tǒng)一資源定位器UAUser Agent一個特殊字符串頭,使得服務(wù)器能夠識別客戶使用終端名稱、操作系統(tǒng)及版本、CPU 類型、瀏覽器及版本、瀏覽器渲染引擎等信息2 終端適配模糊算法2.1 終端適配模糊算法簡介模糊算法是將需要適配的UA數(shù)據(jù)(標(biāo)準(zhǔn)UA)以及非標(biāo)準(zhǔn)UA,通過多關(guān)鍵字模糊匹配的過程,關(guān)聯(lián)到標(biāo)準(zhǔn)機(jī)型庫信息,寫入到UA與標(biāo)準(zhǔn)終端ID的映射表信息t_po_ua_terminal_relation,從而得到其各項相關(guān)信息,其大致流程如下圖:2.1.1 標(biāo)準(zhǔn)機(jī)型庫、待適配UA庫、未適配UA庫和異常UA庫 標(biāo)準(zhǔn)機(jī)型庫t_po_terminal數(shù)據(jù)結(jié)構(gòu)
4、如下,包含了以下主要的信息:終端ID、英文品牌、中文品牌、別名品牌、展示品牌、機(jī)型別名、展示機(jī)型、分辨率寬、分辨率高、操作系統(tǒng)、機(jī)型別名是否包含字母以及其他屬性。終端ID英文品牌中文品牌別名品牌展示品牌機(jī)型別名展示機(jī)型分辨率寬分辨率高操作系統(tǒng)是否包含字母更多屬性1XXHTC宏達(dá)電子HTCG10Desire HD480800AndroidYESXXX2XXHTC宏達(dá)電子HTCDesire HDDesire HD480800AndroidYESXXX3XXSAMSUNG三星SEC三星X208SGH-X208240320AndroidYESXXX4XXSONYERICSSON索尼愛立信索愛索尼愛立信
5、LT22iLT22i540960AndroidYESXXX5XXNOKIA諾基亞諾基亞58005800XM240320symbianNOXXX其中:終端ID是標(biāo)示終端信息的唯一字段,展示品牌是指在使用國家和區(qū)域中消費(fèi)者普遍了解和熟悉的品牌,如諾基亞、HTC,展示機(jī)型是指機(jī)型的標(biāo)準(zhǔn)名稱或行貨的名稱,一個標(biāo)準(zhǔn)機(jī)型包含一個或多個機(jī)型別名,但在機(jī)型信息中,所以的標(biāo)準(zhǔn)機(jī)型應(yīng)該存在一條記錄,其機(jī)型別名與標(biāo)準(zhǔn)機(jī)型一致(這一點(diǎn)需要機(jī)型維護(hù)人員保證,系統(tǒng)定期校驗),機(jī)型別名是否包含字母是便于在適配算法中提升準(zhǔn)確率而設(shè)定的一個參數(shù),由系統(tǒng)自行計算,及判斷機(jī)型中是否包含A-Za-z的字母及中文漢字; 待適配UA庫t
6、_po_erroradapterrecord是指需要進(jìn)行模糊適配的UA信息;未適配UA庫T_PO_notadaptua是指經(jīng)過每日定時運(yùn)行的模糊匹配算法處理后無法關(guān)聯(lián)標(biāo)準(zhǔn)終端ID的UA信息;異常UA庫t_po_ua_error是指經(jīng)過人工鑒定,確實無法映射到任何標(biāo)準(zhǔn)終端ID的UA,如*,maui等。2.1.2 模糊匹配算法前置處理A、 提取待適配UA表t_po_errorua的數(shù)據(jù),并根據(jù)UA關(guān)聯(lián)剔除存在未適配UA表T_PO_notadapterua和異常UA表t_po_ua_error中的數(shù)據(jù),其中關(guān)聯(lián)時不區(qū)分大小寫;B、 檢查機(jī)型庫中機(jī)型別名字段是否包含操作系統(tǒng)名稱的數(shù)據(jù),如機(jī)型包含DRO
7、ID、SYMBian、plam、windows等,這類數(shù)據(jù)暫時不處理;C、 每周選定一個時間,將未適配UA表T_PO_notadapterua進(jìn)行回籠處理,目前設(shè)定每周二定期將未適配UA表全量加載到待適配UA表t_po_erroradapterrecord中,并將未適配UA表T_PO_notadapterua清空;(因為隨著機(jī)型信息的補(bǔ)充和適配算法的優(yōu)化,可能存在部分未適配UA表的數(shù)據(jù)能夠通過模糊算法映射到標(biāo)準(zhǔn)機(jī)型ID)。D、 將待適配UA表t_po_erroradapterrecord的數(shù)據(jù)按UA去重后放入到本次處理的一個中間表t_po_lostuseragent_DATE中,包含ua、up
8、p_ua、dtime三個字段,其中dtime默認(rèn)為插入時間,upp_ua=upper(ua),及將ua轉(zhuǎn)換成大寫填充。2.1.3 UA同時包含品牌和機(jī)型的處理邏輯 對于UA同時包含品牌和機(jī)型的信息,作為適配的第一層級策略,其可靠性是最高的,而判斷“包含”采用的技術(shù)手段是采用instr函數(shù)(oracle數(shù)據(jù)庫提供的字符串函數(shù),后文所用包含同此)。A、 當(dāng)UA同時包含機(jī)型庫的英文品牌和機(jī)型別名,且機(jī)型庫的英文品牌和機(jī)型別名非空,則認(rèn)為該UA能適配此標(biāo)準(zhǔn)機(jī)型,并將此UA與標(biāo)準(zhǔn)終端ID的映射關(guān)系寫入臨時映射表中,并將UA中間表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置
9、為1;B、 當(dāng)UA同時包含機(jī)型庫的中文品牌和機(jī)型別名,且機(jī)型庫的中文品牌和機(jī)型別名非空,則認(rèn)為該UA能適配此標(biāo)準(zhǔn)機(jī)型,并將此UA與標(biāo)準(zhǔn)終端ID的映射關(guān)系寫入臨時映射表中,并將UA中間表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置為1;C、 當(dāng)UA同時包含機(jī)型庫的別名品牌和機(jī)型別名,且機(jī)型庫的別名品牌和機(jī)型別名非空,則認(rèn)為該UA能適配此標(biāo)準(zhǔn)機(jī)型,并將此UA與標(biāo)準(zhǔn)終端ID的映射關(guān)系寫入臨時映射表中,并將UA中間表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置為2;D、 對于同一個UA映射多個終端ID的情況,根據(jù)終端ID對應(yīng)的機(jī)型別名長度
10、最長最先選擇,對于長度相同時,根據(jù)終端ID的大小從大至小優(yōu)先判斷;2.1.4 UA僅包含機(jī)型的處理邏輯經(jīng)過3.1.3的處理后仍未建立映射關(guān)系的UA,進(jìn)行這一輪適配邏輯,即僅包含機(jī)型處理。A、 對于機(jī)型別名中包含字母(該字段為YES),且機(jī)型別名長度大于等于2位,且UA所包含機(jī)型別名的位置的前一位和后一位為特殊字符(即不是大小寫字母A-Za-z及數(shù)據(jù)0-9),如UA:mozilla/5800XM symbian v40 對應(yīng)機(jī)型 諾基亞5800XM,其UA包含機(jī)型別名位置的前一位和后一位分別為”/”和” ”,則將該UA能此標(biāo)準(zhǔn)機(jī)型,并將此UA與標(biāo)準(zhǔn)終端ID的映射關(guān)系寫入臨時映射表中,并將UA中間
11、表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置為3;B、 對于機(jī)型別名中不包含字母(該字段為NO,及機(jī)型為純數(shù)字),且機(jī)型別名長度大于等于4位,且展示品牌為HTC','OPPO','LG','步步高','多普達(dá)','華為','摩托羅拉','諾基亞','三星','小米','夏普','魅族'等,且UA所包含機(jī)型別名的位置的前一位和后一位為特殊字符(即不是大小寫字母A-Za-z及數(shù)據(jù)0-
12、9),如UA:mozilla/5800 symbian v40 對應(yīng)機(jī)型 諾基亞5800,其UA包含機(jī)型別名位置的前一位和后一位分別為”/”和” ”,則將該UA能此標(biāo)準(zhǔn)機(jī)型,并將此UA與標(biāo)準(zhǔn)終端ID的映射關(guān)系寫入臨時映射表中,并將UA中間表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置為4;C、 對于機(jī)型別名中不包含字母(該字段為NO,及機(jī)型為純數(shù)字),且機(jī)型別名長度大于等于4位,且展示品牌不為HTC','OPPO','LG','步步高','多普達(dá)','華為','摩托羅
13、拉','諾基亞','三星','小米','夏普','魅族'等,且UA所包含機(jī)型別名的位置的前一位和后一位為特殊字符(即不是大小寫字母A-Za-z及數(shù)據(jù)0-9),則將該UA能此標(biāo)準(zhǔn)機(jī)型,并將此UA與標(biāo)準(zhǔn)終端ID的映射關(guān)系寫入臨時映射表中,并將UA中間表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置為5;D、 對于仍未適配的UA,僅使用UA包含機(jī)型別名,且所包含機(jī)型別名的位置的前一位和后一位為特殊字符(即不是大小寫字母A-Za-z及數(shù)據(jù)0-9)的條件進(jìn)行適配,并將此UA與標(biāo)準(zhǔn)終端ID
14、的映射關(guān)系寫入臨時映射表中,并將UA中間表t_po_lostuseragent_DATE的相關(guān)記錄刪除,將其優(yōu)先級值置為6;E、 以上適配結(jié)果的優(yōu)先級A>B>C,同一優(yōu)先級中如存在一個UA映射多個終端ID的情況,根據(jù)終端ID對應(yīng)的機(jī)型別名長度最長最先選擇,對于長度相同時,根據(jù)終端ID的大小從大至小優(yōu)先判斷。2.1.5 UA只包含操作系統(tǒng)的處理邏輯創(chuàng)建三個機(jī)型,機(jī)型別名分別為Android、Symbian和windows phone,其品牌、操作系統(tǒng)也為Android、Symbian和windows phone(不能在處理適配算法前創(chuàng)建,建議做個特殊處理),對于UA中不包含其他機(jī)型別
15、名或所包含機(jī)型別名位置的前一位和后一位為字母或數(shù)字,且UA中僅包含Android、Symbian和windows phone等關(guān)鍵字,則將此UA映射到三個特殊機(jī)型。2.1.6 引入適配關(guān)系的適配程度層級概念,并對低層級關(guān)系數(shù)據(jù)進(jìn)行動態(tài)更新因不同條件下建立的ua與終端關(guān)系的可靠性是不同的,所以針對每條關(guān)系數(shù)據(jù),引入適配程度層級概念,分別為15-0級,數(shù)字越高代表可靠性越高,從實際效果測量來看,12級及以上可以認(rèn)為100%適配正確,10級及以下認(rèn)為可靠性不高,適配準(zhǔn)確率在80-90%左右;因存在機(jī)型上市后基地的機(jī)型信息補(bǔ)充不及時的情況,可能將新機(jī)型的UA適配的老的、錯誤的機(jī)型上,定期進(jìn)行一次全UA
16、的重新模糊適配,具體算法如下:將當(dāng)前UA與機(jī)型關(guān)系表t_po_ua_terminal_relation中適配程度層級低于10級的數(shù)據(jù)備份后,在非業(yè)務(wù)時段將此表數(shù)據(jù)加入到待適配UA表t_po_erroradapterrecord,按以上模糊適配算法得出新的UA與機(jī)型關(guān)系表,提取關(guān)聯(lián)機(jī)型ID不一致的數(shù)據(jù),并比對各UA在新老關(guān)系表的優(yōu)先級值,如果新的優(yōu)先級值高,則將新數(shù)據(jù)寫入t_po_ua_terminal_relation,如果老的數(shù)據(jù)優(yōu)先級高或新的關(guān)系表不存在,則將老數(shù)據(jù)寫入t_po_ua_terminal_relation表。2.1.7 最后處理邏輯A、 將標(biāo)準(zhǔn)機(jī)型庫表t_po_termina
17、l中根據(jù)機(jī)型別名等于展示機(jī)型,展示品牌相同的條件生成一張標(biāo)準(zhǔn)機(jī)型視圖t_po_terminalinfo,并將3.1.5生成的三個特殊機(jī)型補(bǔ)充到視圖中(原表不添加,可選);B、 將3.1.2-3.1.5生成的UA與標(biāo)準(zhǔn)終端ID的關(guān)聯(lián)關(guān)系(A1表),關(guān)聯(lián)標(biāo)準(zhǔn)機(jī)型庫表t_po_terminal(B1表)和標(biāo)準(zhǔn)機(jī)型視圖t_po_terminalinfo(C1表),根據(jù)A1的終端ID等于B1的終端ID,B1的展示品牌等于C1的展示品牌,B1的展示機(jī)型等于C1的機(jī)型別名,取A1的UA和C1的終端ID生成最終的映射關(guān)系表,補(bǔ)充到UA與機(jī)型映射關(guān)系表t_po_ua_terminal_relation中;C、 將此次未適配成功的UA輸入插入到未適配UA庫T_PO_notadapterua。2.1.8 從未適配成功的UA中自動提取機(jī)型功能對于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽省淮北市高三一模數(shù)學(xué)試題含答案解析
- Python常用框架比較試題及答案
- A-Level化學(xué)A2024-2025年有機(jī)合成案例分析與分析化學(xué)解題技巧模擬試卷
- 2025年注冊城鄉(xiāng)規(guī)劃師考試模擬試卷:城鄉(xiāng)規(guī)劃原理(規(guī)劃法規(guī)與空間布局)難點(diǎn)突破
- 2025年歐幾里得數(shù)學(xué)競賽模擬試卷:解析幾何與數(shù)列推理策略指導(dǎo)
- 2025年考研機(jī)械原理運(yùn)動分析專項卷(含凸輪機(jī)構(gòu)設(shè)計題)易錯題庫
- 計算機(jī)二級Msoffice核心技能試題及答案
- 兒科護(hù)理業(yè)務(wù)查房
- 2025年高考生物模擬:細(xì)胞代謝與能量轉(zhuǎn)換專項訓(xùn)練試卷
- 【《消能防沖設(shè)計計算案例綜述》1000字】
- 煤礦機(jī)電設(shè)備春季預(yù)防性檢修計劃
- 2017年山東、臨沂爆炸事故案例分析
- 工貿(mào)企業(yè)安全管理臺賬資料
- 三方協(xié)議書(消防)
- S771(一) 水力循環(huán)澄清池
- 預(yù)激綜合征臨床心電圖的當(dāng)前觀點(diǎn)
- 高密度電法探測及數(shù)據(jù)處理解釋--答辯
- 閥門檢修作業(yè)指導(dǎo)書講解
- 畢業(yè)設(shè)計(論文)秸稈粉碎機(jī)的設(shè)計(含全套圖紙)
- 體育測量與評價PPT課件-第五章身體素質(zhì)的測量與評價
- 樁基鋼筋籠吊裝計算書(共16頁)
評論
0/150
提交評論