大数据中为什么使用Scala?
原因:
- 开发大数据应用程序 (Spark程序、Flink程序 )
Hadoop已经是我们大数据领域的事实标准了。Spark生态并不是要取代Hadoop生态,而是为了更好的拓展大数据生态,两者结合。而Spark由我们Scala开发的,我们学习Scala为了更好的去学习Spark。
表达能力强,一行代码抵得上Java多行,开发速度快。 优雅,代码简介逻辑更加清晰。
兼容Java,可以访问庞大的Java类库,例如:操作mysql、redis、freemarker、activemq等等
案例对比:
假设定义三个实体类(用户、订单、商品)
java代码实现:
用户实体类:
/*** 用户实体类*/
public class User {private String name;private List<Order> orders;public String getName() {return name;}public void setName(String name) {this.name = name;}public List<Order> getOrders() {return orders;}public void setOrders(List<Order> orders) {this.orders = orders;}
}
订单实体类:
/*** 订单实体类*/
public class Order {private int id;private List<Product> products;public int getId() {return id;}public void setId(int id) {this.id = id;}public List<Product> getProducts() {return products;}public void setProducts(List<Product> products) {this.products = products;}
}
商品实体类:
/*** 商品实体类*/
public class Product {private int id;private String category;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getCategory() {return category;}public void setCategory(String category) {this.category = category;}
}
Scala代码:
case class User(var name:String, var orders:List[Order]) // 用户实体类
case class Order(var id:Int, var products:List[Product]) // 订单实体类
case class Product(var id:Int, var category:String) // 商品实体类
总结
看到这里是不是已经对scala爱不释手了,在接下来的几天,我会把系统的把scala的基础用法介绍一下。
大数据中为什么使用Scala?相关推荐
- MAC系统中搭建Spark大数据平台(包括Scala)
MAC系统中搭建Spark大数据平台(包括Scala) 总体介绍: 大家Spark大数据平台,包括三部分内容:JDK,Scala,Spark 这三者是依次依赖的关系,Spark依赖于Scala环境(S ...
- 23.大数据学习之旅——scala进阶
函数式编程的概念 编程范式 函数式编程是一种编程范式,我们常见的编程范式有: 1)命令式编程(Imperative programming),常见的面向对象编程是也是一种命令式编 程.比如java,c ...
- 好程序员大数据学习路线分享scala单列和伴生对象
好程序员大数据学习路线分享scala单列和伴生对象 scala单例 object SingletonDemo { def main(args: Array[String]): Unit = { val ...
- 华西生物医学大数据中心俞鹏课题组博士后招聘启事
四川大学华西医院生物医学大数据中心俞鹏课题组拟招收博士后数名.主要从事:1)生物信息学及实验验证,2)生物医学信息学,3)生物医学文献审编和本体构建,4)药用植物基因组学及合成生物学,5)化学信息学. ...
- ACM图灵奖获得者:想从大数据中获益,先解决集成问题!
文章讲的是ACM图灵奖获得者:想从大数据中获益,先解决集成问题!如今,大数据对所有行业都产生了深远影响:从医疗保健.汽车.电信到物联网.随着数据浪潮的持续,企业都在寻找更新的管理和分析方法.收集可行的 ...
- 大数据中常见的端口号 总结汇总大全(最新)
大数据中常见的端口号 总结大全 如图所示: 常见端口汇总: Hadoop: 50070:HDFS WEB UI端口 8020 : 高可用的HDFS RPC端口 9000 : 非高可用的HDFS RPC ...
- 【Spark Summit East 2017】管道泄漏问题:像女士一样在大数据中做个的标记
更多精彩内容参见云栖社区大数据频道https://yq.aliyun.com/big-data:此外,通过Maxcompute及其配套产品,低廉的大数据分析仅需几步,详情访问https://www.a ...
- 如何才能在大数据中获取价值
从数据中获取价值都是一个挑战,不管你所在的行业和企业规模如何.然而,在早期阶段,这一挑战与可用数据量没多大关系.如果对数据处理过程和数据值提取的结构设计不合理,那么至少按照现在的标准,企业有数据和没数 ...
- python运用在大数据中精准生活_大数据分析技术在生活中的广泛应用
段雯琼++薛然++任亚丽 摘 要 文章介绍了大数据技术的即时性.准确性和预测性,并将大数据技术与公共交通.医药领域.移动通信网络优化相结合,从而方便了人们的生活,提高了人们的生活质量. [关键词]大数 ...
最新文章
- ubuntu内窗口最大最小化
- 机器人焊枪动作与编程实验_机器人编程实验报告.pdf
- 鸿蒙是安卓换皮UI,鸿蒙2.0是安卓换皮?还真不是
- 【Python基础】如何用Pandas处理文本数据?
- 服务器站点解密出错,修改域超级管理员密码后站点复制出错。
- 建立丰富多彩的toast的简单实例
- python基础 网络编程
- 转帖:MySql日期格式化
- 列表的增删改查和嵌套, 元组, range
- NXP iMX8 SCFW和Boot Container Image编译
- 一维码与二维码对比介绍
- 查询名字重复但不是相同的人的记录
- 软链接解决存储空间不足
- 雷军在联想内部分享,把小米讲透了!
- 且行且走(8月22日,23日)
- elasticsearch.client.transport.TransportClientNodesService[420] - node {#transport#-1}
- 尘埃落定!前ARM亚太区生态系统负责人Leon确认加盟大朋VR
- goplus (go+)初识
- 2017 年一月联考逻辑真题
- CodeBlocks无错误下方出现红色下划线提示