當前位置:
首頁 > 知識 > Redis大數據應用場景

Redis大數據應用場景

當前已經進入大數據時代,大數據技術和產品百花齊放,在各自的應用場景發揮重要作用,Redis做為高性能的鍵值資料庫與這些技術有著千絲萬縷的聯繫,本文將介紹如何將Redis與Hadoop、ELK等技術進行結合。


一、Redis與Hadoop

Hadoop作為大數據時代的分散式計算平台,由於其高可用性、可擴展性、高容錯、低成本等特性,已經是大數據系統的標配,但是Hadoop中HDFS的存儲機制使得它無法面向終端用戶(例如利用用戶的歷史瀏覽記錄為用戶推薦新聞、商品等),所以通常是將離線計算的結果導入到面向用戶的存儲中(例如Redis、HBase等)。

而Hadoop支持自定義OutPutFormat,如果需要自定義的輸出,只需要繼承OutPutFormat,整個流程如下所示,只需要在Reduce端定義RedisOutPutFormat完成映射即可。

Redis大數據應用場景

當然也有一種不太多見的情況,就是Redis作為輸入源,同樣Hadoop提供了自定義的InputFormat。

Redis大數據應用場景

在Redis的選用上,可以根據結果的規模決定使用Redis主從版還是集群版本。

二、Redis與ELK

ELK是ElasticSearch、Logstash、Kibana三個開源工具的組合,由於其處理方式靈活、配置簡單、檢索性能高效、前端界面絢麗等特性,在日誌處理領域被廣泛使用。

它的基本工作流如下:

  • LogStashAgent部署在各個目標機器上按照logstash的語法收集對應的數據,並發送的ElasticSearch上。

  • ElasticSearch負責存儲和索引LogAgent上的數據

  • Kibana可直接與ElasticSearch交互,負責日誌的可視化分析。

但是如果LogStashAgent個數太多或者索引數量較多,直接插入ElasticSearch中會使得其壓力過大,所以在ElasticSearch和LogStash之間通常會設置一個緩衝,通常會選用Redis,而且ELK默認就支持Redis的集成,整個過程只需要修改配置即可完成,整個流程如下所示:

Redis大數據應用場景

作者:carlosfu

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雲棲社區 的精彩文章:

用Excel理解神經網路
阿里雲Redis讀寫分離典型場景:如何輕鬆搭建電商秒殺系統
PostgreSQL 用 CTE語法 + 繼承 實現平滑拆分大表
網站加速新時代 阿里雲CDN推出全站加速服務

TAG:雲棲社區 |