---
title: R on Spark 的工具层问题
date: '2015-12-18 13:06:18'
draft: false
summary: Spark 本身并不能自动吸收 R 生态的优势，真正的关键是有没有一层足够好的工具，把算法表达能力和分布式执行平台接起来。
slug: r-on-spark-needs-better-tooling
syndication:
- platform: Weibo
  url: https://weibo.com/1648815335/D8YovwyQN
tags:
- r
- spark
- machine-learning
- tooling
topics:
- software-engineering
type: post
---

那次在大数据会上看到南京大学黄宜华老师做的“大章鱼”，本质上是在把 `R` 语言跑到 `Spark` 平台上：算法仍然用 `R` 表达，而平台负责把底层执行能力扩起来。

这个方向我一直觉得很对。

因为 `Spark` 这种平台的优势，主要在分布式执行和资源调度；而 `R` 的优势，更多在统计计算、算法表达和生态积累。问题从来不是二选一，而是两边能不能被一层足够好的工具接起来。

如果这层工具做得好，用户就可以继续用自己熟悉的算法语言表达问题，同时又享受到分布式平台带来的伸缩能力。反过来说，如果没有这层工具，平台再强，算法工程师也未必愿意迁移过去。

所以我会觉得，`R` 当然还可以继续发挥价值，关键不是语言本身，而是有没有更多优秀工具，把它和 `Spark` 这类平台真正打通。
