hadoop支持python,我理解的是任务被yarn下发到工作节点,通过shell方式被调用。这种方式比原生的MR还慢,所以没大有人用吧。
spark应该是对python比较友好的框架了。要说缺点,毕竟是scala或java风格的api,用起来不够python。再就是用过pandas和numpy,感觉spark的api还是比较基础。
除此之外,python推荐你了解一下dask,celery这两个框架。dask是基于numpy,pandas封装的,兼容大部分np,pd的接口。且支持分布式,有可视化界面。整体来说是不错的选择。
celery是一个分布式任务调度框架,本身设计并不是专门为了etl,所以性能会比dask差一些。但个人感觉作为生产系统使用,celery稳定性更高一些。