Skip to main content
QUICK REVIEW

[论文解读] Polypus: a Big Data Self-Deployable Architecture for Microblogging Text Extraction and Real-Time Sentiment Analysis

Rodrigo Martínez-Castaño, Juan C. Pichel|arXiv (Cornell University)|Jan 11, 2018
Sentiment Analysis and Opinion Mining参考文献 24被引用 7
一句话总结

Polypus 是一种自部署的、基于 Docker 的大数据架构,利用 Storm 和 Spark 实现实时提取和分析微博内容的情感。该系统每天可处理超过 3000 万条推文,端到端延迟低于两分钟,支持可扩展的、近实时的基于关键词的情感聚合与可视化分析,通过 Web 界面和 HTTP API 实现交互。

ABSTRACT

In this paper we propose a new parallel architecture based on Big Data technologies for real-time sentiment analysis on microblogging posts. Polypus is a modular framework that provides the following functionalities: (1) massive text extraction from Twitter, (2) distributed non-relational storage optimized for time range queries, (3) memory-based intermodule buffering, (4) real-time sentiment classification, (5) near real-time keyword sentiment aggregation in time series, (6) a HTTP API to interact with the Polypus cluster and (7) a web interface to analyze results visually. The whole architecture is self-deployable and based on Docker containers.

研究动机与目标

  • 解决在 Twitter 等短文本、高吞吐量的微博内容上进行实时情感分析的挑战。
  • 利用分布式大数据技术,实现对海量推文的可扩展、低延迟处理。
  • 实现基于关键词的近实时情感聚合,支持时间序列的历史与动态分析。
  • 提供完全自部署、模块化且容器化的系统,通过 Web 和 API 接口支持终端用户交互。
  • 结合实时流处理与批处理式聚合,实现全面的情感趋势分析。

提出的方法

  • 使用 Twitter Streaming API 构建的分布式网络爬虫,可大规模获取推文,通过每核心一个线程的配置优化高吞吐量。
  • 使用 HBase 作为分布式、时间优化的 NoSQL 存储,通过分片的行键设计防止热点问题,并支持高效的范围时间扫描。
  • 使用 Aerospike 作为内存中的键值缓冲区,减少数据重复并加速模块间通信。
  • 使用 Storm 实现实时处理推文的情感分类,通过包括分词、命名实体识别(NER)和情感极性标注在内的 NLP 组件流水线。
  • 使用 Spark 对任意关键词在时间窗口内的情感指标(如情感极性比率、匹配总数)进行近实时聚合。
  • 通过 RESTful HTTP API 和 Web 界面,支持用户使用图表查询和可视化时间序列上的情感趋势。

实验结果

研究问题

  • RQ1如何设计一种可扩展、自部署的大数据架构,以实现实时情感分析高吞吐量微博流?
  • RQ2当跨多个节点并采用不同核心配置扩展时,分布式爬虫在 Twitter 上的性能上限是什么?
  • RQ3在推文内容简短且主观性强的背景下,使用 Storm 能在多大程度上实现可扩展的实时情感分类?
  • RQ4在低延迟处理与存储条件下,近实时的基于关键词的情感聚合能实现到何种程度?
  • RQ5完全容器化的开源技术栈能否提供与专有解决方案相当的生产级性能与可用性?

主要发现

  • 在 7 个节点的集群配置下,系统实现了最高 740.6 条推文/秒的获取能力,表现出强大的水平可扩展性。
  • 在单一目标语言下,Polypus 每天处理超过 3000 万条推文,完整分析在两分钟内完成。
  • 约 100 万条推文的处理耗时约 15 秒,表明系统对实时工作负载具备极高的吞吐能力。
  • 爬虫在每核心 32 个线程时达到最优吞吐量,超过 32 个线程后性能因系统饱和而趋于平稳。
  • 在 37 小时无人值守测试中,系统成功摄入 49,650,935 条推文,验证了长期稳定性和可扩展性。
  • 系统表明,开源工具如 Storm、Spark、HBase 和 Aerospike 可在大规模场景下实现低于两分钟的端到端处理延迟。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。