1

我必须使用 polybase 表将数据从 datalake 加载到 sql server 数据仓库。我已经创建了用于创建外部表的设置。我已经创建了位置为“/A/B/PARQUET/*.镶木地板/”。但我收到无效路径错误。在 PARQUET 文件夹下有名称为.parquet 的子文件夹,在该文件夹下有 .parquet 文件。因为没有名为 *.parquet 的路径。但是如何获取所有子文件夹(。镶木地板)在 PARQUET 文件夹下?有什么办法可以在 PARQUET 文件夹下获取所有包含 .parquet 文件的子文件夹。有人可以帮我吗?提前致谢。

CREATE EXTERNAL TABLE [dbo].[EXT_TEST1]
( A VARCHAR(10),B VARCHAR(20)) 
(DATA_SOURCE = [Azure_Datalake],LOCATION = N'/A/B/PARQUET/*.parquet/',FILE_FORMAT =csvfileformat,REJECT_TYPE = VALUE,REJECT_VALUE = 1)

folder structure:
A->B->PARQUET->asdfolder.parquet-> file1.parquet
             ->dfgfolder.parquet-> file2.parquet
             ->shdfolder.parquet-> file3.parquet
4

1 回答 1

1

请将位置更改为:

LOCATION = '/A/B/PARQUET'

Polybase 将加载该文件夹和子文件夹中的所有文件。唯一的例外是文件或文件夹以句点 ( .) 或下划线 ( ) 开头,如此_所述。

于 2019-04-18T14:33:53.510 回答