999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

開源搜索引擎Elasticsearch和Solr對比和分析

2018-04-24 12:17:26魏濤孟方園袁平殷鋒
現代計算機 2018年6期
關鍵詞:搜索引擎界面

魏濤,孟方園,袁平,殷鋒

(1.四川大學計算機學院,成都 610065;2.北京衛星導航中心,北京 100094;3.重慶第二師范學院,重慶 400067;4.西南民族大學校園網絡管理中心,成都 610064)

0 引言

在信息化高速發展的今天,大量的智能設備以及人類的活動通過互聯網進行計算和通信,從而在互聯網上產生了大量的信息,在這些海量的信息中既包含著對我們有用的信息,同時也充斥的大量的無用信息,用傳統的工具如關系型數據庫對這些信息進行存儲,檢索和分析顯然力不從心[1]。因此,有大量的工具被開發出來,從而為檢索和處理海量的數據提供了有效的解決辦法[2]。其中,作為同為基于全文搜索框架Apache Lucene的Elasticsearch和Solr,其主要功能相似,但在配置部署,使用及檢索性能方面存在一定的區別,本文通過對二者進行對比和分析,為項目成員對這二者搜索引擎的選擇提供參考。

1 簡介

Elasticsearch是一個分布式、可擴展、實時的搜索與數據分析引擎。Elasticsearch不僅可以全文搜索,同時提供結構化搜索、數據分析、復雜的語言處理、地理位置和對象間關聯關系等[3]。通過REST和schemafree的JSON文檔提供分布式、多租戶全文搜索。并且官方提供 Java,Groovy,PHP,Ruby,Perl,Python,.NET和JavaScript客戶端。許多互聯網公司使用Elastic?search作為其內部搜索引擎,如Wikipedia使用Elastic?search提供帶有高亮片段的全文搜索。衛報使用Elas?ticsearch將網絡社交數據結合到訪客日志中,實時的給它的編輯們提供公眾對于新文章的反饋。Stack Over?flow將地理位置查詢融入全文檢索中去,并且使用more-like-this接口去查找相關的問題與答案。GitHub使用Elasticsearch對1300億行代碼進行查詢。

Solr支持許多世界上最大的互聯網站點的搜索和導航功能。Solr它是一種開放源碼的、基于Lucene Java的搜索服務器,它易于安裝和配置,具有高可靠性、可擴展性和容錯性,可提供分布式索引,復制和負載平衡查詢,自動故障轉移和恢復,集中式配置等功能[4]。而且附帶了一個基于HTTP的管理界面。Solr提供分布式索引、分片、副本集、負載均衡和自動故障轉移和恢復功能。不少知名企業,如AT&T,eBay,Instagram和Netfilx均使用Solr。

2 功能比較

2.1 Elastics earch

Elasticsearch是一個強大的搜索引擎,基于Apache Lucene的全文搜索引擎框架開發,具有近實時、高性能、分布式和零配置的優點。Elasticsearch有以下幾個關鍵的概念:

●節點(Node):節點是一個Elasticsearch的實例,一般一臺主機上部署一個節點

●集群(Cluster):集群由若干節點組成,和任意節點的通信等價于和集群的通信

●分片(Shard):一個索引會分成多個分片存儲,分片數量在索引建立后不可更改

●副本(Replica):副本是分片的一個拷貝,目的在于提高系統的容錯性和搜索的效率

●索引(Index):類似數據庫的庫

●類型(Type):類似數據庫的表

●文檔(Document):類似數據庫的行,包含一個或多個Field

●字段(Field):搜索的最小單元,可通過Mapping定義不同的屬性(比如類型,可否被搜索等)

Elasticsearch的部署屬于一鍵式的,只需解壓從官網下載的壓縮包并運行bin目錄下的elasticsearch程序即可(前提是本機已配置好JDK),一旦在多臺主機上啟動擁有同一個cluster.name的Elasticsearch實例,它們會自動組成一個集群,無需其他操作,自動實現分布式集群。

