• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 89  文章 - 118  trackbacks - 0
            <2014年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            留言簿(16)

            隨筆分類(56)

            隨筆檔案(89)

            文章分類

            推薦博客

            搜索

            •  

            最新隨筆

            最新評論

            閱讀排行榜

            單詞詞典
            1、哈希加鏈表
            2、樹形結構:B樹或者B+樹
            倒排列表:
            單詞+文檔號,詞頻,出現的位置
            文檔號一般采用差值存儲,以節省空間
            建立索引
            1、兩遍文檔遍歷法
            第一遍,收集全局統計信息,文檔數N,每個文檔包含不同單詞數M,每個單詞在多少個文檔中出現過的信息DF,通過這些信息可以計算出最終索引的大小
            第二遍,在建立好的內存中建立索引,從磁盤讀取文檔并解析文檔是最消耗時間的步驟
            2、排序法
            始終在內存中分配固定大小的空間,用來存放詞典信息和索引中間結果,當分配空間消耗光的時候,把中間結果寫入磁盤,清空內存數據進行下一輪索引
            中間結果排序,排序前,文檔ID,單詞ID,單詞頻率
            排序后,單詞ID(主鍵),文檔ID(次鍵)
            合并中間結果,把中間結果文件進行合并,按單詞ID寫入最終結果文件
            3、歸并法
            在中間結果排序完成以后,把字典信息也寫入文檔中,這樣全額使用內存
            在建立中間索引中,實際單詞,文檔編號,詞頻
            合并時,針對每個單詞的倒排列表進行合并,形成最終的詞典信息
            動態索引
            倒排索引:詞典在內存里,倒排列表存儲在磁盤文件中
            臨時索引:詞典和倒排列表都在內存中,當有新文檔加入時,放到臨時索引中
            刪除文檔列表:當文檔內容被更改時,系統認為舊文檔被刪除,增加一篇新文檔
            當用戶輸入查詢時,先從找倒排索引+臨時索引,去掉刪除文檔列表中的文檔結果
            索引更新策略
            1、完全重建策略:當新增文檔達到一定數量后,新老索引合并重建,適合小文檔集合,主流商業搜索引擎一般也采用此方式來維護
            2、再合并策略:當新增文檔達到一定數量后,新老索引合并重建,此時老索引還在被使用,由于老索引有序,所以合并策略執行較快,但是讀老索引,建新索引,也需要較多IO時間,比較耗時
            3、原地更新策略:在建立老索引時,在老索引倒排列表中留有一定的余地,新加入索引直接追加到預留空間,實驗數據表明,更新效率比再合并策略低
            4、混合策略:將單詞根據不同性質進行分類,對其索引采取不同的索引更新策略,長倒排列表單詞采取原地更新策略(讀寫開銷大),短倒排列表采取再合并策略(讀寫開銷不算太大

            查詢處理
            1、一次一文檔,找到包含關鍵字的所有文檔集合,一次計算一個文檔的得分,依次計算所有文檔,計算后一般采用優先隊列對分數進行排序
            2、一次一單詞,一次計算一個單詞的得分,并把結果以文檔編寫為關鍵值,以hash表存儲得分,計算所有文檔得分后,對hash表進行排序
            跳躍指針
            在存儲倒排索引文檔編號時,通常使用跳躍指針節省空間,跳躍指針分塊使用根號L為長度效果較好
            多字段索引:對網頁的不同區域進行字段劃分,進行索引
            1、多索引方式,對每個不同的字段分別建立索引
            2、倒排列表方式,把字段信息存儲到倒排列表項中
            3、擴展列表方式,把每個字段出現的位置記錄到一張列表里,倒排索引找到單詞后,判斷單詞的位置是否在某字段范圍中
            短語查詢:本質上是如何在索引中維護單詞順序關系或位置信息
            1、位置信息索引,通過位置信息判斷兩個詞是否為短語關系,適合常規短語
            2、雙詞索引,首詞+下詞,只對計算代價高的短語建立雙詞索引,一般短語通過常規手段達到目的
            3、短語索引,缺點無法將所有短語都建好索引,從用戶查詢日志或網頁本身挖掘短語,適合熱門短語
            4、混合方法,用戶查詢->短語索引->雙詞索引->常規索引
            分布式索引:多臺機器協作完成索引
            1、按文檔劃分,每臺機器負責對某個文檔子集建立索引
            2、按單詞劃分,將單詞分別傳送給服務器1,計算結果后,再傳送給服務器2,一次一單詞的查詢處理方式
            posted on 2013-09-16 14:01 胡滿超 閱讀(538) 評論(0)  編輯 收藏 引用 所屬分類: 搜索引擎
            无码8090精品久久一区| 精品久久久久久成人AV| 久久精品国产99久久无毒不卡| 亚洲成色999久久网站| 久久综合狠狠综合久久| 伊人久久大香线蕉av一区| 久久久久九九精品影院| 国产精品伊人久久伊人电影 | 2019久久久高清456| 青春久久| 精品国产乱码久久久久久人妻| 国产欧美久久久精品影院| 精品伊人久久大线蕉色首页| 亚洲AV日韩AV天堂久久| 欧美一区二区三区久久综| 色综合久久久久无码专区| 日产精品久久久久久久| 久久久久久亚洲Av无码精品专口 | 国产日产久久高清欧美一区| 精品精品国产自在久久高清 | 色综合合久久天天给综看| 亚洲国产成人久久综合一区77| 久久无码AV一区二区三区| 久久久亚洲欧洲日产国码二区| 91精品久久久久久无码| 亚洲一级Av无码毛片久久精品| 久久久久久综合网天天| 好久久免费视频高清| 欧美激情精品久久久久久| 久久国产精品99精品国产| 欧美激情精品久久久久久久| 麻豆一区二区99久久久久| 国产成人AV综合久久| 亚洲国产精品无码久久久秋霞2| 久久久精品人妻一区二区三区蜜桃 | 性高湖久久久久久久久| 久久久精品午夜免费不卡| 奇米影视7777久久精品人人爽| 国产亚洲欧美精品久久久| 久久久久亚洲精品男人的天堂| 久久天天躁狠狠躁夜夜躁2O2O|