如何仅使用 U-SQL 和文件中的某些字段将大文件分区为文件/目录?

2023-12-01

我有一个非常大的 CSV,其中每一行都包含客户和商店 ID,以及交易信息。当前的测试文件约为 40 GB(大约 2 天),因此对于选择查询的任何合理返回时间来说,分区是绝对必须的。

我的问题是:当我们收到一个文件时,它包含多个商店的数据。我想使用“虚拟列”功能将此文件分离到相应的目录结构中。该结构是“/Data/{CustomerId}/{StoreID}/file.csv”。

我还没有让它与 OUTPUT 语句一起使用。语句的用法是这样的:

// Output to file
OUTPUT @dt
TO @"/Data/{CustomerNumber}/{StoreNumber}/PosData.csv"
USING Outputters.Csv();

它给出以下错误:

Bad request. Invalid pathname. Cosmos Path: adl://<obfuscated>.azuredatalakestore.net/Data/{0}/{1}/68cde242-60e3-4034-b3a2-1e14a5f7343d

有人尝试过同样的事情吗?我尝试连接字段中的输出路径,但这是不行的。我考虑过将其作为一个函数(UDF)来实现,该函数接受两个 ID 并过滤整个数据集,但这似乎效率非常低。

预先感谢您的阅读/回复!


目前,U-SQL 要求必须在编译时理解脚本的所有文件输出。换句话说,无法根据输入数据创建输出文件。

我们正在积极努力,争取在 2017 年晚些时候发布基于数据的动态输出。

同时,在动态输出功能可用之前,完成您想要的模式需要使用两个脚本

第一个脚本将使用 GROUP BY 来识别 CustomerNumber 和 StoreNumber 的所有唯一组合并将其写入文件。

然后,通过使用脚本或使用我们的 SDK 编写的工具,下载之前的输出文件,然后以编程方式创建第二个 U-SQL 脚本,该脚本为每对 CustomerNumber 和 StoreNumber 提供显式 OUTPUT 语句

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何仅使用 U-SQL 和文件中的某些字段将大文件分区为文件/目录? 的相关文章

