У меня есть данные типа Decimal (38,16) в РСУБД.Я импортирую эти данные в HDFS (Hadoop) в формате паркетного файла.После этого я читаю этот файл паркета в код Spark.
val df = spark.read.parquet(<path>)
После загрузки данных в кадр данных Spark тип данных этого столбца преобразуется в double.Это округление значения столбца cnt
до 14 цифр после десятичной точки, а у меня 16 цифр после десятичной точки.
Схема:
scala> df.printSchema
root
|-- id: integer (nullable = true)
|-- cnt: double (nullable = true)
Чтобы решить эту проблему, я должен взять простой пример.
Например,
val dt = Array(1,88.2115557137985,223.7658213615901501)
Вывод:
scala> dt.foreach(println)
1.0
88.2115557137985
223.76582136159016
Но здесьЯ ожидаю, поскольку это данные без округления значения.
Заранее спасибо.