问题标签 [apache-spark-xml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-spark - 在 Spark 的嵌套 XML 中为来自父数据框的子数据框添加额外的列
我在加载许多 XML 文件后创建数据。每个 xml 文件都有一个唯一字段fun:DataPartitionId
,我从一个 XML 文件创建了许多行。
现在我想为fun:DataPartitionId
XML 生成的行中的每一行添加它。
例如,假设第一个 XML 有 100 行,那么每 100 行将具有相同fun:DataPartitionId
的字段。
fun:DataPartitionId
作为每个 XML 中的标头文件也是如此。
这就是我正在做的。
scala - 在 spark 数据框中的嵌套 json 中将部分父 Schema 列添加到子项
我有下面的 xml,我正在尝试加载到 spark 数据框。
主要标签是<env:ContentEnvelope>
然后有两个部分,一个是标题(<env:Header>
),另一个是正文(<env:Body
)
<fun:OrgId>
正文中的细节<fun:DataPartitionId>
对于<env:Body
.
从这里我想创建两个数据框。
一为<sr:Source
,二为<sr:Auditor
对于两个数据框action="Overwrite"
将与一个公共列相同。
也因为<sr:Auditor
是<sr:Source
如此少的列的子项,例如sourceId="344" organizationId="4295906830"
将在<sr:Auditor
数据框中重复。
这就是我迄今为止为实现这一目标所做的工作
所以我的问题是如何从父数据框获取父数据框<sr:Source
和子数据<sr:Auditor
框的organizationId 和 sourceId?
apache-spark - spark-xml 库多次解析 xml 文件
我使用 databricks 中的 spark-xml 库来解析 xml 文件 (550 MB)。
Spark 第一次使用许多任务/分区解析文件。
然后,当我调用此代码时:
Spark 开始新的解析。
避免对数据集的每个函数调用都解析文件是一种解决方案吗?
apache-spark - spark-xml 中具有嵌套父节点的自定义模式
我对 spark-xml 很陌生,我发现为我的对象准备自定义模式很困难。请求大家帮助我。以下是我尝试过的。
我正在使用 Spark 1.4.7 和 spark-xml 版本 0.3.5
测试.Java
我的 POJO 类 Book.Java
我期望的XML
因此,如您所见,我希望在父级中有一个嵌套标签。如何修改我的 customSchema 以实现相同的效果。
apache-spark - 如何使用 Spark-Xml 生成复杂的 XML
我正在尝试从我的 JavaRDd<Book> 和 JavaRdd<Reviews> 生成一个复杂的 xml,我怎样才能将这两者结合起来生成下面的 xml?
如您所见,有一个父根库,其中包含子书籍和评论。
以下是我如何生成 Book and Review Dataframe
我知道要生成 xml,我的疑问尤其是对于拥有图书馆 rootTag 并将书籍和评论作为其子项。
我正在使用 Java。但如果你能指出我的正确,你可以编写 Scala 或 Python 示例。
scala - 在火花作业scala中添加新列之前检查空条件
我有一个下面的架构
现在这是一个经常变化的 xml 文件。我只想处理包含env:Data.sr:Source.*的税, 为此我在下面编写了代码
但这仅sr:Source
在架构中找到时才有效,否则我会遇到异常
线程“main”中的异常
org.apache.spark.sql.AnalysisException
:没有这样的结构字段 sr:Source in _type, cr:TRFCoraxData,fun:Fundamental, md:Identifier, md:Relationship
;
忽略我有空检查sr:Source
,但这对我不起作用。对于该检查,我也遇到了同样的错误。
基本上我需要的是 env:Data.sr:Source.* 为 null 然后我想退出处理并且下一个标签处理将重新开始。
scala - 解析 xml 文件时,由于 spark 中的类型不匹配而无法解决爆炸
我有一个具有以下架构的数据框
现在我想seg:BusinessSegments.seg:BusinessSegment
从模式中获取价值。
但我的问题是当我使用爆炸
所以在第一行我正在爆炸,在下一行我正在做*或扩展$"GeographicSegments.*",
。
我得到这样的错误这就是我正在做的
线程“主”org.apache.spark.sql.AnalysisException 中的异常:由于数据类型不匹配,无法解析“explode(
seg:GeographicSegments
. )”:seg:GeographicSegment
我知道这个问题,因为在架构中我得到seg:GeographicSegment
的是 struct 而不是数组,这就是我得到 .
所以真正的问题是我没有固定的模式。
当 xml 文件中有两条记录时,然后seg:GeographicSegment
变成数组,然后我的代码工作正常,但是当我只得到一条记录时,它作为结构工作,我的代码失败。
我如何在我的代码中处理这个问题。解析模式时是否必须设置条件?或者无论如何我
这是一种不起作用的情况
scala - NotNull 条件不适用于 spark 数据框 scala 中的 withColumn 条件
所以我试图在找到它时添加列,但我不想在 xml 架构中不存在列时添加。这就是我正在做的事情,我想我在检查条件时做错了什么。
但是当我找到 column 它对我来说很好,但是当 column 不存在时tempNew1
我得到错误。
基本上,如果在 schema 中找不到标记,我根本不想使用 withColumn 。
安慰我在这里失踪。请帮我确定问题。
我得到的错误如下
线程“主”org.apache.spark.sql.AnalysisException 中的异常:无法解析“
AsReportedItem.fs:BookMark
”给定输入列:[IsAsReportedCurrencySetManually,
这也是我尝试过的
但无法使其充分发挥作用..
这是有效的,但我怎样才能为所有列编写它。
添加主数据框的架构
在列出现在架构中之后添加架构
apache-spark - Spark-Xml:Dataframe 中数组中的数组以生成 XML
我需要生成具有以下结构的 XML
如您所见,父节点将有子节点,子节点可能有孙节点。
https://github.com/databricks/spark-xml#conversion-from-dataframe-to-xml
我从 spark-xml 了解到,当我们有一个嵌套数组结构时,数据框应该如下所示
你能帮我用这个小例子来说明如何为我想要的 xml 制作一个扁平的 DataFrame。我正在研究 Spark 2.X Spark-Xml 0.4.5(最新)
我的架构
我的行 RDD 数据.. 不是实际代码,但有点像这样。
到目前为止,我已经尝试过父 WrappedArray 中的 WrappedArray,但它不起作用。
apache-spark - 每个零件文件中都会生成 Spark-Xml 根标记
所以我正在尝试生成一个具有以下结构的 XML。
现在我有下面的代码
当我运行它时,它会在指定目录中创建一个包含两个部分 00000 和部分 00001 的文件。每个文件中都有一个 Root 和 Row 标记。当我 copyMerge 零件文件时,它将复制那些 RootTag (n:Brands)。
每个零件文件如下所示。
我使用 FileUtil 来合并 partFile。
当我合并两个部分文件时,它就变成了。
如何避免此 RootTag 在每个零件文件中重复?
我不想使用repartition(1)
,因为我有一个庞大的数据集,而单个工作人员将无法处理它。