将对象传递给Spark

时间:2015-08-30 20:04:18

标签: python apache-spark cloud

我尝试了解Spark的功能,但我没有看到Python中是否可以使用以下功能。

我有一些不可拾取的对象(使用SWIG包装在C ++中)。 我有一个对象的列表obj_list = [obj1,obj2,...] 所有这些对象都有一个名为.dostuff

的成员函数

我想在Spark中并行化以下循环(为了在AWS上运行它,因为我内部没有大型架构。我们可能会使用多处理,但我认为我不能轻易发送网络上的对象):

[ob.d_list中的x的x.dostuff()]

任何指针都会受到赞赏。

1 个答案:

答案 0 :(得分:0)

如果你的对象不可挑选,你的选择非常有限。如果您可以在执行程序端创建它们(通常是数据库连接等常用的选项),您可以$itemNos = $_POST['itemNo']; $itemNames = $_POST['itemName']; $brands = $_POST['brand']; $prices = $_POST['price']; foreach($itemNos as $key => $value) { echo '<p>'; echo $itemNos[$key].'<br/>'; echo $itemNames[$key].'<br/>'; echo $brands[$key].'<br/>'; echo $prices[$key]; echo '</p>'; } 一个常规列表(例如,可能是构造函数参数的列表),然后使用parallelize如果您的map函数返回(可选)您要使用的值,或dostuff如果您的dostuff函数被调用其副作用(如更新数据库或类似)。