Elasticsearch通過對JSON格式的文檔進行索引,不僅支持并自動識別string、num、bool等常規字段,同時對于特殊字段如地理位置類型([lat,lon])和 ip(192.168.0.1)類型的字段提供特殊支持,只需在索引前手動指定相應字段為geo或者ip字段。在索引方面Elasticsearch提供了批量索引的工具,大大提高了索引及更新效率,在數據檢索方面不僅可以提供全文索引,還提供類似關系型數據庫的結構化檢索(Structured Query DSL)。

Elasticsearch的分布式模式默認情況下分片數量設置為5,并配置有1份復制項,在組成集群的情況下,分片會按照一定的算法存儲在集群的各臺主機上,以確保其中一臺主機意外下線不會影響整個集群的正常工作,如下圖所示,由Dremqueen,Fin,Tarot為3個節點組成的Elasticsearch集群,以索引test100w為例,索引分成了5個分片,并且每個分片都有一個冗余分片。

圖1 Elasticsearch分片存儲情況

2.2 Solr

Solr是一種開放源碼的、基于Lucene Java的搜索引擎,易于嵌入到Web應用中。Solr提供了全文搜索、聚類搜索、高亮顯示等功能,支持多種輸出格式(XML/XSLT和JSON等格式),且自帶一個基于HTTP的管理界面。

Solr需使用Tomcat運行,或使用內置的Jetty容器直接運行;使用Solr需新建core(類似實例),core內可直接插入文檔,不同的core之間沒有任何關系和影響;每個core有單獨的存儲路徑、配置文件;文檔有批量導入的和使用HTTP新增的方式,批量導入可直接用post請求將文件發送至Solr,建立索引,HTTP新增可設置若干個文檔提交一次;索引文件與Lucene的相同,可使用Luke等工具打開和查看。Solr功能特點如下:

Solr索引的實現是用POST方法向Solr服務器發送一個描述Field及其內容的XML文檔,Solr根據XML文檔添加、刪除、更新索引。因此Solr不支持對基本字段的自動識別,且嵌套結構的JSON文檔無法直接在Solr中進行索引,需將JSON文檔扁平化(成為只有1級的文檔)后才能進行索引操作。Solr搜索只需要發送HTTPGET請求,然后對Solr返回XML、JSON等格式的查詢結果進行解析,組織頁面布局。Solr不提供構建UI的功能,Solr提供了一個管理界面,通過管理界面可以查詢Solr的配置和運行情況。

Solr自帶的示例分布式啟動命令為“solr start-e cloud-noprompt”,啟動后會自動在本機創建2個shard的分布式架構Solr,管理界面如下圖:

圖2 Solr分布式集群管理界面

3 性能測試

3.1 環境及數據準備

用來進行測試的主機配置如下:

CPU:Intel Xeon E7-4807,1.87GHz

MEM:8GB

DISK:HDD 40GB

測試工具與數據如下:

LoadRunner,使用兩臺Windows7臺式機作為運行Vuser虛擬用戶的壓力測試機;

共有100W條文檔,其中包含3種格式,數量分別為40W、30W、30W。文檔的數字、時間部分為隨機生成,文本部分為從大量電子書中隨機選取,標簽部分為從數百個詞語中隨機選取;

例如,在教學《有理數》(北師大版數學七年級上冊)這一課時,教師就可以制作一節相關的微課,詳細講解如何通過有理數去探究勾股定理,不僅讓學生對有理數的各種知識有著充分的了解,還可以學習到未來需要學習的知識。通過這樣的方式進行教學,可以使課堂教學內容有效擴展,為學生未來的學習打下堅實的基礎,切實提升數學教學質量,提升學生的學習效率。

關鍵詞詞庫,包含50W詞語,其中中文詞語約40W個、數字10W個、英文單詞約1.5W個;

地理搜索條件、時間段范圍、數值范圍各30個,其中地理搜索包括20個圓形(按距離搜索)和10個多邊形。

測試項如表1所示:

表1

3.2 性能對比

(1)索引建立和更新速度對比

表2

由上表可以看出Elasticsearch的索引建立和更新速度要優于Solr。

(2)檢索速度對比

圖3 關鍵字搜索響應速度對比

圖4 模糊搜索響應速度對比

