日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

用mysql随机查询表a10条数据_ES简介

發(fā)布時(shí)間:2025/4/5 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用mysql随机查询表a10条数据_ES简介 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、簡(jiǎn)介

ElasticSearch是一個(gè)基于Lucene的搜索服務(wù)器。它提供了一個(gè)分布式多用戶(hù)能力的全文搜索引擎,基于RESTful web接口操作ES,也可以利用Java API。Elasticsearch是用Java開(kāi)發(fā)的,并作為Apache許可條款下的開(kāi)放源碼發(fā)布,是當(dāng)前流行的企業(yè)級(jí)搜索引擎。設(shè)計(jì)用于云計(jì)算中,能夠達(dá)到實(shí)時(shí)搜索,穩(wěn)定,可靠,快速,安裝使用方便。

我們建立一個(gè)網(wǎng)站或應(yīng)用程序,并要添加搜索功能,但是想要完成搜索工作的創(chuàng)建是非常困難的。我們希望搜索解決方案要運(yùn)行速度快,我們希望能有一個(gè)零配置和一個(gè)完全免費(fèi)的搜索模式,我們希望能夠簡(jiǎn)單地使用JSON通過(guò)HTTP來(lái)索引數(shù)據(jù),我們希望我們的搜索服務(wù)器始終可用,我們希望能夠從一臺(tái)開(kāi)始并擴(kuò)展到數(shù)百臺(tái),我們要實(shí)時(shí)搜索,我們要簡(jiǎn)單的多租戶(hù),我們希望建立一個(gè)云的解決方案。因此我們利用Elasticsearch來(lái)解決所有這些問(wèn)題及可能出現(xiàn)的更多其它問(wèn)題。

設(shè)計(jì)用途:用于分布式全文檢索

技術(shù)支持:通過(guò)HTTP使用JSON進(jìn)行數(shù)據(jù)索引

二、產(chǎn)生

1、大規(guī)模數(shù)據(jù)如何檢索?

如:當(dāng)系統(tǒng)數(shù)據(jù)量上了10億、100億條的時(shí)候,我們?cè)谧鱿到y(tǒng)架構(gòu)的時(shí)候通常會(huì)從以下角度去考慮問(wèn)題:

1)用什么數(shù)據(jù)庫(kù) ;(mysql、sybase、oracle、mongodb、hbase)

2)如何解決單點(diǎn)故障;(lvs、F5、A10、Zookeep、MQ)

3)如何保證數(shù)據(jù)安全性;(熱備、冷備、異地多活)

4)如何解決檢索難題;(數(shù)據(jù)庫(kù)代理中間件:mysql-proxy、Cobar、MaxScale)

5)如何解決統(tǒng)計(jì)分析問(wèn)題;(離線(xiàn)、近實(shí)時(shí))

2、傳統(tǒng)數(shù)據(jù)庫(kù)的應(yīng)對(duì)解決方案

對(duì)于關(guān)系型數(shù)據(jù),我們通常采用以下或類(lèi)似架構(gòu)去解決查詢(xún)瓶頸和寫(xiě)入瓶頸:

1)通過(guò)主從備份解決數(shù)據(jù)安全性問(wèn)題;

2)通過(guò)數(shù)據(jù)庫(kù)代理中間件心跳監(jiān)測(cè),解決單點(diǎn)故障問(wèn)題;

3)通過(guò)代理中間件將查詢(xún)語(yǔ)句分發(fā)到各個(gè)slave節(jié)點(diǎn)進(jìn)行查詢(xún),并匯總結(jié)果

image.png

3、非關(guān)系型數(shù)據(jù)庫(kù)的解決方案

對(duì)于Nosql數(shù)據(jù)庫(kù),以mongodb為例,其它原理類(lèi)似:

1)通過(guò)副本備份保證數(shù)據(jù)安全性;

2)通過(guò)節(jié)點(diǎn)競(jìng)選機(jī)制解決單點(diǎn)問(wèn)題;

3)先從配置庫(kù)檢索分片信息,然后將請(qǐng)求分發(fā)到各個(gè)節(jié)點(diǎn),最后由路由節(jié)點(diǎn)合并匯總結(jié)果

三、ES解決方案

為解決以上問(wèn)題,從源頭著手分析,通常會(huì)從以下方式來(lái)尋找方法:

1、存儲(chǔ)數(shù)據(jù)時(shí)按有序存儲(chǔ);

2、將數(shù)據(jù)和索引分離;

3、壓縮數(shù)據(jù);

這就引出了Elasticsearch。

ES定義

ES=elaticsearch簡(jiǎn)寫(xiě), Elasticsearch是一個(gè)開(kāi)源的高擴(kuò)展的分布式全文檢索引擎,它可以近乎實(shí)時(shí)的存儲(chǔ)、檢索數(shù)據(jù);本身擴(kuò)展性很好,可以擴(kuò)展到上百臺(tái)服務(wù)器,處理PB級(jí)別的數(shù)據(jù)。