随机推荐

  • 如何在 Froyo 中检测设备的准确方向?

    我试图暂时锁定 Android 设备的方向 大多数时候它会随着传感器的变化而变化 所以我想做的是弄清楚当前的方向 横向 反向横向 纵向 反向纵向 是什么 将方向更改为该方向 然后将其改回原来的方向 我知道我可以使用诸如 int 方向 thi
  • Python 3 异常处理抛出错误

    我上周开始学习 python 但我无法弄清楚这里出了什么问题 def add x y Adds 2 numbers and returns the result return x y def sub x y Subtracts 2 numb
  • PHP 中的详细正则表达式?

    在 php net 上搜索我找不到任何支持详细的正则表达式在 PHP 中 这是我不知道如何搜索它的错 还是php没有实现它的错 如果php缺少这个功能 除了将正则表达式分成更小的段之外 还有其他方法来注释正则表达式吗 您还可以在正则表达式中
  • 将大型文本 (xyz) 数据库拆分为 x 个相等的部分

    我想拆分一个大型文本数据库 约 1000 万行 我可以使用类似的命令 sed i e 4 s dB e 4 s Best unit Best Unit e 1 3 d cygdrive c Radio Mobile Output TRC T
  • TensorFlow 中 sigmoid 后跟交叉熵和 sigmoid_cross_entropy_with_logits 有什么区别?

    当尝试使用 sigmoid 激活函数获取交叉熵时 两者之间存在差异 loss1 tf reduce sum p tf log q 1 loss2 tf reduce sum tf nn sigmoid cross entropy with
  • Mysql 5.5.10 - Mac 10.6.x - 自动启动

    我正在尝试在我的 mac pro 上自动启动 mysql 5 5 10 社区服务器 gpl 我读过这个论坛上的几个帖子 我仍然感到困惑 因为这些线程引用了一个文件 Library StartupItems MySQLCOM 我好像没有这个文
  • 无法将自定义日志添加到 Log Analytics

    大家好 我无法添加自定义日志日志分析 gt 高级设置 gt 数据 gt 自定义日志 尽管在连接的资源中显示我的计算机已连接 我错过了什么吗 PS 我使用的是azure Trail帐户 目前 自定义日志处于预览状态 您需要先在 OMS Por
  • sum 函数返回的结果与显式循环不同

    我正在将 f77 代码转换为 f90 代码 部分代码需要对 3d 矩阵的元素求和 在 f77 中 这是通过使用 3 个循环 通过外部 中间 内部索引 来完成的 我决定使用 f90 内在和 3 次 来完成此操作 令我惊讶的是答案不同 我正在使
  • 如何在 iOS gui 自动化中检查元素属性?

    所有 UI 自动化examples我见过使用标准组件 可以使用 JavaScript API 检查其状态value 方法 这有点限制 假设您想检查颜色或 alpha 值等 如何检查视图的属性 一个例子 点击某个元素应该使其 被选中 我想点击
  • 如何将 JSON 传递到 Azure 函数并在 Azure 数据工厂 V2 中嵌入动态内容

    在 ADFv2 中 我查找日期并将其传递给 Azure 函数 我可以像这样传递数据 activity GetLastDateProcessed output firstRow LastDateProcessed 但是 如果我将其嵌入到 JS
  • 在现有状态转换期间无法更新

    当我加载流星项目时 我的浏览器不断崩溃 如果我注释掉 我只能避免浏览器崩溃this setState input 36 currentApp input 36 在 App jsx 文件中 有人可以告诉我如何修复我的代码 以便项目可以加载而不
  • Python 间隔三角形

    我应该编写一个最终结果如下的程序 我已经为常规代码编写了代码 但我不确定如何将空格合并到其中 def triangle i t 0 if i 0 return 0 else print t 1 i 2 1 return triangle i
  • 比较 Google 电子表格上的行

    我想在同一个电子表格的两个不同工作表中识别相同的行 我尝试了下面的代码 它不起作用 function getMyEqualRows var ss SpreadsheetApp getActiveSpreadsheet var sheet1
  • 向 Android 可穿戴设备发送数据

    我正在尝试将字符串数组从手机发送到我的穿戴设备 我在手机上创建了一项服务 该服务应该使用以下代码发送数据 public class SendDataService extends Service private static final S
  • PyGTK隐藏光标

    问题很简单 如何使用 PyGTK 隐藏活动窗口上的光标 这是我为学习这一点而制作的一个基本应用程序 usr bin env python import gtk class app def init self window gtk Windo
  • 运行默认的 Gluon 项目后出错 (: dex FAILED)

    我下载了 Netbeans 的 Gluon 插件 以将 JavaFX 应用程序部署到 Android 它在桌面上成功运行 但是当我执行android任务 它会抛出错误 Executing gradle android compileJava
  • 如何读取我的 BLE 设备的所有特性值?

    我正在使用 Android Studio 构建一个应用程序 可以从设备 BLE 读取值 该设备有 4 个服务 第四项服务有3个特点 我想了解第四项服务的所有特征 该设备可以发送更多信息 因此我希望应用程序可以存储从设备 BLE 到达的所有信
  • 获取 ASP.NET vNext 中的当前 MethodBase

    我正在将开源库从常规 NET 4 Client Profile 移植到 DNX Core 5 0 有相当多的库更改 属性或方法被移动或完全删除 我看过这个答案但它在我的情况下不起作用 因为该方法已被删除 问题之一我有一段代码MethodBa
  • vimomnicppcomplete 模式未找到

    我在我的电脑上安装了vim7 3 在Windows 7下 我想使用自动完成插件 我进行了大量搜索 发现 Omnicppcomplete 是最适合的 所以我遵循了这个教程 安装 OmniCppComplete 插件 我的 vimrc 配置文件
  • 如何仅使用 U-SQL 和文件中的某些字段将大文件分区为文件/目录?

    我有一个非常大的 CSV 其中每一行都包含客户和商店 ID 以及交易信息 当前的测试文件约为 40 GB 大约 2 天 因此对于选择查询的任何合理返回时间来说 分区是绝对必须的 我的问题是 当我们收到一个文件时 它包含多个商店的数据 我想使