Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 如何处理具有未知令牌长度的CSV文件_Scala_Hadoop_Cascading_Scalding - Fatal编程技术网

Scala 如何处理具有未知令牌长度的CSV文件

Scala 如何处理具有未知令牌长度的CSV文件,scala,hadoop,cascading,scalding,Scala,Hadoop,Cascading,Scalding,我正在编写一份非常重要的工作,以以下格式转换数据: Id,Name,Param1,Val1,Param2,Val2....ParamxValx 1,Cat,Hair,White,Eye,Blue... 进入: 我的问题是,我不知道给定行中可能存在多少Param/Val项。但我知道他们是CSV。我如何编写一个烫手的/MR作业来转换我的数据 我所读到的所有内容都建议执行以下操作: Csv(“data.Csv”、“productID”、“price”、“quantity”)。读取 但是在这种情况下,

我正在编写一份非常重要的工作,以以下格式转换数据:

Id,Name,Param1,Val1,Param2,Val2....ParamxValx
1,Cat,Hair,White,Eye,Blue...
进入:

我的问题是,我不知道给定行中可能存在多少Param/Val项。但我知道他们是CSV。我如何编写一个烫手的/MR作业来转换我的数据

我所读到的所有内容都建议执行以下操作:

Csv(“data.Csv”、“productID”、“price”、“quantity”)。读取


但是在这种情况下,我需要知道我的CSV文件的“模式”,而我不知道,因为每行可能有任意多个Param/Val条目。

你想做什么?必须存在某种模式,即使该模式具有不同数量的列。如果您手动读取文件,您是否能够理解它?不要将文件作为CSV读取。将其读取为TSV(基本上是单个字段),并在代码中根据
对其进行拆分。根据生成的令牌执行其余操作。
Id,Name,Param,Val
1,Cat,Hair,White
1,Cat,Eye,Blue