Elasticsearch也使用Java開(kāi)發(fā)并使用Lucene作為其核心來(lái)實(shí)現(xiàn)所有索引和搜索的功能,但是它的目的是通過(guò)簡(jiǎn)單的RESTful API來(lái)隱藏Lucene的復(fù)雜性,從而讓全文搜索變得簡(jiǎn)單。

Lucene與ES關(guān)系

1)Lucene只是一個(gè)庫(kù)。想要使用它,你必須使用Java來(lái)作為開(kāi)發(fā)語(yǔ)言并將其直接集成到你的應(yīng)用中,更糟糕的是,Lucene非常復(fù)雜,你需要深入了解檢索的相關(guān)知識(shí)來(lái)理解它是如何工作的。

2)Elasticsearch也使用Java開(kāi)發(fā)并使用Lucene作為其核心來(lái)實(shí)現(xiàn)所有索引和搜索的功能,但是它的目的是通過(guò)簡(jiǎn)單的RESTful API來(lái)隱藏Lucene的復(fù)雜性,從而讓全文搜索變得簡(jiǎn)單。

ES主要解決問(wèn)題:

1)檢索相關(guān)數(shù)據(jù);

2)返回統(tǒng)計(jì)結(jié)果;

3)速度要快。

ES數(shù)據(jù)架構(gòu)的主要概念

image.png

(1)關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)(DataBase),等價(jià)于ES中的索引(Index)

(2)一個(gè)數(shù)據(jù)庫(kù)下面有N張表(Table),等價(jià)于1個(gè)索引Index下面有N多類(lèi)型(Type),

(3)一個(gè)數(shù)據(jù)庫(kù)表(Table)下的數(shù)據(jù)由多行(ROW)多列(column,屬性)組成,等價(jià)于1個(gè)Type由多個(gè)文檔(Document)和多Field組成。

(4)在一個(gè)關(guān)系型數(shù)據(jù)庫(kù)里面,schema定義了表、每個(gè)表的字段,還有表和字段之間的關(guān)系。 與之對(duì)應(yīng)的,在ES中:Mapping定義索引下的Type的字段處理規(guī)則,即索引如何建立、索引類(lèi)型、是否保存原始索引JSON文檔、是否壓縮原始JSON文檔、是否需要分詞處理、如何進(jìn)行分詞處理等。

(5)在數(shù)據(jù)庫(kù)中的增insert、刪delete、改update、查search操作等價(jià)于ES中的增PUT/POST、刪Delete、改_update、查GET.

ES特點(diǎn)和優(yōu)勢(shì)

1)分布式實(shí)時(shí)文件存儲(chǔ),可將每一個(gè)字段存入索引,使其可以被檢索到。

2)實(shí)時(shí)分析的分布式搜索引擎。

分布式:索引分拆成多個(gè)分片,每個(gè)分片可有零個(gè)或多個(gè)副本。集群中的每個(gè)數(shù)據(jù)節(jié)點(diǎn)都可承載一個(gè)或多個(gè)分片,并且協(xié)調(diào)和處理各種操作;

負(fù)載再平衡和路由在大多數(shù)情況下自動(dòng)完成。

3)可以擴(kuò)展到上百臺(tái)服務(wù)器,處理PB級(jí)別的結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)。也可以運(yùn)行在單臺(tái)PC上

4)支持插件機(jī)制,分詞插件、同步插件、Hadoop插件、可視化插件等。

對(duì)比MYSQL

1、如果業(yè)務(wù)數(shù)據(jù)為結(jié)構(gòu)化數(shù)據(jù),同時(shí)不需要特別關(guān)注排名和智能分詞模糊匹配查詢(xún)等特性,則建議采用關(guān)系型數(shù)據(jù)庫(kù)如MySQL來(lái)作為數(shù)據(jù)存儲(chǔ)介質(zhì)并使用配套搜索引擎

2、如果業(yè)務(wù)數(shù)據(jù)為非結(jié)構(gòu)化數(shù)據(jù),同時(shí)更關(guān)注排名和需要智能分詞模糊匹配的特性,則建議采用非關(guān)系型數(shù)據(jù)庫(kù)如ES作為數(shù)據(jù)存儲(chǔ)介質(zhì)并使用配套搜索引擎。

3、MYSQL支持事務(wù)和訪(fǎng)問(wèn)權(quán)限控制,ES不支持事務(wù)和訪(fǎng)問(wèn)權(quán)限控制

4、ES在全文搜索、分詞、常規(guī)搜索、聚合統(tǒng)計(jì)方面性能高,ES團(tuán)隊(duì)不建議完全采用ES作為數(shù)據(jù)庫(kù),而是作為一個(gè)分布式搜索服務(wù)

總結(jié)

以上是生活随笔為你收集整理的用mysql随机查询表a10条数据_ES简介的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。