日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

基于 Flink、ClickHouse 的舆情分析系统:系统架构设计说明书

發布時間:2024/8/1 windows 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于 Flink、ClickHouse 的舆情分析系统:系统架构设计说明书 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

      • 1. 引言
        • 1.1 編寫目的
        • 1.2 項目信息
        • 1.3 項目背景
        • 1.4 閱讀對象
        • 1.5 術語與縮略語
        • 1.6 參考資料
      • 2. 范圍
        • 2.1 軟件名稱
        • 2.2 軟件功能
      • 3. 總體設計
        • 3.1 架構設計目標和約束
          • 3.1.1 架構設計目標
          • 3.1.2 開發環境
        • 3.2 系統架構設計
        • 3.3 系統流程
        • 3.4 系統模塊劃分與模塊接口
          • 3.4.1 模塊描述
          • 3.4.2 模塊接口設計
      • 4. 運行設計
        • 4.1 子系統設計
          • 4.1.1 分析子系統
          • 4.1.2 后臺子系統
          • 4.1.3 前端子系統
          • 4.1.4 爬蟲子系統
        • 4.2 數據存儲
          • 4.2.1 數據存儲軟件
          • 4.2.2 數據存儲模型
      • 5. 特性設計
        • 5.1.1 內存占用
        • 5.1.2 響應速度
        • 5.2 可維護性與可擴展性
        • 5.3 可交互性
        • 5.4 可靠性
        • 5.5 安全性
      • 6. 部署
        • 6.1 部署模式
        • 6.2 許可協議

1. 引言

1.1 編寫目的

??編寫此文檔的目的是確認微博輿情分析系統的基本架構,指導系統的基本架構。

1.2 項目信息

  • 項目名稱:輿情分析系統
  • 項目提出者:指導教師
  • 開發者:東北大學軟件學院大數據班T09實訓項目組(lzf、lcx)
  • 用戶:輿情分析員、系統管理員

1.3 項目背景

??互聯網的飛速發展促進了很多新媒體的發展,不論是知名的大 V,明星還是圍觀群眾都可以通過手機在微博,朋友圈或者點評網站上發表狀態,分享自己的所見所想,使得“人人都有了麥克風”。不論是熱點新聞還是娛樂八卦,傳播速度遠超我們的想象。可以在短短數分鐘內,有數萬計轉發,數百萬的閱讀。如此海量的信息可以得到爆炸式的傳播,如何能夠實時的把握民情并作出對應的處理對很多企業來說都是至關重要的,而這一切也意味著傳統的輿情系統升級成為大數據輿情采集和分析系統。

1.4 閱讀對象

  • 本系統的設計人員:主要是輿情分析系統開發小組成員。
  • 本系統的開發人員:主要是輿情分析系統開發小組成員。
  • 本系統的測試人員:主要是輿情分析系統開發小組成員。

1.5 術語與縮略語

