- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在加载一个文本文件,该文件采用 TSV(表格分隔值)表示法,但每行中都没有键。因此,一行表示一个特定变量,随后的所有行都是该变量的值,直到出现新变量。
因此我使用自定义分隔符加载文件(在 Jupyter Notebook Python 2.7 - Pyspark 中):
sheet = sc.newAPIHadoopFile(
'sample.txt',
'org.apache.hadoop.mapreduce.lib.input.TextInputFormat',
'org.apache.hadoop.io.LongWritable',
'org.apache.hadoop.io.Text',
conf={'textinputformat.record.delimiter': 'var::'}
)
我的问题是,这样的多行记录的大小如何?一个变量的值可能有数千行。 Spark 是在一台机器上立即加载文件,还是将该 block 拆分为较小的 block ( block ),然后进行处理?
只是想确保内存没有在处理节点上爆炸。感谢您的任何解释。
最佳答案
o.a.h.mapreduce.lib.input.TextInputFormat
返回的每个(键,值)对都是一个包含偏移量(long
)和字符串的本地数据结构。没有可以在不创建自定义 Hadoop 的情况下在多个记录之间拆分值的机制 InputFormat
.
“几千行”不是很精确的描述,但作为一个经验法则:
另请记住,大型记录可能导致资源利用率不理想。在最坏的情况下,您最终可能每个任务只有一条记录,而簿记成本可能比实际执行成本高得多。
关于python - PySpark (Python) : loading multiline records via SparkContext. newAPIHadoopFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38161907/
我正在使用 Spark 在 Scala 中执行测试,创建 SparkContext 如下: val conf = new SparkConf().setMaster("local").setAppNa
我正在使用 spark-1.5.0-cdh5.6.0 .尝试了示例应用程序 (scala) 命令是: > spark-submit --class com.cloudera.spark.simbox.
我正在尝试在 Hadoop YARN 客户端模式下运行我的 spark 作业,我正在使用以下命令 $/usr/hdp/current/spark-client/bin/spark-submit -
我使用的是 Window 10、Scala 2.10.2、Spark 1.6.1 和 Java 1.8。下面是我尝试运行的代码。 import org.apache.spark.SparkCont
我在 PySpark 中有一小段代码,但我不断收到错误。我是新手,所以我不确定从哪里开始。 from pyspark import SparkContext, SparkConf conf = Spa
我正在尝试为 spark 应用程序编写测试,但在尝试运行下一个测试时出现此异常 class BasicIT { val sparkConf: SparkConf = new Sp
这个问题已经有答案了: Mac spark-shell Error initializing SparkContext (13 个回答) 已关闭2 年前。 我已经安装了以下版本的设置:Hadoop版本
所以我是 Spark 新手。我的版本是:Spark 2.1.2、Scala 版本 2.11.8(Java HotSpot(TM) 64 位服务器 VM、Java 1.8.0_131)。我在 Windo
我目前正在尝试扩展使用 Scala 和 Spark 的机器学习应用程序。我正在使用我在 Github 上找到的迪特里希·劳森 (Dieterich Lawson) 以前项目的结构 https://gi
我正在尝试使用 Spark 结构化流处理一些事件。 传入事件如下所示: 事件1: 网址http://first/path/to/read/from... 事件2: 网址http://second/pa
请告诉我我该如何使用 SparkContext 指定textFile()的输入路径。像下面这样对我不起作用。 sc.textFile("hdfs://localhost:54310/home/myFi
我正在尝试使用 Spark 结构化流处理一些事件。 传入事件如下所示: 事件1: 网址http://first/path/to/read/from... 事件2: 网址http://second/pa
我正在使用 Spark-shell 学习 Spark。 当从终端运行spark-shell时,默认已经提供了一个sparkContext。我想向 Spark 上下文添加一些手动设置(例如 setMas
我正处于学习spark的初级阶段。我刚刚开始使用 pyspark 使用 python 进行编码。在浏览基本代码时,我在 Jupyter 笔记本上遇到了此错误。好吧,我已经在我的电脑上安装了 Spark
我正在尝试使用wholeTextFiles读取文件夹中的所有文件名并单独处理它们(例如,我正在尝试获取每个数据集的SVD vector ,总共有100组)。数据保存在按空格分割并排列在不同行(如矩阵)
我在 CentOS 上工作,我已经设置了 $SPARK_HOME 并且还在 $PATH 中添加了 bin 的路径。 我可以从任何地方运行 pyspark。 但是当我尝试创建 python 文件并使用此
如何停止当前运行的任何 Spark 上下文。 信息API:斯卡拉Spark版本:Spark 2.3 实际上我已经创建了 Spark 上下文。为了阻止他们我应该输入例如instance.stop() 但
作为 this question 的延续, 你能告诉我我可以从 SparkContext.setLocalProperties 更改哪些属性吗? ? 我可以更换内核、RAM 等吗? 最佳答案 根据文档
我正在尝试使用 intellij 在 spark 上运行 Scala 代码。 Scala 代码 import scala.collection.JavaConverters._ import org.
我发誓我以前做过,但我找不到代码或答案。我想获取当前正在运行的 SparkContext 的名称并将其读入变量或将其打印到屏幕上。类似于以下内容: val myContext = SparkConte
我是一名优秀的程序员,十分优秀!