從Java Stream到Java DataFrame

陸振恩

Director of Engineer

曾任職於聯發科技,SmartQ,cacaFly,目前在TenMax(跟cacaFly同母公司)擔任小工頭。喜歡Java,熱愛Java,跟Java一起打滾了十幾個年頭,並使用Java拿下過趨勢科技百萬程式大賽冠軍。目前研究興趣為大數據,NoSQL,以及機器學習。並且希望可以把工作中所用所學放在GitHub上貢獻給社會。

隨著Java8的推出,連帶的推出了Java Stream API這個以lambda為基礎的的Stream Processing Library,讓我們可以用Functional Reactive Programming的概念來處理資料。在大數據的領域裡,Apache Spark的RDD概念,事實上跟Java Stream非常之類似,而Spark除了最基本的RDD,還有DataFrame這種Column-based的Stream處理概念,可以用來處理類似SQL的Table操作。講者試圖以開源的Poppy framework,讓Java也有類似的功能,但是不用使用Spark DataFrame如此龐大的framework。並且試著介紹Poppy內部如何利用Java Stream的概念來實作DataFrame。

1. 本場次為中文