如果只是应用Hadoop/Spark进行数据分析,那么JavaSE只需要基本了解就行了,重点在于深入理解Hadoop/Spark各自的计算模型和实现原理,以及常见的数据分析方法和分布式算法。实际的分析工作,甚至可以不使用java,使用各自的streaming接口用任意语言编写。另外,Spark与Hadoop不同,原生语言是Scala。
如果要深入学习两个框架的实现,阅读源代码的话,那肯定就得学习Java/Scala了,建议在掌握基础之后边看代码边查相应的语言特性。
对初学者,建议还是从应用入手,在使用的过程中,自然地一步步了解实现。
多线程和并发绝对是重点。