1.6 參考資料

  • 《輿情分析系統-軟件需求規格說明書》
  • 中移輿情架構圖:https://ecloud.10086.cn/home/product-introduction/pa
  • 系統架構設計說明書:
    https://wenku.baidu.com/view/5afd18a42a4ac850ad02de80d4d8d15abe23006e.html
  • 2. 范圍

    2.1 軟件名稱

    • 英文名稱:POAS(Public Opinion Analysis System)
    • 中文名稱:輿情分析系統

    2.2 軟件功能

    • 參考《輿情分析系統-軟件需求規格說明書》

    3. 總體設計

    3.1 架構設計目標和約束

    3.1.1 架構設計目標

    ??架構設計的目標是為了解決目前或者未來軟件系統由于復雜度可能帶來的問題。就目前而言,架構設計主要是為了識別、梳理用例模型交互、功能模塊實現、接口設計和概念模型設計等涉及到的復雜點,再針對這些復雜點制定處理方案,從而通過設計來增強效用、減少成本,降低復雜度。而就未來而言,系統架構設計將隨著業務發展不斷演變、完善,以解決未來軟件系統由于復雜度可能帶來的問題。

    3.1.2 開發環境

    3.1.3 運行環境

    3.2 系統架構設計

    3.3 系統流程

    3.4 系統模塊劃分與模塊接口

    3.4.1 模塊描述
    • 數據采集模塊
      ??數據采集模塊主要是通過網頁爬蟲定時對目標網站的新聞文章數據進行爬取,爬取的間隔參數可以通過系統管理頁面配置。
    • 實時處理分析與數據存儲模塊
      ??實時處理分析與數據存儲模塊接收數據采集模塊采集到的數據,通過Flink代碼處理原始數據到不同的下游Topic,再根據需求對數據進行實時處理、實時分析,最終存入ClickHouse與ElasticSearch。
    • 數據查詢搜索模塊
      ??數據查詢搜索模塊負責搜索查詢ClickHouse與ElasticSearch存儲的數據,提供接口讓前端進行查詢并展示。
    • 前端展示模塊
      ??接收后端的查詢到的數據,對數據進行可視化展示。
    • 登錄模塊
      ??登錄模塊負責輿情分析員與管理員的登錄,輿情分析員登錄后可查看輿情分析報表,管理員登錄后可以配置相關參數。
    3.4.2 模塊接口設計

    ??實時處理分析與數據存儲模塊的接口主要是模塊代碼的使用接口,主要涉及的接口有textEmotion()接口、segmentSentence()接口、getArticleEvents()接口、getProvince()接口、getStandardTime()接口以及存儲數據到ClickHouse與ElasticSearch的第三方接口,這些接口的作用說明如下表所示:

    ??數據查詢搜索模塊的接口主要是控制層提供的前端輿情展示的查詢搜索接口、登錄接口、管理員的參數配置接口以及數據層提供的數據查詢訪問接口(ClickHouse SQL),控制層接口設計清單如下表所示:

    • 輿情首頁

    • 輿情事件搜索頁

    • 輿情事件總覽頁

    • 輿情事件文章分析頁

    • 輿情事件評論分析頁

    • 輿情事件預警頁

    • 管理員配置頁

    • 其它

    4. 運行設計

    4.1 子系統設計

    4.1.1 分析子系統

    主要由Flink編寫的代碼組成,每個代碼文件為一個Flink的任務,通過構建并提交Flink任務到Flink集群來進行輿情數據(通過Kafka的Topic獲取)的處理分析,并將數據存入到ClickHouse與ElasticSearch。

    4.1.2 后臺子系統

    主要是通過SpringBoot、MyBatis、clickhouse-jdbc、spring-boot-starter-data-elasticsearch編寫的控制層、服務層、數據層代碼來提供前端的數據查詢與搜索服務,后臺子系統通過查詢由分析子系統寫入到ClickHouse表的數據以及ElasticSearch的index的數據從而將數據返回給前端子系統。

    4.1.3 前端子系統

    通過Vue.js、Element-UI(基于 Vue 2.0 的桌面端組件庫)、echarts(基于JavaScript的數據可視化圖表庫)、echarts-wordcloud、DataV(Vue 大屏數據展示組件庫)等前端技術構建起來的輿情事件展示的前端系統。前端子系統定時發送http查詢或搜索請求到后臺子系統并將后臺子系統返回的數據渲染到前端圖表。

    4.1.4 爬蟲子系統

    通過Python爬蟲技術爬取微博網頁、頭條網頁的輿情數據到Kafka的Topic,Topic的數據由分析子系統的Flink代碼獲取并處理。

    4.2 數據存儲

    4.2.1 數據存儲軟件

    輿情分析系統的數據采用ClickHouse表與ElasticSearch存儲,其中ElasticSearch存儲ClickHouse表的其中一個,用于事件搜索。

    4.2.2 數據存儲模型

    系統的數據采用ClickHouse表存儲。
    ? event_article 表

    ? event_day 與 event_hour 表

    ? event_trend 表

    ? event_spread 表

    ? event_keyword 表

    ? event_comment_detail 表

    ? event_comment_stat 表

    ? event_comment_keyword 表

    ? user 表

    ? topn 表

    ? threshold 表

    ? reptile_param 表

    ElasticSearch的數據與event_hour 表的數據保持一致。

    ? logs 表

    5. 特性設計

    5.1 性能

    5.1.1 內存占用

    內存占用約8G左右。

    5.1.2 響應速度

    在網絡正常的情況下用戶點擊網頁后頁面的跳轉時間<=1s,頁面數據的加載時間<=5s;若頁面的數據量較大而導致的頁面加載時間長的話,頁面必須提供網頁加載提示。

    5.2 可維護性與可擴展性

    系統基于大數據生態組件構建,鑒于大數據組件的橫向擴展能力,系統的可擴展性有一定保證。系統代碼的開發需要滿足代碼開發規范,需要做好充分的注釋、注意代碼的可復用性、注意功能模塊之間解耦能力,使得系統能夠以較低成本進行二次開發、進行功能擴展、進行系統維護。

    5.3 可交互性

    系統的人機交互符合人的認知心理學基本原理,并且需要降低系統工作人員的學習成本,必要的話還要提供系統使用的幫助文檔。

    5.4 可靠性

    在系統發生故障后,需要保證系統可以在較短時間內重建其性能水平并恢復直接受影響數據的能力,并且使系統故障率保持在一定的水平下。

    5.5 安全性

    系統需要保證數據的安全,防止數據的泄漏等。

    6. 部署

    6.1 部署模式

    采用Nginx 前后端分離方式部署前后端項目,采用Flink本地模式部署分析模塊(分析子系統)代碼。

    6.2 許可協議

    許可協議方式和版權加密控制方式。

    總結

    以上是生活随笔為你收集整理的基于 Flink、ClickHouse 的舆情分析系统:系统架构设计说明书的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。