Как написать символы UTF-8, используя массовую вставку в SQL Server?

Начиная с Spark 2.0, CSV может быть прочитан непосредственно в DataFrame.

Если файл данных не имеет строки заголовка, это будет:

val df = spark.read.csv("file://path/to/data.csv")

Это приведет к загрузке данных, но даст каждому столбцу общие имена, такие как _c0, _c1 и т. д.

Если есть заголовки, то добавление .option("header", "true") будет использовать первую строку для определения столбцов в DataFrame:

val df = spark.read
  .option("header", "true")
  .csv("file://path/to/data.csv")

Для конкретного примера предположим, что у вас есть файл с содержимым:

user,topic,hits
om,scala,120
daniel,spark,80
3754978,spark,1

Тогда следующее получится всего хитов по темам:

import org.apache.spark.sql.functions._
import spark.implicits._

val rawData = spark.read
  .option("header", "true")
  .csv("file://path/to/data.csv")

// specifies the query, but does not execute it
val grouped = rawData.groupBy($"topic").agg(sum($"hits))

// runs the query, pulling the data to the master node
// can fail if the amount of data is too much to fit 
// into the master node's memory!
val collected = grouped.collect

// runs the query, writing the result back out
// in this case, changing format to Parquet since that can
//   be nicer to work with in Spark
grouped.write.parquet("hdfs://some/output/directory/")

// runs the query, writing the result back out
// in this case, in CSV format with a header and 
// coalesced to a single file.  This is easier for human 
// consumption but usually much slower.
grouped.coalesce(1)
  .write
  .option("header", "true")
  .csv("hdfs://some/output/directory/")
20
задан Goran Jovic 31 March 2011 в 09:53
поделиться

1 ответ

Только для совместно использовать, у меня была подобная проблема, у меня были португальские диакритические знаки в файле, и BCP импортировала символы мусора. (например, ГЂ стал в” ґ), я попробовал-C почти всеми кодовыми страницами без успеха. После закрытия я нашел подсказку на странице справки MS BCP.

кодовые страницы Файла формата имеют приоритет над атрибутом-C

Средства, как которые в файле формата я должен был использовать "" в LastName, после того как я изменил кодовую страницу,-C 65001 атрибута импортировал файл UTF8 без любой проблемы

13.0
4
1       SQLCHAR             0       7       ","      1     PersonID               ""
2       SQLCHAR             0       25      ","      2     FirstName              SQL_Latin1_General_CP1_CI_AS
3       SQLCHAR             0       30      ","      3     LastName               ""
4       SQLCHAR             0       11      "\r\n"   4     BirthDate              ""
0
ответ дан 29 November 2019 в 22:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: