盡量Hadoop、Spark和NoSQL數(shù)據(jù)庫(kù)此刻正成長(zhǎng)的如火如荼,但請(qǐng)不要健忘搜索是最原始,最有用的大數(shù)據(jù)技能之一。跟著許多很是棒的開源東西好比Solr,Lucidworks以及Elasticsearch的呈現(xiàn),你可以利用很是強(qiáng)大的要領(lǐng)優(yōu)化I/O以及本性化用戶體驗(yàn),它會(huì)比以錯(cuò)誤竣事的紛繁巨大的新東西要好得多。
Spark缺陷
不久前,一個(gè)客戶問(wèn)我,如何利用spark查遍所有涌入NoSQL數(shù)據(jù)庫(kù)的大批量數(shù)據(jù)。問(wèn)題在于,他們的搜索模式是單一的字符串搜索和向下查詢,這已經(jīng)超出了數(shù)據(jù)庫(kù)的有效本領(lǐng)范疇。他們從存儲(chǔ)中拉取數(shù)據(jù)并在內(nèi)存中理會(huì)。即便AWS上有DAG,但照舊很慢,更不消提昂貴的價(jià)值了。
當(dāng)你在內(nèi)存中處理懲罰意義明晰的數(shù)據(jù)集時(shí),Spark照舊很有輔佐的,不只在于其強(qiáng)大的接收本領(lǐng),更是因?yàn)槠湓趦?nèi)存中的闡明本領(lǐng)和轉(zhuǎn)移到內(nèi)存中的本領(lǐng)一樣強(qiáng)大。我們?nèi)匀恍枰剂看鎯?chǔ)而且要知道如何做才氣到達(dá)我們想要的快速簡(jiǎn)捷的結(jié)果。對(duì)付某些客戶來(lái)說(shuō),數(shù)據(jù)進(jìn)來(lái)之后大概會(huì)拉取出某個(gè)集適用于呆板進(jìn)修,把搜索事情留給搜索引擎完成。
搜索與呆板進(jìn)修
其實(shí),在搜索,呆板進(jìn)修和其他相關(guān)技能之間,不存在明明的邊界。顯然,文本或語(yǔ)言信息往往可以很強(qiáng)烈的反應(yīng)出搜索問(wèn)題,不管是數(shù)值型照舊二進(jìn)制,非文本或語(yǔ)言都可以很自然的表白問(wèn)題地址。在這方面,這些技能是重疊的。在某些方面,這些技能的處理懲罰方法甚至很雷同,好比異常檢測(cè),任何一個(gè)技能都可以有效地辦理該問(wèn)題。
要害的問(wèn)題在于當(dāng)你把部門內(nèi)存作為尺度舉辦檢索時(shí),可否挑選出正確的數(shù)據(jù),而不必欣賞所有數(shù)據(jù)。對(duì)文本或界說(shuō)明晰的數(shù)值型數(shù)據(jù)來(lái)說(shuō)是較量簡(jiǎn)樸的。其次,異常檢測(cè)機(jī)制大概也會(huì)本身舉辦搜索,雖然這種要領(lǐng)也有其范圍性,假如你不知道你需要什么,或不能明晰界說(shuō)法則,搜索顯然就不是符合的東西了。
搜索加大數(shù)據(jù)
在很多環(huán)境中,,利用Spark加搜索可能呆板進(jìn)修的要領(lǐng)都不錯(cuò),之前也有講過(guò)在Hadoop中添加搜索的要領(lǐng),但其實(shí)這也同樣合用于Spark或呆板進(jìn)修。
當(dāng)Spark趨于不變之后,用戶突然意識(shí)到Spark并沒有那么神奇,實(shí)際在內(nèi)存中運(yùn)行時(shí)也存在許多問(wèn)題,數(shù)據(jù)可以舉辦搜索,拉取事情集闡明的速度遠(yuǎn)比利用粗笨的I/O去內(nèi)存中尋找想要的數(shù)據(jù)要快得多。
搜索和上下文
搜索并不只僅是辦理事情集,內(nèi)存或I/O問(wèn)題,大大都大數(shù)據(jù)項(xiàng)目標(biāo)弱點(diǎn)之一是缺少上下文情況,關(guān)于安詳問(wèn)題已經(jīng)講過(guò)了,那用戶體驗(yàn)如何呢?盡量你可以發(fā)明許多用戶數(shù)據(jù),但你如何本性化用戶體驗(yàn)?zāi)?利用你所知道的一切用戶信息,可以提跨越此刻用戶眼前的數(shù)據(jù)質(zhì)量,這大概意味著當(dāng)你向用戶泛起本性化頁(yè)面時(shí),前端的用戶交互和后端的搜索需要利用流闡明搞定。搜索辦理方案作為數(shù)據(jù)架構(gòu)師,工程師,開拓者可能是科學(xué)家,在搜索方案上,你至少需要一到兩個(gè)選擇。我最不喜歡的要領(lǐng)就是,內(nèi)存搞得出格大,然后但愿每次分類都可以利用它,一些供給商好像很是喜歡這種方法。
利用索引和搜索技能可以構(gòu)建更好的事情空間,還可以制止呆板進(jìn)修或闡明以及簡(jiǎn)樸的從存儲(chǔ)中通過(guò)某種尺度選擇數(shù)據(jù)——甚至通過(guò)某些符號(hào),基于數(shù)據(jù)流對(duì)用戶數(shù)據(jù)舉辦本性化。從中可以看出,搜索長(zhǎng)短常不錯(cuò)的選擇,值得一用!