Azure数据仓库PolyBase文件格式

时间:2016-07-25 09:52:05

标签: azure-sqldw parallel-data-warehouse

我们有一个如下所示的文件:

Col1,Col2,Col3,Col4,Col5
"Hello,",I,",am",some,data!

因此具有以下'属性':

  • 逗号分隔
  • 双引号列分隔符
  • 部分专栏中的逗号

现在,我不确定它是否真的可以通过PolyBase摄取它,但是想知道是否有办法?

我们目前看到的错误是" Could not find a delimiter after quote" ..我猜是因为在双引号之后它正在达到预期的分隔符..

以下是我们当前的文件格式,为了完整性:

CREATE EXTERNAL FILE FORMAT Comma
WITH (FORMAT_TYPE = DELIMITEDTEXT,
      FORMAT_OPTIONS(
          FIELD_TERMINATOR = ',',
          STRING_DELIMITER = '"',
    )
)

2 个答案:

答案 0 :(得分:1)

请以十六进制指定。

STRING_DELIMITER = '0x22'

(基于某人在https://msdn.microsoft.com/en-au/library/dn935026.aspx末尾描述的问题)

答案 1 :(得分:1)

最后通过添加中间步骤将文件从csv转换为ORC格式来对此进行排序。

它有点笨重(因为它留下了一堆副本),但PolyBase然后使用fileformat:

CREATE EXTERNAL FILE FORMAT Orc
WITH (FORMAT_TYPE = ORC)

目前有效,直到产品小组解决:https://feedback.azure.com/forums/307516-sql-data-warehouse/suggestions/10600132-polybase-allow-field-row-terminators-within-strin