SSIS高級轉換任務—關鍵詞查找
和關鍵詞提取一樣,關鍵詞查找使用相同的算法和統計模型將輸入流中的字符串按照名詞或者名詞詞組進行統計,不同的是它參照一個已經存在的詞匯表,輸出的統計結果也僅限于這個詞匯表中的關鍵詞。關鍵詞提取和關鍵詞查找可以搭配使用。定期地使用關鍵詞提取來產生關鍵詞詞匯表,也可以在這個詞匯表中人為刪除或添加想要統計的關鍵詞,最后使用關鍵詞查找來產生最終的統計結果。
在上一個章節中我們將統計結果中的“model”從統計結果中刪除,然后我們可以將他們整理出來,然后刪除重復的,添加一些對有統計價值的關鍵詞。這里假設我們想統計有哪些模型招致客戶的不滿以致留言評價,但是我們想只保留模型的名稱,而不是類似“model XX-Z1”這樣,model和模型名稱連接在一起,最后我們整理得到的表[TermResults]內容如下:
term
------------
dent
door
freezer
ice
ice maker
maker
XX-1
XX-YY3
XX-Z1
新建一個package,命名為TermLookUpExample,這個package的內容和上面一個例子類似,我們只要將Term Exetraction替換成Term LookUp,將OLE Destination的目標新建一個表[TermReport]。打開Term LookUp的編輯界面,如圖1

圖1
- Reference Table:這個標簽用來設置參照表,Term LookUp將會依照這個表中的詞匯生成統計結果
- Term Lookup:這里設置輸入字符串要參照表中的那個字段來進行統計
- Advanced:這個標簽中可以統計是否大小寫敏感
運行這個package得到的結果,下面是其中的6行,我們可以看到這里沒有統計數字,只是每個關鍵詞在輸入流中出現的次數的簡單描述,沒有他們在全部文本中的統計結果。
Term Frequency ConvCustSvcNote
------------- --------- --------------------------------------------------
freezer 1 ice maker in freezer stopped working model XX-YY3
ice maker 1 ice maker in freezer stopped working model XX-YY3
XX-YY3 1 ice maker in freezer stopped working model XX-YY3
door 1 door to refrigerator is coming off model XX-1
XX-1 1 door to refrigerator is coming off model XX-1
ice maker 1 ice maker is making a funny noise XX-YY3
(Only first six rows of resultset are displayed)
為得到最終的結果,在Term Lookup和OLE DB Destination之間添加一個Aggregate Transform,在Aggregate Transform中忽略ConvCustSvcNote列,按照Term列分組,在Frequency列上進行求和計算。將Aggregate Transform和OLE DB Transform連接起來。
盡管這是一個非常簡單的例子,但是它在短時間內從文本輸入流中產生一個統計結果。
作者:Tyler Ning
出處:http://www.rzrgm.cn/tylerdonet/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,如有問題,請微信聯系冬天里的一把火
浙公網安備 33010602011771號