2011-06-05 39 views
3

如果您以前使用過indeed.com,您可能會知道,對於您所尋找的關鍵字,只要在屏幕左側顯示多個搜索優化選項,就會返回傳統搜索結果。如何創建像搜索一樣的truth.com?

例如,搜索關鍵字「設計師」,細化選項是:

Salary Estimate 
    $40,000+ (45982) 
    $60,000+ (29795) 
    $80,000+ (15966) 
    $100,000+ (6896) 
    $120,000+ (2828) 
Title 
    Floral Design Specialist (945) 
    Hair Stylist (817) 
    GRAPHIC DESIGNER (630) 
    Hourly Associates/Co-managers (589) 
    Web designer (584) 
    more » 
Company 
    Kelly Services (1862) 
    Unlisted Company (1133) 
    CyberCoders Engineering (1058) 
    Michaels Arts & Crafts (947) 
    ULTA (818) 
    Elance (767) 
Location 
    New York, NY (2960) 
    San Francisco, CA (1633) 
    Chicago, IL (1184) 
    Houston, TX (1057) 
    Seattle, WA (1025) 
    more » 
Job Type 
    Full-time (45687) 
    Part-time (2196) 
    Contract (8204) 
    Internship (720) 
    Temporary (1093) 

它是如何這麼快就收集統計信息(如作業的數量提供了每個薪金範圍)。看起來精簡選項是實時創建的,因爲次要關鍵字的加載速度也很快。

是否有特定的SQL技術來創建此功能?或者在網上有一本手冊解釋這背後的技術?

回答

4

在Indeed.com和其他搜索引擎中使用的技術被稱爲inverted indexing,它是搜索引擎工作方式(例如Google)的核心。您引用的過濾(「優化選項」)稱爲構面。

您可以使用Apache Solr,這是一個使用Lucene構建的完整搜索服務器,可使用其RESTful API輕鬆集成到您的應用程序中。它具有多種功能,如刻面,緩存,縮放,拼寫檢查等等。Netflix,C-Net,AOL等幾個站點也使用它 - 因此具有穩定性,可擴展性和戰鬥性,測試。

如果您想深入挖掘基於分面的過濾工作,請查找位集/位陣列,並在article中進行了描述。

+0

關於使用倒排索引和非規範化文檔存儲的以前的答案很好。我們的下一個技術講座(http://engineering.indeed.com/talks/machine-learning-at-indeed-scaling-decision-trees/)將更多地談論在建築決策的背景下倒排索引的力量機器學習的樹。我們使用這種ML方法進行結果排名。談話結束後,我會在這裏跟進幻燈片和視頻的鏈接。 – youknowjack 2014-02-19 18:37:50

0

你爲什麼認爲他們加載「太快」?他們當然有很好的擴展體系結構,他們確實使用緩存,他們可能會使用一些非規範化的數據存儲來加速一些計算和查詢。

看看谷歌和世界各地的網頁數量 - 你也認爲谷歌工作速度太快?

+1

沒有一原作者說,該網站是太快了。他提到速度很快,並問如何做類似的事情。 – 2011-06-06 02:21:14

+0

-1甚至可以把它解釋爲0,因爲你完全捏造了他說「太快」的事實,這就是你的整個答案所指的。 – OGHaza 2013-11-27 22:53:36

相關問題