首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure数据湖分析工作从数据湖存储区读取数据失败

Azure数据湖分析工作从数据湖存储区读取数据失败
EN

Stack Overflow用户
提问于 2018-06-16 11:51:01
回答 2查看 254关注 0票数 0

我有一个CSV文件从Azure blob复制到Azure数据湖商店。成功地建立了管道,并复制了文件。

我试图从这里编写USQL示例脚本:

家庭->数据分析1->示例脚本->新作业

它给我看了默认脚本。

代码语言:javascript
复制
//Define schema of file, must map all columns
@searchlog = 
    EXTRACT UserId          int, 
        Start           DateTime, 
        Region          string, 
        Query           string, 
        Duration        int, 
        Urls            string, 
        ClickedUrls     string
FROM @"/Samples/Data/SearchLog.tsv"
USING Extractors.Tsv();

OUTPUT @searchlog 
TO @"/Samples/Output/SearchLog_output.tsv"
USING Outputters.Tsv();

注意:我在数据湖存储中的文件在这里:

Home->dls1->数据资源管理器->rdl1 1

如何在脚本中给出CSV文件的路径(我的CSV文件存储在中)。

另外,我希望将我的目标文件(输出)保存在数据湖存储区中。

如何修改脚本以引用数据湖存储路径?

编辑:

我已经修改了我的脚本如下:

代码语言:javascript
复制
//Define schema of file, must map all columns
@searchlog = 
EXTRACT ID1          int, 
        ID2           int, 
        Date          DateTime, 
        Rs          string, 
        Rs1        string, 
        Number            string, 
        Direction     string,
        ID3            int
FROM @"adl://rdl1.azuredatalakestore.net/blob1/vehicle1_09142014_JR.csv"
USING Extractors.Csv();

OUTPUT @searchlog 
TO @"adl://rdl1.azuredatalakestore.net/blob1/vehicle1_09142014_JR1.csv"
USING Outputters.Csv();

但是,由于附加错误,我的工作失败了:

此外,我还附加了我希望在工作中使用的CSV文件。示例CSV文件

CSV文件有什么问题吗?还是在我的剧本里?请帮帮忙。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2018-06-18 16:46:02

我认为,在从文件中提取数据时,可以传递一些附加参数来忽略标题行。

https://msdn.microsoft.com/en-us/azure/data-lake-analytics/u-sql/extractor-parameters-u-sql#skipFirstNRows

代码语言:javascript
复制
@searchlog = 
EXTRACT ID1          int, 
        ID2           int, 
        Date          DateTime, 
        Rs          string, 
        Rs1        string, 
        Number            string, 
        Direction     string,
        ID3            int
FROM @"adl://rdl1.azuredatalakestore.net/blob1/vehicle1_09142014_JR.csv"
USING Extractors.Csv(skipFirstNRows:1);

在所有场景中,修改输入文件可能是可能的,也可能是不可能的,特别是当输入文件被无法控制的涉众删除时。

票数 1
EN

Stack Overflow用户

发布于 2018-06-18 08:07:11

我跟着你的脚步重复你的问题。

我的样本数据:

代码语言:javascript
复制
ID1,ID2,Date,Rs,Rs1,Number,Direction,ID3
1,1,9/14/2014 0:00,46.81006,-92.08174,51,S,1
1,2,9/14/2014 0:00,46.81006,-92.08174,13,NE,1
1,3,9/14/2014 0:00,46.81006,-92.08174,48,NE,1
1,4,9/14/2014 0:00,46.81006,-92.08174,30,W,1

根据错误日志,我发现它不能解析标题row.So,我删除了标题行,一切都正常。

修改后的数据:

代码语言:javascript
复制
1,1,9/14/2014 0:00,46.81006,-92.08174,51,S,1
1,2,9/14/2014 0:00,46.81006,-92.08174,13,NE,1
1,3,9/14/2014 0:00,46.81006,-92.08174,48,NE,1
1,4,9/14/2014 0:00,46.81006,-92.08174,30,W,1

Usql脚本:

代码语言:javascript
复制
//Define schema of file, must map all columns
@searchlog = 
    EXTRACT ID1          int, 
            ID2           int, 
            Date          DateTime, 
            Rs          string, 
            Rs1        string, 
            Number            string, 
            Direction     string,
            ID3            int
    FROM @"/test/data.csv"
    USING Extractors.Csv();

OUTPUT @searchlog 
    TO @"/testOutput/dataOutput.csv"
    USING Outputters.Csv();

输出:

希望它能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50887660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档