scala - Scala :: 读取具有不同模式信息的多个镶木地板文件
问题描述
我有一个要求,我必须读取 HDFS 中不同目录中的镶木地板文件。目录按客户端细分,每个客户端都有不同的模式(命名约定)。
我正在使用 scala 将这些文件读入数据框。有没有一种方法可以通过使用客户端名称作为输入参数来动态更改输入字段名称。我有近 30 个客户可供阅读。
提前致谢
解决方案
StructType
您可以首先使用类https://spark.apache.org/docs/latest/sql-programming-guide.html#programmatically-specifying-the-schema以编程方式构造模式,然后执行类似的操作
spark.read.schema(myGeneratedSchema).parquet(path)
推荐阅读
- c# - 如何处理新的 ConnectAsync API (C# Neo4jClient)
- tensorflow - 为什么安装 cuda 10.0 时 tensorflow 会寻找 cuda10.1?
- c# - 如何删除 OpenCvSharp、Cv2.ImShow()、c#、wpf 中的标题栏
- javascript - 我如何使用 IIS 使 MongoDB 工作(MERN APP)
- javascript - 如何基于某个类(javascript/jQuery)动态添加段落?
- python - 如果有的话,如何替换字符串中的最后一个数值
- python - Cartopy:'numpy.ndarray'和'numpy.ndarray'-人口识字的地理绘图
- python - pytorch 数据加载器的示例或解释?
- java - 简单的 java 类型推断失败
- reactjs - 使用静态路由器的动态选项卡导航器