4 結語

本文通過簡要介紹開源搜索引擎Elasticsearch和Solr,對二者所支持的索引和檢索方法進行了闡述,并通過對其索引和檢索性能進行多方面比較,為項目開發人員依據自身項目的需要選擇合適的搜索引擎提供了依據。

參考文獻:

[1]F.Ohhorst.Turning Big Data Into BigMoney.Big Data Analytics,,New Jersey,AB.D.,2013.

[2]S.Ramamorthy,S.Rajalakshmi.Optimize d Data Analysis in Cloud using BigData Analytics Techniques.4th ICCCNT Conferense,Tiruchengode,India,2013.

[3]https://www.elastic.co/guide/en/elasticsearch/reference/current/_basic_concepts.html

[4]http://lucene.apache.org/solr/guide/7_1/solr-tutorial.html.

猜你喜歡
搜索引擎界面
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
空間界面
金秋(2017年4期)2017-06-07 08:22:16
電子顯微打開材料界面世界之門
人機交互界面發展趨勢研究
網絡搜索引擎亟待規范
中國衛生(2015年12期)2015-11-10 05:13:38
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
Nutch搜索引擎在網絡輿情管控中的應用
警察技術(2015年3期)2015-02-27 15:37:09
基于Nutch的醫療搜索引擎的研究與開發
廣告主與搜索引擎的雙向博弈分析
主站蜘蛛池模板: 日韩av电影一区二区三区四区| 日本午夜在线视频| 亚洲欧美日韩成人高清在线一区| 国产精品自在拍首页视频8| 久久久久国产一级毛片高清板| 无码精油按摩潮喷在线播放| 午夜视频免费试看| 色综合狠狠操| 夜精品a一区二区三区| 精品三级网站| 久久特级毛片| 国产青榴视频| 最新国产麻豆aⅴ精品无| 亚洲色大成网站www国产| 全部免费特黄特色大片视频| 亚洲天堂久久新| 亚洲香蕉久久| 国产成在线观看免费视频| 久久这里只精品国产99热8| 亚洲精品无码日韩国产不卡| 日本a级免费| 国产精彩视频在线观看| 99精品伊人久久久大香线蕉| 国产情侣一区二区三区| 色国产视频| 狠狠v日韩v欧美v| 亚洲天堂视频在线观看免费| 亚洲综合一区国产精品| 97久久免费视频| 国产成人a毛片在线| 中文国产成人精品久久| 毛片久久网站小视频| 成色7777精品在线| 国内精品九九久久久精品| 丁香六月综合网| 国产粉嫩粉嫩的18在线播放91| 欧美亚洲国产精品第一页| 一本大道无码日韩精品影视| 中文字幕 91| 这里只有精品在线| 国产一级视频久久| 青青青国产免费线在| 国产精品大尺度尺度视频| 欧美日韩激情在线| 91区国产福利在线观看午夜| 青青极品在线| 日韩黄色大片免费看| 欧美日韩国产在线播放| 日韩欧美中文| 国产一区二区三区在线无码| 国产亚洲男人的天堂在线观看| 精品少妇人妻无码久久| 亚洲色图狠狠干| av一区二区三区高清久久| 日本久久网站| 欧美激情第一欧美在线| 精品色综合| 亚洲精品自在线拍| 日韩国产高清无码| 亚洲国产成人综合精品2020 | 亚洲AV成人一区二区三区AV| 美美女高清毛片视频免费观看| 日韩高清无码免费| 91色在线观看| 国产在线观看一区精品| 亚洲综合天堂网| 国产凹凸一区在线观看视频| 中文字幕色站| 看你懂的巨臀中文字幕一区二区| 国产成人永久免费视频| 国产一级视频久久| 91久久天天躁狠狠躁夜夜| 亚洲二区视频| 国产在线视频欧美亚综合| 国产素人在线| 婷婷六月激情综合一区| 国产成人精品一区二区三区| 2021天堂在线亚洲精品专区| 国产又粗又猛又爽视频| 国产高潮流白浆视频| 亚洲第一页在线观看| 亚洲视屏在线观看|