使用Apache Kafka进行流分析

问题描述 投票:-1回答:1

我们正在从设备(Android,iOS)收集流数据。数据流是websocket - > logstash - > kafka - > spark - > cassandra。 Ram是16 GB。我们的应用程序基于OTT平台,当视频流式传输时,它会将事件发送到kafka以进行分析。目前的情况是,在并行播放4或5个视频时,内存将快速溢出。

可能是什么问题?是配置错误吗?我们的要求还有其他更好的方法吗?

apache-spark memory-management cassandra apache-kafka
1个回答
2
投票

我将以广泛的答案回答您的广泛问题。

Logstash / Kafka / Spark / Cassandra是一个“正确”的架构吗?

这种方法没有什么特别的错误。这取决于你正在做什么处理,以及你为什么要把它降落到Cassandra。您会发现很多人采用这种方法,而其他人可能会使用不同的流处理,例如Kafka Streams,以及并不总是使用数据存储(因为Apache Kafka持久化数据) - 取决于之后消耗数据的内容。

我的系统可以使用这种架构一次处理10,000多个用户活动吗?

是。不,这取决于太多的因素来给出答案。使用少量数据进行简单活动的10,000个用户与需要对大量数据进行复杂处理的10,000个用户有很大不同。

获得答案并评估您的体系结构选择的唯一方法是在增加[模拟]用户数时分析系统的行为。是否会出现特定的瓶颈,表明需要更大的硬件规模,甚至是不同的技术选择。

© www.soinside.com 2019 - 2024. All rights reserved.