我正在尝试实施Kafka - Spark环境。我正在尝试调试我的MapReduce逻辑(用Java实现)。 Spark提交步骤使我的算法中的断点调试变得复杂。传入的实时数据模式很复杂。模拟复杂算法将是非常耗时的过程。更好的开发环境将帮助开发人员验证他们的地图减少实时流数据的逻辑。
请提出任何提示和技巧。是否可以使用IDE断点或使用Apache-Spark进行远程调试。
答案 0 :(得分:0)
如果您正在开发流式或批量火花应用程序,我认为这不重要。您始终可以使用intellij idea来对应用程序进行图形调试。
另请参阅此视频:https://www.youtube.com/watch?v=kkOG_aJ9KjQ。最后,如果您想根据数据模式调试应用程序的反应性,我建议使用Spark的内部工具来查看DAG的创建方式或分发方式。
我自己正在研究的一件事是使用spark调试工具,并根据我的应用程序执行图构建日志,并添加我从Profilers(通常的操作系统工具,如iotop或iostat)获得的信息,以找到例如我我没有充分利用资源。
最后,您需要将这些信息放在一起做出决定,具有讽刺意味的是,它本身可以成为数据密集型应用程序。