【问题标题】:Does Spark streaming needs HDFS with KafkaSpark 流媒体是否需要 HDFS 和 Kafka
【发布时间】:2020-11-06 01:09:53
【问题描述】:
我必须设计一个设置来读取来自 twitter 的传入数据(流式传输)。我决定使用 Apache Kafka 和 Spark 流进行实时处理。需要在仪表板中显示分析。
现在,作为这个领域的新手,我假设的数据速率最大为 10 Mb/sec。我决定为 12 个核心 和 16 GB 内存 的 Kafka 使用 1 台机器。 *Zookeeper 也将在同一台机器上。现在,我对 Spark 感到困惑,它只能执行流式作业分析。稍后,分析的数据输出被推送到数据库和仪表板。
混淆列表:
- 我应该在 Hadoop 集群 或本地文件系统上运行 Spark 吗?
- Spark 单机模式能满足我的要求吗?
- 我的方法是合适的还是在这种情况下应该是最好的?
【问题讨论】:
标签:
apache-spark
pyspark
apache-kafka
spark-streaming
【解决方案1】:
试试答案:
- 我应该在 Hadoop 集群还是本地文件系统上运行 Spark?
推荐使用hdfs,可以节省更多数据,保证高可用。
- Spark 单机模式能满足我的要求吗?
-
独立模式最容易设置,如果您只运行 Spark,它将提供与其他集群管理器几乎所有相同的功能。
-
YARN 允许您在 YARN 上运行的所有框架之间动态共享和集中配置相同的集群资源池。
-
YARN 不需要运行单独的 ZooKeeper 故障转移控制器。
-
YARN 可能会预装在许多 Hadoop 发行版中。例如 CDH HADOOP。
所以推荐使用
-
YARN 不需要运行单独的 ZooKeeper 故障转移控制器。
所以推荐纱线
- 我的方法是合适的还是在这种情况下应该是最好的?
如果你的数据不超过1000万,我认为可以使用本地集群来做。
本地模式避免许多节点洗牌。进程之间的 shuffle 比节点之间的 shuffle 更快。
否则建议使用大于等于3个节点,即真正的Hadoop集群。
作为一个spark初级玩家,这是我的理解。希望ace纠正我。