
spark
5xh
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
RDD的创建、操作
官网原文:There are two ways to create RDDs: parallelizing an existing collection in your driver program, or referencing a dataset in an external storage system, such as a shared filesystem, HDFS, HBase, o...原创 2019-05-08 19:52:41 · 990 阅读 · 0 评论 -
对未经优化的HashShuffleManager产生小文件数的验证。
小文件数 = M * R4*2 val dataRDD = sc.textFile("file:///E:\\ruozeinput.txt",4) dataRDD.flatMap(_.split("\t")).map((_,1)).reduceByKey(_ + _,2).foreach(println)5*3val dataRDD = sc.textFile("file...原创 2019-05-23 15:23:37 · 355 阅读 · 0 评论 -
利用sparkcore进行ETL并输出为orc,parquet文件
前置条件:开启hivemetastore服务。能与hive进行交互[hadoop@hadoop-01 data]$ spark-shell --driver-class-path /home/hadoop/app/hive-1.1.0-cdh5.7.0/lib/mysql-connector-java.jarscala> import org.apache.spark.sql.hiv...原创 2019-05-17 16:17:43 · 1441 阅读 · 0 评论 -
DataFrame API 小记
http://spark.apache.org/docs/latest/sql-getting-started.html官网写的很详细。这里只是个人觉得一些必要内容的摘抄。第一步:Starting Point: SparkSession:import org.apache.spark.sql.SparkSessionval spark = SparkSession .builder...原创 2019-05-22 17:06:19 · 494 阅读 · 0 评论 -
Spark SQL入门
Spark SQL is Apache Spark’s module for working with structured data.Spark SQL 是spark的模块用来处理结构化的数据(类似一张表,ORC/Parquet/JSON),不仅仅是SQL。Spark SQL是1.0版本出来的,1.3毕业的Spark 的 SQL框架:Spark SQL:是spark的一个分支而Hive...原创 2019-05-22 14:08:16 · 183 阅读 · 0 评论 -
Spark on YARN 的一些碎碎念
Spark on YARN OverviewMR:base-processeach task in its own process:MapTask ReduceTask processwhen a task completes,the process goes awaySpark:base-threadmany tasks can run concurrently in a single...原创 2019-05-12 15:47:06 · 159 阅读 · 0 评论 -
RDD的宽窄依赖
在设计RDD的接口时,一个有意思的问题是如何表现RDD之间的依赖。在RDD中将依赖划分成了两种类型:窄依赖(narrow dependencies)和宽依赖(wide dependencies)。窄依赖是指父RDD的每个分区都只被子RDD的一个分区所使用。相应的,那么宽依赖就是指父RDD的分区被多个子RDD的分区所依赖。例如,map就是一种窄依赖,而join则会导致宽依赖(除非父RDD是hash-...原创 2019-05-11 00:39:51 · 736 阅读 · 0 评论 -
关于cache()和persist()
/** * Persist this RDD with the default storage level (`MEMORY_ONLY`). */ def persist(): this.type = persist(StorageLevel.MEMORY_ONLY) /** * Persist this RDD with the default storage lev...原创 2019-05-10 23:26:46 · 558 阅读 · 0 评论 -
RDD深入讲解
RDD原码:https://github.com/apache/spark/tree/master/core/src/main/scala/org/apache/spark/rdd什么是RDD?一个弹性可分布式的数据集。弹性主要体现在计算之上。他是spark里一个最基本的抽象单元。代表了一个immutable(不可变的),能够并行操作的可以被分区的数据集 partitioned collect...原创 2019-05-07 21:12:57 · 237 阅读 · 0 评论 -
Spark的运行架构
原官网。http://spark.apache.org/docs/latest/cluster-overview.html术语含义Application基于spark构建的用户程序代码。由集群上的一个driver program 和多个executorApplication jar一个包含用户Spark应用的JarDriver program这是一个进程,运...原创 2019-05-07 19:54:54 · 1354 阅读 · 0 评论 -
Spark的一些优化点
因为spark的计算都是基于内存的,他的瓶颈有:cpu,带宽(network bandwidth),memory。通常情况下,如果数据是在内存里面的,瓶颈就在带宽上面,你也可以做一些其他优化,如RDD序列化(减少内存的使用)。Data Serialization数据序列化序列化在我们的分布式应用中扮演了一个非常重要的角色。默认使用JAVA serialization,比较灵活但是比较慢而且...原创 2019-05-14 22:38:41 · 283 阅读 · 0 评论 -
共享变量与broadcast join
共享变量通常,当在远程集群节点上执行传递给Spark操作(例如mapor reduce)的函数时,它将在函数中使用的所有变量的单独副本上工作。这些变量被拷贝到每台机器上。并且远程计算机上的变量的更新不会传播回驱动程序。这样读写共享变量效率低下。但是,Spark确实为两种常见的使用模式提供了两种有限类型的共享变量:广播变量(broadcast variables)和计数器( accumulator...原创 2019-05-19 15:03:26 · 1268 阅读 · 0 评论 -
了解spark-shell的启动流程
REPL :Read-Eval-Print Loop「读取-求值-输出」循环(英语:Read-Eval-Print Loop,简称REPL)是一个简单的,交互式的编程环境。#!/usr/bin/env bash## Licensed to the Apache Software Foundation (ASF) under one or more# contributor licens...原创 2019-05-14 15:29:17 · 391 阅读 · 0 评论 -
RDD常用算子的一些注意要点。
产生shuffle的算子,分区操作:repartition,coalesce。‘ByKey’操作(除了counting)如:groupByKey和reduceByKey。join操作:cogroup和joinrepartition源码: /** * Return a new RDD that has exactly numPartitions partitions. * * ...原创 2019-05-14 14:44:27 · 427 阅读 · 0 评论 -
SparkStreaming注意要点
http://spark.apache.org/docs/latest/streaming-programming-guide.htmlSpark官网已经已经将用法与概念写的很详细了。这里写一点平时需要注意的要点。Spark:是以批处理为主,用微批处理来处理流数据Flink:以流处理为主,用流处理来处理批数据StreamingContextssc ==> Source ==>...原创 2019-05-30 16:09:52 · 512 阅读 · 0 评论