Header
Header

Blog Archives

scala如何连接和操作mysql/oracle/sqlserver数据库

  在scala中怎么连接mysql/oracle/sqlserver数据库,进行数据库操作。阅读更多

spark学习之combineByKey函数

  在数据分析中,处理Key,V alue的Pair数据是极为常见的场景,例如我们可以针对这样的数据进行分组、聚合或者将两个包含Pair数据的RDD根据key进行join。从函数的抽象层面看,这些操作具有共同的特征,都是将类型为RDD[(K,V)]的数据处理为RDD[(K,C)]。这里的V和C可以是相同类型,也可以是不同类型。这种数据处理操作并非单纯的对Pair的value进行map,而是针对不同的key值对原有的value进行联合(Combine)。因而,不仅类型可能不同,元素个数也可能不同。Spark为此提供了一个高度抽象的操作combineByKey。该方法的定义如下所示:阅读更多

scala学习之字符串相等比较

【问题场景】在scala中如何比较两个字符串,判断它们是否相等,即比较它们是否包含相同的字符序列?阅读更多

Spark Core核心编程之广播变量剖析

如果深入思考spark的分布式集群工作过程,就会发现有一些问题是分布式多节点需要考虑解决的。如一些变量在集群节点之间的拷贝。如我们在应用程序中编写代码,实际运行时候是将相关的代码分发个各节点进行运行,在spark中application应用程序向spark集群提交请求,申请相关运算资源;spark master节点分配好相关节点运算资源之后,在work节点启动相关的excutor以task线程来处理application中的计算任务。在一般情况下excutor中task进程中运行时所涉及的变量是独立的互不干扰的,这样就需要每一个task通过网络拷贝application中定义的相关变量(如下图绿色所示意的过程)。阅读更多