欧美一区二区三区四区视频|久久久久久88色偷偷|国产精品视频一区二区三区w|国产综合色在线视频|久久久久久综合七次郎|好硬好紧好湿进去了好爽

合肥做網(wǎng)站,選擇瘋狗科技,專(zhuān)業(yè)、敬業(yè)的合肥網(wǎng)絡(luò )公司
首頁(yè) > 網(wǎng)絡(luò )雜談 > 詳情

如何低成本搭建高性能分布式搜索引擎?

2017-08-03 17:19:14   來(lái)源:云棲社區   瀏覽:  次
最近,經(jīng)常有客戶(hù)咨詢(xún)如何低成本搭建高性能的海量數據搜索引擎,比如實(shí)現公眾號檢索、影訊檢索等等。由于客戶(hù)的數據在阿里云上,所以希望找到云上解決方案。

背景

最近,經(jīng)常有客戶(hù)咨詢(xún)如何低成本搭建高性能的海量數據搜索引擎,比如實(shí)現公眾號檢索、影訊檢索等等。由于客戶(hù)的數據在阿里云上,所以希望找到云上解決方案。筆者開(kāi)始調研一些云上產(chǎn)品,很多人向我推薦了OpenSearch,所以花了點(diǎn)時(shí)間好好研究了下,用過(guò)之后發(fā)現效果不錯,自帶分詞、云數據庫同步功能,在研究過(guò)程中也發(fā)現了一些問(wèn)題,分享給大家。

接下來(lái),我們開(kāi)始用阿里云MaxCompute(原名ODPS)和OpenSearch來(lái)搭建一個(gè)影訊檢索的搜索引擎Demo,我有大約10GB數據,服務(wù)搭建只用了15分鐘,數據同步建索引大概用1個(gè)小時(shí)。因為選擇彈性計費,實(shí)驗費用大概花了幾十元。

先曬一下搜索效果,支持一些常用分詞語(yǔ)法,而且OpenSearch自帶了豐富的SDK和API,可以很方便的集成到線(xiàn)上業(yè)務(wù)。

如何低成本搭建高性能分布式搜索引擎?

如何低成本搭建高性能分布式搜索引擎?

如何低成本搭建高性能分布式搜索引擎?

實(shí)驗架構圖

如何低成本搭建高性能分布式搜索引擎?

搜索引擎架構在OpenSearch之上,是一個(gè)典型的分布式在線(xiàn)實(shí)時(shí)交互查詢(xún)架構,無(wú)單點(diǎn)故障,高伸縮、高可用,免運維,低成本。對大量信息的索引與搜索都可以在近乎實(shí)時(shí)的情況下完成,能夠快速實(shí)時(shí)搜索數十億的文件以及PB級的數據。

分布式數據庫架構在MaxCompute之上,是一種快速、完全托管的TB/PB級數據倉庫解決方案。MaxCompute向用戶(hù)提供了完善的數據導入方案以及多種經(jīng)典的分布式計算模型,能夠更快速的解決用戶(hù)海量數據計算問(wèn)題,有效降低企業(yè)成本,并保障數據安全。

實(shí)驗準備工作

1、注冊阿里云用戶(hù),實(shí)名認證并綁定支付寶;

2、開(kāi)通數加服務(wù);

3、開(kāi)通MaxCompute、OpenSearch 后付費服務(wù)。

實(shí)驗任務(wù)

1、用MaxCompute導入公開(kāi)數據集;

2、用OpenSearch 創(chuàng )建應用,配置數據/索引結構、分詞;

3、全量導入數據,構建索引;

4、搜索效果測試。

第一步:購買(mǎi)并開(kāi)通OpenSearch、MaxCompute、大數據開(kāi)發(fā)套件服務(wù)

1.1 開(kāi)通Opensearch服務(wù)

訪(fǎng)問(wèn)https://www.aliyun.com/product/opensearch,點(diǎn)擊立即開(kāi)通,選擇后付費(按量付費)。

如何低成本搭建高性能分布式搜索引擎?

如何低成本搭建高性能分布式搜索引擎?

1.2 開(kāi)通MaxCompute&大數據開(kāi)發(fā)套件服務(wù)

1.2.1 開(kāi)通 MaxCompute

阿里云實(shí)名認證賬號訪(fǎng)問(wèn)https://www.aliyun.com/product/odps ,開(kāi)通 MaxCompute,選擇按量付費進(jìn)行購買(mǎi)。

如何低成本搭建高性能分布式搜索引擎?

如何低成本搭建高性能分布式搜索引擎?

如何低成本搭建高性能分布式搜索引擎?

1.2.2創(chuàng )建 MaxCompute project

進(jìn)入數加管理控制臺,前面開(kāi)通 MaxCompute 成功頁(yè)面,點(diǎn)擊管理控制臺,或者導航產(chǎn)品->大數據(數加)->MaxCompute 點(diǎn)擊管理控制臺。

如何低成本搭建高性能分布式搜索引擎?

創(chuàng )建項目

進(jìn)入控制臺頁(yè)面后導航至“大數據開(kāi)發(fā)套件->項目列表“,點(diǎn)擊”創(chuàng )建項目”,如圖所示:

如何低成本搭建高性能分布式搜索引擎?

在彈出框中選擇 I/O 后付費的付費方式,輸入項目名稱(chēng):

如何低成本搭建高性能分布式搜索引擎?

創(chuàng )建 MaxCompute 表

進(jìn)入大數據開(kāi)發(fā)套件的數據開(kāi)發(fā)頁(yè)面,以開(kāi)發(fā)者身份進(jìn)入阿里云數加平臺>大數據開(kāi)發(fā)套件>管理控制臺,點(diǎn)擊項目列表下對應項目操作欄中的進(jìn)入工作區。

