本篇分析一个spark例子程序。
程序实现的功能是:分别统计包含字符a、b的行数。
java源码如下:
package sparkTest;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.Function;
public class SimpleApp {
public static void main(String[] args) {
String logFile = "file:///usr/local/spark/README.md"; // Should be some file on your system
SparkConf conf = new SparkConf().setAppName("Simple Application").setMaster("local");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaRDD logData = sc.textFile(logFile).cache();//将文件cache在内存中
long numAs = logData.filter(new Function() { //保留包含a的元素
public Boolean call(String s) {
return s.contains("a");//