2.將數(shù)據(jù) 遷移 tool初始化為ES 數(shù)據(jù) library。數(shù)據(jù) 遷移什么意思?海量數(shù)據(jù)自動駕駛儀背后,彈性搜索海量數(shù)據(jù)應用場景中經(jīng)常會遇到模糊查詢或多條件匹配查詢,數(shù)據(jù)在量小的情況下可以通過簡單的數(shù)據(jù)庫模糊查詢解決,但是對于數(shù)據(jù)量大的情況,數(shù)據(jù)庫模糊查詢會出現(xiàn)性能問題。
: 1主要有三種方法。PutAPIPutAPI可能是將數(shù)據(jù)快速導入HBase表的最直接的方法。但是在導入的時候不建議使用[Bulk 數(shù)據(jù)]!但可以作為一個簡單的數(shù)據(jù) 遷移選項直接編寫代碼進行批量處理,簡單方便可控。2.mapreduceJob推薦使用sqoop,其底層實現(xiàn)是MapReduce,數(shù)據(jù)并行導入,不需要自己開發(fā)代碼,過濾條件可以通過查詢參數(shù)實現(xiàn)。
Spark是一個處理海量 數(shù)據(jù)的快速通用引擎。Spark作為一種大型數(shù)據(jù)處理技術,經(jīng)常被拿來和Hadoop做比較。Hadoop已經(jīng)成為大型數(shù)據(jù)技術事實上的標準,HadoopMapReduce也非常適合大型數(shù)據(jù)集合的批量處理,但是它仍然存在一些缺陷。具體表現(xiàn)為:1。HadoopMapRedue的表達能力有限。所有的計算都需要轉(zhuǎn)化為Map和Reduce兩個操作,這兩個操作并不適用于所有場景,很難描述復雜的數(shù)據(jù)過程。
HadoopMapReduce每一步之間都需要數(shù)據(jù)序列化到磁盤,所以I/O開銷很大,導致交互分析和迭代算法開銷很大,幾乎所有的優(yōu)化和機器學習都是迭代的。所以HadoopMapReduce不適合交互分析和機器學習。3.計算延遲很高。如果要完成更復雜的工作,必須串聯(lián)一系列MapReduce作業(yè),然后按順序執(zhí)行。
3、ElasticSearch 海量 數(shù)據(jù)使用簡述應用場景中經(jīng)常會遇到模糊查詢或者多條件匹配查詢。數(shù)據(jù)金額不大時可以在數(shù)據(jù)庫中通過簡單的模糊查詢解決,但金額巨大時數(shù)據(jù)。在這種情況下,一個解決方案就是根據(jù)查詢內(nèi)容建立倒排索引,借助搜索引擎進行查詢,提高查詢性能。目前廣泛使用的分布式搜索引擎是ElasticSearch。那么如何在項目中使用ES呢?
下面簡單描述一下。Elasticsearch的使用可以簡單的分為兩個階段。數(shù)據(jù)初始化階段,數(shù)據(jù)更新階段。數(shù)據(jù)初始化階段。數(shù)據(jù)常見的初始化方式如下:1。在數(shù)據(jù)庫中手動插入數(shù)據(jù)2.將數(shù)據(jù) 遷移 tool初始化為ES 數(shù)據(jù) library。目前常用的ES同步工具有l(wèi)ogstashinputjdbc和DataX。