注意:如果首次使用數加平臺,需要先注冊數加開(kāi)通AK。

第二步:通過(guò)大數據開(kāi)發(fā)套件導入數據集到MaxCompute

進(jìn)入大數據開(kāi)發(fā)套件工作區后,我們先導入一份測試數據。

數據說(shuō)明:筆者這里引用了一份MaxCompute公開(kāi)數據集(正在公測),地址:https://yq.aliyun.com/articles/89763,目前MaxCompute開(kāi)放的數據類(lèi)別包括:股票價(jià)格數據,房產(chǎn)信息,影視及其票房數據。所有的數據均被存儲在 MaxCompute 產(chǎn)品中的 public_data 項目中。

接下來(lái),我們引用一份影視票房數據。

如何低成本搭建高性能分布式搜索引擎?

使用非常簡(jiǎn)單,前提條件是開(kāi)通MaxCompute&大數據開(kāi)發(fā)套件;

在大數據開(kāi)發(fā)套件中,新建腳本,命名opensearch_demo,在窗口執行如下語(yǔ)句。


add user ALIYUN$everyone;

執行完成后用戶(hù)項目空間下的所有成員均可讀取各公開(kāi)數據集合。

驗證一下:


select * from public_data.dwd_product_movie_basic_info wheremovie_name like '%生化危機%' limit 10;

如何低成本搭建高性能分布式搜索引擎?

拷貝一份數據到自己的Project項目下,注意:OpenSearch里有主鍵概念,所以我們需要在MaxCompute中建主鍵,這里通過(guò)UUID函數實(shí)現。

在窗口執行如下語(yǔ)句:


create table alian.demo_opensearch_case2 as

如何低成本搭建高性能分布式搜索引擎?

執行成功后,驗證一下數據;


select count(1) from alian.demo_opensearch_case2;

可以看到數據集已經(jīng)創(chuàng )建好;

如何低成本搭建高性能分布式搜索引擎?

第三步:創(chuàng )建開(kāi)放搜索應用

3.1 進(jìn)入OpenSearch控制臺,點(diǎn)擊“創(chuàng )建應用”

如何低成本搭建高性能分布式搜索引擎?

3.2 選擇產(chǎn)品版本,筆者開(kāi)通的是標準版。如果需要多表關(guān)聯(lián)搜索,請開(kāi)通高級版,如果是單表查詢(xún),標準版就可以。

如何低成本搭建高性能分布式搜索引擎?

3.3 輸入應用名稱(chēng)MaxCompute_OpenSearch_Demo,地域選華東1(杭州),因為MaxCompute目前只有華東,否則數據鏈路不通,點(diǎn)擊下一步。

如何低成本搭建高性能分布式搜索引擎?

3.4 選擇“通過(guò)數據源方式創(chuàng )建應用結構”??梢钥焖儆稍幢斫Y構創(chuàng )建出初始的應用結構,節省手動(dòng)構造的工作量,降低出錯概率。

如何低成本搭建高性能分布式搜索引擎?

3.5 選擇ODPS,剛才創(chuàng )建的表。

如何低成本搭建高性能分布式搜索引擎?

選擇剛才創(chuàng )建的ODPS項目及表demo_opensearch_case2

如何低成本搭建高性能分布式搜索引擎?

【注意】對于ODPS表中的STRING類(lèi)型需要轉換為L(cháng)ITERAL后建主鍵。

如何低成本搭建高性能分布式搜索引擎?

3.6 配置索引、分詞及搜索展示內容

選擇movie_name、 director、scriptwriter、area、actors、type、movile_date、movie_language字段做索引,設置默認中文分詞方式。

如何低成本搭建高性能分布式搜索引擎?

添加展示字段,設置搜索結果內容。

如何低成本搭建高性能分布式搜索引擎?

3.7 創(chuàng )建完成

如何低成本搭建高性能分布式搜索引擎?

如何低成本搭建高性能分布式搜索引擎?

第四步:同步數據并創(chuàng )建索引

4.1 激活應用

選擇配額及QPS,我們用的數據集大概8G,所以開(kāi)通的是10G配額,QPS采用默認項。

注意:MaxCompute(原ODPS)的數據是壓縮過(guò)的,我們用的數據SIZE壓縮后2GB,但實(shí)際是8GB,筆者之前購買(mǎi)了3GB的OpenSearch配額,結果導入失敗。

如何低成本搭建高性能分布式搜索引擎?

4.2開(kāi)始構建索引

這里主要就是等等,筆者等了一個(gè)小時(shí)。

如何低成本搭建高性能分布式搜索引擎?

可以查看索引構建進(jìn)度

如何低成本搭建高性能分布式搜索引擎?

第五步:搜索測試

打開(kāi)應用管理->搜索測試,輸入任意影片,比如最近剛上映的摔跤 爸爸,然后自動(dòng)匹配出相應的影訊信息,完成實(shí)驗。

MaxCompute提供的數據集很贊,數據量多、新鮮度很高。

如何低成本搭建高性能分布式搜索引擎?

總結:到這里,我們就完成了整個(gè)實(shí)驗,OpenSearch+MaxCompute筆者認為還是很方便,非常適合數據規模在100GB以上并且不希望高昂的運維成本和IT成本的企業(yè);

欧美一区二区三区四区视频|久久久久久88色偷偷|国产精品视频一区二区三区w|国产综合色在线视频|久久久久久综合七次郎|好硬好紧好湿进去了好爽