小编Gre*_*orn的帖子

apache spark中的批处理API调用?

我是Apache Spark的初学者,确实有以下任务:

我正在从数据源读取记录,在Spark转换中,需要通过调用外部Web服务来增强数据,然后才能对其进行进一步处理。

该Web服务将在一定程度上接受并行调用,但一次只允许发送几百条记录。而且,它非常慢,因此尽可能多地进行批处理和并行请求无疑在这里有所帮助。

有没有办法以合理的方式做到这一点?

我想到了读取记录,将它们预处理到另一个数据源,然后一次读取“ API-Queue”数据源500条记录(如果可能的话,可以使用多个进程),然后将记录写入下一个数据源,并使用此结果数据源做最后的转变。

在API调用中,唯一需要遵守这些怪异限制的地方(这就是为什么我认为某些中间数据格式/数据源将是合适的)。

您有什么要向我指出的想法或方向吗?

apache-spark

5
推荐指数
2
解决办法
6156
查看次数

流scrapy日志输出到websocket

我正在尝试构建一个通过websocket消息请求时将运行Scrapy Web Spider的API。

我想将日志记录输出转发到websocket客户端,以便您了解-有时运行时间很长的过程中发生的情况。完成后,我还将发送抓取的结果。

由于可以在进程中运行Scrapy,因此我想做到这一点。我在这里找到了一种将外部流程流式传输到websocket的解决方案,但是如果可以在服务器中运行Scrapy,那似乎是不对的。

https://tomforb.es/displaying-a-processes-output-on-a-web-page-with-websockets-and-python

我可以想像有两种方法可以在Twisted中实现此功能:以某种方式使用LogObserver,或定义LogHandler(可能是带有StringIO的StreamHandler),然后使用诸如WebSocketServerProtocol之类的autobahn.websocket类在Twisted中以某种方式处理流。

现在我很困,不知道如何连接两端。

有人可以提供一个简短的示例,说明如何将日志输出从扭曲的日志记录(如果可能的话避免使用文件)流式传输到Websocket客户端?

python twisted websocket scrapy

4
推荐指数
1
解决办法
1322
查看次数

标签 统计

apache-spark ×1

python ×1

scrapy ×1

twisted ×1

websocket ×1