Spark Streaming中的文件流限制

时间:2016-08-23 03:25:04

标签: spark-streaming

我需要开发一个流式应用程序,它从多个来源读取一些会话日志。 批次间隔可以是大约5分钟的比例..

问题是我在每批中获得的文件差别很大。在每个批次中,我可以获得一些10兆字节的文件,然后在另一批中获得一些大约20GB的文件。

我想知道是否有任何方法可以解决这个问题。文件流可以为每个批次生成RDD的大小有限制吗?

我可以限制火花流以将每批中固定数量的数据读入RDD吗?

1 个答案:

答案 0 :(得分:0)

据我所知,没有直接的方法来限制它。要考虑的文件是在FileStream中的isNewFile私有函数中控制的。根据代码,我可以想到一个解决方案。

使用过滤功能限制要读取的文件数。任何超过10的文件都返回false并使用touch命令更新要考虑用于下一个窗口的文件的时间戳。

startActivityForResult(AuthUI.getInstance()
                .createSignInIntentBuilder()
                .setProviders(AuthUI.EMAIL_PROVIDER,
                              AuthUI.FACEBOOK_PROVIDER,
                              AuthUI.GOOGLE_PROVIDER)
                .setTheme(R.style.AuthStyle)
                .build()
                ,1);