摘要:實(shí)驗(yàn)準(zhǔn)備工作注冊(cè)阿里云用戶,實(shí)名認(rèn)證并綁定支付寶開通數(shù)加服務(wù)開通后付費(fèi)服務(wù)。開通大數(shù)據(jù)開發(fā)套件服務(wù)開通阿里云實(shí)名認(rèn)證賬號(hào)訪問(wèn),開通,選擇按量付費(fèi)進(jìn)行購(gòu)買。
摘要: 最近,經(jīng)常有客戶咨詢?nèi)绾蔚统杀敬罱ǜ咝阅艿暮A繑?shù)據(jù)搜索引擎,比如實(shí)現(xiàn)公眾號(hào)檢索、影訊檢索等等。由于客戶的數(shù)據(jù)在阿里云上,所以希望找到云上解決方案。筆者開始調(diào)研一些云上產(chǎn)品,很多人向我推薦了OpenSearch,所以花了點(diǎn)時(shí)間好好研究了下,用過(guò)之后發(fā)現(xiàn)效果不錯(cuò),自帶分詞、云數(shù)據(jù)庫(kù)同步功能,在研究過(guò)程中也發(fā)現(xiàn)了一些問(wèn)題,分享給大家。
背景
最近,經(jīng)常有客戶咨詢?nèi)绾蔚统杀敬罱ǜ咝阅艿暮A繑?shù)據(jù)搜索引擎,比如實(shí)現(xiàn)公眾號(hào)檢索、影訊檢索等等。由于客戶的數(shù)據(jù)在阿里云上,所以希望找到云上解決方案。筆者開始調(diào)研一些云上產(chǎn)品,很多人向我推薦了OpenSearch,所以花了點(diǎn)時(shí)間好好研究了下,用過(guò)之后發(fā)現(xiàn)效果不錯(cuò),自帶分詞、云數(shù)據(jù)庫(kù)同步功能,在研究過(guò)程中也發(fā)現(xiàn)了一些問(wèn)題,分享給大家。
接下來(lái),我們開始用阿里云MaxCompute(原名ODPS)和OpenSearch來(lái)搭建一個(gè)影訊檢索的搜索引擎Demo,我有大約10GB數(shù)據(jù),服務(wù)搭建只用了15分鐘,數(shù)據(jù)同步建索引大概用1個(gè)小時(shí)。因?yàn)檫x擇彈性計(jì)費(fèi),實(shí)驗(yàn)費(fèi)用大概花了幾十元。
先曬一下搜索效果,支持一些常用分詞語(yǔ)法,而且OpenSearch自帶了豐富的SDK和API,可以很方便的集成到線上業(yè)務(wù)。
實(shí)驗(yàn)架構(gòu)圖
搜索引擎架構(gòu)在OpenSearch之上,是一個(gè)典型的分布式在線實(shí)時(shí)交互查詢架構(gòu),無(wú)單點(diǎn)故障,高伸縮、高可用,免運(yùn)維,低成本。對(duì)大量信息的索引與搜索都可以在近乎實(shí)時(shí)的情況下完成,能夠快速實(shí)時(shí)搜索數(shù)十億的文件以及PB級(jí)的數(shù)據(jù)。
分布式數(shù)據(jù)庫(kù)架構(gòu)在MaxCompute之上,是一種快速、完全托管的TB/PB級(jí)數(shù)據(jù)倉(cāng)庫(kù)解決方案。MaxCompute向用戶提供了完善的數(shù)據(jù)導(dǎo)入方案以及多種經(jīng)典的分布式計(jì)算模型,能夠更快速的解決用戶海量數(shù)據(jù)計(jì)算問(wèn)題,有效降低企業(yè)成本,并保障數(shù)據(jù)安全。
實(shí)驗(yàn)準(zhǔn)備工作
1、注冊(cè)阿里云用戶,實(shí)名認(rèn)證并綁定支付寶;
2、開通數(shù)加服務(wù);
3、開通MaxCompute、OpenSearch 后付費(fèi)服務(wù)。
實(shí)驗(yàn)任務(wù)
1、用MaxCompute導(dǎo)入公開數(shù)據(jù)集;
2、用OpenSearch 創(chuàng)建應(yīng)用,配置數(shù)據(jù)/索引結(jié)構(gòu)、分詞;
3、全量導(dǎo)入數(shù)據(jù),構(gòu)建索引;
4、搜索效果測(cè)試。
第一步:購(gòu)買并開通OpenSearch、MaxCompute、大數(shù)據(jù)開發(fā)套件服務(wù)
1.1 開通Opensearch服務(wù)
訪問(wèn)https://www.aliyun.com/produc...,點(diǎn)擊立即開通,選擇后付費(fèi)(按量付費(fèi))。
1.2 開通MaxCompute&大數(shù)據(jù)開發(fā)套件服務(wù)
1.2.1 開通 MaxCompute
阿里云實(shí)名認(rèn)證賬號(hào)訪問(wèn)https://www.aliyun.com/produc... ,開通 MaxCompute,選擇按量付費(fèi)進(jìn)行購(gòu)買。
1.2.2 創(chuàng)建 MaxCompute project
進(jìn)入數(shù)加管理控制臺(tái),前面開通 MaxCompute 成功頁(yè)面,點(diǎn)擊管理控制臺(tái),或者導(dǎo)航產(chǎn)品->大數(shù)據(jù)(數(shù)加)->MaxCompute 點(diǎn)擊管理控制臺(tái)。
創(chuàng)建項(xiàng)目
進(jìn)入控制臺(tái)頁(yè)面后導(dǎo)航至“大數(shù)據(jù)開發(fā)套件->項(xiàng)目列表“,點(diǎn)擊”創(chuàng)建項(xiàng)目”,如圖所示:
在彈出框中選擇 I/O 后付費(fèi)的付費(fèi)方式,輸入項(xiàng)目名稱:
創(chuàng)建 MaxCompute 表
進(jìn)入大數(shù)據(jù)開發(fā)套件的數(shù)據(jù)開發(fā)頁(yè)面,以開發(fā)者身份進(jìn)入阿里云數(shù)加平臺(tái)>大數(shù)據(jù)開發(fā)套件>管理控制臺(tái),點(diǎn)擊項(xiàng)目列表下對(duì)應(yīng)項(xiàng)目操作欄中的進(jìn)入工作區(qū)。
注意:如果首次使用數(shù)加平臺(tái),需要先注冊(cè)數(shù)加開通AK。
第二步:通過(guò)大數(shù)據(jù)開發(fā)套件導(dǎo)入數(shù)據(jù)集到MaxCompute
進(jìn)入大數(shù)據(jù)開發(fā)套件工作區(qū)后,我們先導(dǎo)入一份測(cè)試數(shù)據(jù)。
數(shù)據(jù)說(shuō)明:筆者這里引用了一份MaxCompute公開數(shù)據(jù)集(正在公測(cè)),地址:https://yq.aliyun.com/article...,目前MaxCompute開放的數(shù)據(jù)類別包括:股票價(jià)格數(shù)據(jù),房產(chǎn)信息,影視及其票房數(shù)據(jù)。所有的數(shù)據(jù)均被存儲(chǔ)在 MaxCompute 產(chǎn)品中的 public_data 項(xiàng)目中。
接下來(lái),我們引用一份影視票房數(shù)據(jù)。
使用非常簡(jiǎn)單,前提條件是開通MaxCompute&大數(shù)據(jù)開發(fā)套件;
在大數(shù)據(jù)開發(fā)套件中,新建腳本,命名opensearch_demo,在窗口執(zhí)行如下語(yǔ)句。
add user ALIYUN$everyone;
執(zhí)行完成后用戶項(xiàng)目空間下的所有成員均可讀取各公開數(shù)據(jù)集合。
驗(yàn)證一下:
select * from public_data.dwd_product_movie_basic_info where movie_name like "%生化危機(jī)%" limit 10;
拷貝一份數(shù)據(jù)到自己的Project項(xiàng)目下,注意:OpenSearch里有主鍵概念,所以我們需要在MaxCompute中建主鍵,這里通過(guò)UUID函數(shù)實(shí)現(xiàn)。
在窗口執(zhí)行如下語(yǔ)句:
create table alian.demo_opensearch_case2 as select uuid() as id,* from public_data.dwd_product_movie_basic_info ;
執(zhí)行成功后,驗(yàn)證一下數(shù)據(jù);
select count(1) from alian.demo_opensearch_case2;
可以看到數(shù)據(jù)集已經(jīng)創(chuàng)建好;
第三步:創(chuàng)建開放搜索應(yīng)用
3.1 進(jìn)入OpenSearch控制臺(tái),點(diǎn)擊“創(chuàng)建應(yīng)用”
3.2 選擇產(chǎn)品版本,筆者開通的是標(biāo)準(zhǔn)版。如果需要多表關(guān)聯(lián)搜索,請(qǐng)開通高級(jí)版,如果是單表查詢,標(biāo)準(zhǔn)版就可以。
3.3 輸入應(yīng)用名稱MaxCompute_OpenSearch_Demo,地域選華東1(杭州),因?yàn)镸axCompute目前只有華東,否則數(shù)據(jù)鏈路不通,點(diǎn)擊下一步。
3.4 選擇“通過(guò)數(shù)據(jù)源方式創(chuàng)建應(yīng)用結(jié)構(gòu)”。可以快速由源表結(jié)構(gòu)創(chuàng)建出初始的應(yīng)用結(jié)構(gòu),節(jié)省手動(dòng)構(gòu)造的工作量,降低出錯(cuò)概率。
3.5 選擇ODPS,剛才創(chuàng)建的表。
選擇剛才創(chuàng)建的ODPS項(xiàng)目及表demo_opensearch_case2
【注意】對(duì)于ODPS表中的STRING類型需要轉(zhuǎn)換為L(zhǎng)ITERAL后建主鍵。
3.6 配置索引、分詞及搜索展示內(nèi)容
選擇movie_name、 director、scriptwriter、area、actors、type、movile_date、movie_language字段做索引,設(shè)置默認(rèn)中文分詞方式。
添加展示字段,設(shè)置搜索結(jié)果內(nèi)容。
3.7 創(chuàng)建完成
第四步:同步數(shù)據(jù)并創(chuàng)建索引
4.1 激活應(yīng)用
選擇配額及QPS,我們用的數(shù)據(jù)集大概8G,所以開通的是10G配額,QPS采用默認(rèn)項(xiàng)。
注意:MaxCompute(原ODPS)的數(shù)據(jù)是壓縮過(guò)的,我們用的數(shù)據(jù)SIZE壓縮后2GB,但實(shí)際是8GB,筆者之前購(gòu)買了3GB的OpenSearch配額,結(jié)果導(dǎo)入失敗。
4.2開始構(gòu)建索引
這里主要就是等等,筆者等了一個(gè)小時(shí)。
可以查看索引構(gòu)建進(jìn)度
第五步:搜索測(cè)試
打開應(yīng)用管理->搜索測(cè)試,輸入任意影片,比如最近剛上映的摔跤 爸爸,然后自動(dòng)匹配出相應(yīng)的影訊信息,完成實(shí)驗(yàn)。
MaxCompute提供的數(shù)據(jù)集很贊,數(shù)據(jù)量多、新鮮度很高。
總結(jié):到這里,我們就完成了整個(gè)實(shí)驗(yàn),OpenSearch+MaxCompute筆者認(rèn)為還是很方便,非常適合數(shù)據(jù)規(guī)模在100GB以上并且不希望高昂的運(yùn)維成本和IT成本的企業(yè)。
原文鏈接
閱讀更多干貨好文,請(qǐng)關(guān)注掃描以下二維碼:
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/8822.html
摘要:實(shí)驗(yàn)準(zhǔn)備工作注冊(cè)阿里云用戶,實(shí)名認(rèn)證并綁定支付寶開通數(shù)加服務(wù)開通后付費(fèi)服務(wù)。開通大數(shù)據(jù)開發(fā)套件服務(wù)開通阿里云實(shí)名認(rèn)證賬號(hào)訪問(wèn),開通,選擇按量付費(fèi)進(jìn)行購(gòu)買。 摘要: 最近,經(jīng)常有客戶咨詢?nèi)绾蔚统杀敬罱ǜ咝阅艿暮A繑?shù)據(jù)搜索引擎,比如實(shí)現(xiàn)公眾號(hào)檢索、影訊檢索等等。由于客戶的數(shù)據(jù)在阿里云上,所以希望找到云上解決方案。筆者開始調(diào)研一些云上產(chǎn)品,很多人向我推薦了OpenSearch,所以花了點(diǎn)時(shí)間...
摘要:今天我們來(lái)介紹一下基于阿里云表格存儲(chǔ),以及相關(guān)的大數(shù)據(jù)產(chǎn)品來(lái)采集與分析數(shù)據(jù)的方案。我們嘗試一種基于和阿里云其他大數(shù)據(jù)產(chǎn)品的新方案,我們先看架構(gòu)圖圖中關(guān)鍵路徑分析頁(yè)等客戶端先通過(guò)埋點(diǎn)系統(tǒng)收集數(shù)據(jù),然后通過(guò)表格存儲(chǔ)的將數(shù)據(jù)寫入的原始數(shù)據(jù)表。 摘要: 摘要 在互聯(lián)網(wǎng)高度發(fā)達(dá)的今天,ipad、手機(jī)等智能終端設(shè)備隨處可見(jiàn),運(yùn)行在其中的APP、網(wǎng)站也非常多,如何采集終端數(shù)據(jù)進(jìn)行分析,提升軟件的品質(zhì)...
摘要:更新日志更新完成靜態(tài)頁(yè)面原型修復(fù)使用的正確姿勢(shì)更新添加靜態(tài)頁(yè)面更新添加使用方法請(qǐng)戳我主要作用就是在你開發(fā)環(huán)節(jié)在后端同學(xué)還未開發(fā)完成的情況下,提供一個(gè)。 底下評(píng)論說(shuō)是標(biāo)題黨,或者是光扔個(gè)github地址上來(lái)的同學(xué)我就不說(shuō)什么了。你們有看看倉(cāng)庫(kù)的提交記錄么?我還沒(méi)有吃撐到開個(gè)倉(cāng)庫(kù)去騙star.我的出發(fā)點(diǎn)就是每天更新一部分代碼,教大家用我所提到的技術(shù)棧搭建一個(gè)blog,我的出發(fā)點(diǎn)就是這么簡(jiǎn)單...
閱讀 3574·2021-10-15 09:43
閱讀 3495·2021-09-02 15:21
閱讀 2205·2021-08-11 11:23
閱讀 3246·2019-08-30 15:54
閱讀 1933·2019-08-30 13:54
閱讀 3208·2019-08-29 18:35
閱讀 676·2019-08-29 16:58
閱讀 1748·2019-08-29 12:49