IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Spark 源码解读04---(文件生成的)rdd的分区数据划分 -> 正文阅读

[大数据]Spark 源码解读04---(文件生成的)rdd的分区数据划分

2.4、从外部存储(文件)创建rdd的数据如何划分

  • 代码案例

    val conf = new SparkConf().setAppName("Simple Application").setMaster("local[*]")
    val sc = new SparkContext(conf)
    // 读取本地文件
    val readline = sc.textFile("input/1.txt")
    readline.collect.foreach(println)
    
  • 源码解读

    /*
    假设字节数为 7 默认分区数为 2:
    goalSize = 7 / 2 -->  3byte
    再根据goalSize计算实际分区数:
    实际分区个数 = 7 / 3  --> 2 余数为 1 ; 1/3 = 0.33 
    所以实际分区数为: 2 + 1 = 3
    */
    /*
    如上3个分区 每个分区有3个字节
    每个分区的根据文件的起始偏移量来划分
    0: [0,3]
    1: [3,6]
    2: [6,7]
    还要注意:如果某个分区刚刚截取到一行的中间,那么他将会把整行都放在该分区中,
    因为hadoop读取分区是一行一行的读取,下一个分区将会从下一行开始读取。
    */
    
    
    
  • 总结

    文件创建rdd 的数据划分根据每个分区的根据文件的起始偏移量来划分,切数据是一行一行的读取,如果某个分区刚刚截取到一行的中间,那么他将会把整行都放在该分区中。

2.1、从集合中创建rdd的分区个数

2.2、从集合中创建rdd的分区数据如何划分

2.3、从外部存储(文件)创建rdd的个数

2.4、从外部存储(文件)创建rdd的数据如何划分

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-09-02 11:26:45  更:2021-09-02 11:28:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 17:03:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码