Java函数式编程(2):流式计算

您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~

创新互联专业为企业提供澧县网站建设、澧县做网站、澧县网站设计、澧县网站制作等企业网站建设、网页设计与制作、澧县企业网站模板建站服务,十年澧县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

Lambda表达式虽然将接口作为代码块赋值给了变量,但如果仅仅只是Lambda表达式,还无法让Java由量变引起质变。真正让Lambda能够发挥出巨大威力的,就是流式计算。

所谓流式计算,就是让数据像在流水线上一样,从一道工序流转到下一道工序。就像这样:

如果把数据处理的方式比作流水线,那么Spark、Storm和Flink就是目前市面上头部的三家工厂。它们有各种各样的数据装配间(也就是各种处理数据的算子),将数据按照所需加工成型。所以,不懂流式计算根本就做不了大数据开发。上面那张图,如果换成流式计算的,就是这样:

Lambda表达式就变成了一个个的数据装配间。

还是以实际的代码例子来说明。假如有这样的代码:

/**
 * 雇员数据
 *
 *@author 湘王
*/
public class Employee {
public enum Type { MANAGER, SELLER, OFFICER };
private String name;
private String genger;
private Integer age;
private boolean married;
private Type type;
public Employee(final String name, final String genger, final Integer age, final boolean married, final Type type) {
super();
this.name = name;
this.genger = genger;
this.age = age;
this.married = married;
this.type = type;
    }
public String getName() {
return name;
    }
public void setName(String name) {
this.name = name;
    }
public String getGenger() {
return genger;
    }
public void setGenger(String genger) {
this.genger = genger;
    }
public Integer getAge() {
return age;
    }
public void setAge(Integer age) {
this.age = age;
    }
public boolean isMarried() {
return married;
    }
public void setMarried(boolean married) {
this.married = married;
    }
public Type getType() {
return type;
    }
public void setType(Type type) {
this.type = type;
    }
    @Override
public String toString() {
return this.name + "(" + this.genger + ")-" + this.age;
    }
}

当前文章:Java函数式编程(2):流式计算
网页链接:http://ybzwz.com/article/dsoiddj.html