将包含 Parquet 文件的文件夹转换为 SQL 表 您可以在任何地方进行查询
将查询流代理指向该文件夹。它会在自己的计算机上读取文件,并在本地缓存中构建表,并随着文件的到达、更改或删除而保持表的更新。您可以从 Excel、Google Sheets、Nova、Claude 或 REST API 查询这些表。无需上传任何文件,也无需转换或编辑任何文件。
你最终会得到什么
例如,最终你会得到一个已定义的 SQL 表。 文件集.订单,其中包含文件夹中每个 Parquet 文件的行,列类型从文件页脚读取,并且 源文件 每行数据都对应一个文件名称列。无需安装 Parquet 查看器,也无需自行配置 DuckDB。代理程序会读取运行所在计算机上的文件,将数据行缓存到该计算机上,并以 SQL 查询的形式提供,因此文件始终保留在您的网络中。
随着时间推移而到达的文件
| sales_2026_07.parquet |
| sales_2026_08.parquet |
| sales_2026_09.parquet |
每个文件的行,一个表
| 源文件 | 行计数 | last_row_id |
|---|---|---|
| sales_2026_07.parquet | … | … |
| sales_2026_08.parquet | … | … |
| sales_2026_09.parquet | … | … |
所有内容都存储在一个名为“DuckDB schema”的模式中。 文件集缓存在代理计算机上。数据表会获取您的信息。 表名列和类型来自 Parquet 文件页脚。文件可以添加或省略列:表格包含所有已出现的列,文件缺少的列显示为 NULL。
| 桌子 | 它包含什么 |
|---|---|
文件集.订单 | 一张由你命名的表 表名包含每个匹配的 Parquet 文件的行,以及 源文件 和 _row_id 每一行。 |
Parquet 格式没有按布局模式:所有匹配的文件必须共享一个布局,如果某一列的类型在不同的文件之间不同,则会导致连接中断。每个文件夹连接器还会提供以下功能: 文件, 文件事件, 目录, 目录快照 和 卷列出了 Parquet 文件本身、其更改历史记录和文件夹大小。
它的价值所在:
你需要准备什么
查询流帐户
所有套餐(包括免费套餐)都包含文件夹连接器。免费套餐是永久有效的,并非试用期。文件夹可容纳的文件数量没有上限。
代理程序,2.6.0 或更高版本
安装在可以打开该文件夹的计算机上:文件服务器本身、办公计算机或文件所在的计算机。旧版代理程序会将文件夹卡片显示为灰色并带有“显示错误”字样。 代理 2.6.0+ 徽章。支持 Windows、Mac 或 Linux 系统。
代理程序看到的文件夹路径
本地路径或网络共享,写作 \\服务器\共享\文件夹. The Agent runs as a service, so it cannot see drives you mapped at your login (Z: and friends). On Windows it can sign in to a share with a login you store; on Linux or a Mac, mount the share first (Linux under /mnt 或 /媒体, a Mac under /Volumes).
工作在哪里进行? 在运行代理的计算机上,它会扫描文件夹,并将扫描的行复制到该计算机上的加密本地缓存(一个名为“name”的模式)。 文件集并针对该缓存运行所有查询。您的文件仅被读取,绝不会被修改、移动或上传。
分五步完成设置
在可以打开该文件夹的计算机上安装代理程序



登录,打开 下载然后在能够打开 Parquet 文件文件夹的计算机上安装系统代理:例如文件服务器,或者任何可以访问共享文件夹且始终在线的计算机。安装过程只需一分钟,安装完成后即可自动运行。您需要 2.6.0 或更高版本;下载页面始终提供最新版本。
为什么使用小型程序而不是驱动程序? 该代理程序只需安装一次,即可在 Windows、Mac 或 Linux 系统上运行(Windows 系统下约 85 MB,Mac 和 Linux 系统下略超过 100 MB)。它会打开一个与查询流的加密出站连接,这是它唯一需要的网络路径:无需打开入站端口,也无需 VPN。它会读取自身所在的文件夹,因此文件不会移动,只有查询返回的行数据才会通过互联网传输到您端的插件、浏览器或 AI 客户端。
下载页面显示 您的访问密钥当代理提示时,将其粘贴到代理中,然后等待徽章读取。 已连接到查询流这是你在代理人的电脑上唯一要做的事情;其他所有操作都在你的浏览器中进行。
-
将其指向包含 Parquet 文件的文件夹
返回浏览器打开 数据 → 数据代理找到您刚刚安装的代理,然后单击其 添加连接器 按钮。打开 文件和文件夹 药丸和选择 镶木地板文件夹 卡片。不确定哪张卡片合适?选择一张。 文件夹中的文件 相反:代理程序会扫描文件夹,在“我们发现了什么”页面上列出文件夹的内容,并为您打开预先填充好的正确卡片。
巫师跑 文件夹 → 检查 → 设置 → Realm → 查看。 在 文件夹:
- 根文件夹
- One path per line, as the Agent’s computer sees it. Each folder shows a status (reachable, denied, missing, unreachable, credentials invalid or not mounted) as soon as you add it. On a Windows Agent a share that needs a login gets one from the folder’s Credential column, stored once per server; on Linux or a Mac, mount the share first.
- 扫描子文件夹,最大深度
- 默认情况下,开启并有 8 个级别。
- 包含模式,排除模式
- 哪些文件有效?包含模式以该卡的正确通配符开头。一个连接器读取一种文件类型:包含 CSV 文件的文件夹。 和 Parquet 文件是同一个文件夹中有两个连接器,每种类型一个。
- 跟随符号链接和连接点
- 默认关闭。除非您启用此功能,否则代理程序不会遵循快捷方式或云端占位符。
从……开始 添加连接器 代理程序上的一个按钮,可以打开文件夹。打开 文件和文件夹 然后点击 镶木地板文件夹 卡片。
- 根文件夹每行一个文件夹,路径需与代理计算机上的文件夹路径一致。网络共享路径请填写为:
\\服务器\共享\文件夹而不是映射驱动器号。 - 包含模式 开始时
**/*.parquet. 扫描子文件夹 正在进行中 最大深度 8,因此读取分区文件夹树。 - A型 表名, 例如
命令此卡必须填写此项。 - 没有 表格布局 选择。注释解释说,所有匹配的文件必须共享一个布局,第一次同步会根据样本确定布局,之后不一致的文件将被忽略并上报。
-
查看它将建造什么
在 查看 代理程序读取最多 64 个文件的样本,并显示它将要构建的内容。目前尚未创建任何内容。按钮显示: 测试连接 在判决结果出来之前, 下一页; 再次测试 更改设置后,程序会重新运行样本。您将看到以下四个标题之一:
- 准备创建
- 每个抽样文件都符合要求。文件下方的芯片显示了可访问的文件夹数量、文件和行数,以及将要存在的表。
- 准备好了,附上笔记
- 部分文件将被搁置,或者布局嗅探将被拒绝。琥珀色横幅会明确指出具体是哪些文件:“{n} 个文件(共 {m} 个)将被搁置”。 找出需要哪些文件以及原因 列表中,“您仍然可以创建它——连接器将不断重新检查并在其清单选项卡上报告原因。”
- 需要关注
- 代理程序离线或缺少文件夹。请先解决此问题再继续;代理程序离线时,页面会显示此提示,但您仍然可以继续操作。
被拒绝或搁置的文件不会阻止您:点击 下一页完成向导后,稍后再修复异常文件。只有代理程序离线或文件夹缺失才会导致向导停止。
在 查看代理程序最多会抽取 64 个文件作为样本,并显示文件数量、大小、预计行数以及它将要构建的表格。此时尚未创建任何内容。样本中的类型必须一致;代理程序不会通过多数投票来固定类型。如果两个文件的列类型不一致,则标题会显示错误信息。 准备好了,附上笔记 琥珀色的横幅显示“模式嗅探被拒绝:{reason}”,并指明了不匹配的文件。您仍然可以创建连接器。它会持续重新检查,并在其上显示原因。 显现 按 Tab 键,直到修复或排除该文件为止。
-
选择扫描频率,然后创建它
默认值 设置 适用于每天接收少量文件的文件夹。以下四点您可能需要更改:
- 扫描间隔
- 每小时 默认情况下,扫描频率为每 5 分钟一次,也可选择每天一次。每次扫描都会比较文件大小和修改时间,以查找新增、已更改和已消失的文件。
- 监视文件夹更改(近乎实时)
- 默认关闭。启用后,代理程序会在几秒内响应本地磁盘;对于网络共享,响应速度会尽力而为,计划扫描仍是保证响应速度的手段。 静默期 (15 秒)等待文件写入完成。
- 请刷新页面后再回答查询
- 默认关闭。开启后,如果上次扫描时间早于查询时间,查询将首先重新扫描。 陈旧窗口 (60秒),最多等待 查询等待限制 (5 秒)。这适用于人员和插件,不适用于警报轮询。
- 文件消失时
- 删除它的行 默认情况下,或者 保留行,标记已删除(墓碑标记)。 这 消失的保护比率 (0.5)拒绝一次性丢失一半以上文件的扫描,并保留之前的库存,这就是离线共享的样子。
然后选择 数据领域 检查行数是否计入统计。 审查 并点击 创建连接器首次扫描立即开始。连接器的 显现 该选项卡显示它生成的内容以及它保存的任何文件。
-
看看你的表格
打开连接器: 显现 该选项卡列出了它创建的表格。 查询生成器 同样的桌子摆放在下面
文件集模式。三个第一天就能运行的查询:每个 Parquet 文件会增加多少行?SELECT _source_file, COUNT(*) AS row_count, MAX(_row_id) AS last_row_id FROM fileset.orders GROUP BY _source_file ORDER BY row_count DESC LIMIT 100
显示桌子后面的每个零件文件以及每个零件文件的贡献量。
按大小和最新文件对文件夹进行分区SELECT path, subtree_file_count, subtree_bytes, newest_file_utc FROM fileset.directories ORDER BY newest_file_utc DESC LIMIT 100
显示哪些分区文件夹最近接收了文件,以及每个文件夹的大小增长了多少。
是否有任何文件被拒绝或搁置?原因是什么?SELECT relative_path, event_type, detected_by, detail, event_at FROM fileset.files_events WHERE event_type IN ('refused', 'drift') ORDER BY event_at DESC LIMIT 20被拒绝的行表示无法固定布局;漂移的行表示缺少某些行的文件。
每个文件夹连接器也都服务于相同的记账表,所有这些表都在……
文件集模式:桌子 它包含什么 文件文件夹中当前所有文件的概览:路径、名称、扩展名、大小、创建和修改时间、首次和最后访问时间。 files_current它还会保留已消失的文件。文件事件变更历史记录:每行记录一个文件。 出现, 曾是修改的,消失了被搁置一旁(漂移)或曾是拒绝,随着时间推移事件以及它是如何被注意到的检测到原因在于细节.目录,目录快照,卷文件夹数量和大小、它们的增长方式,以及根目录所在的磁盘或共享文件夹。 源文件,_row_id每行数据包含两列:该行数据来自哪个文件,以及该文件内的一个固定行 ID。按以下方式分组 源文件比较文件。
就是这样。 将新文件放入文件夹,下次扫描后,该文件就会出现在数据库中。这些文件从未离开过它们所在的计算机。
Reaching a file on a network share
The Agent opens files as a background service, not as you, so a file on another computer needs one extra step. Which step depends on the computer the Agent runs on.
If the test cannot get to the share, look for these words in its result: unreachable means the Agent’s computer got no answer from the server. On Linux or a Mac, not mounted means the share still has to be mounted, and that message includes the exact mount command for your server.
Folders on a share? On Windows, one login covers every folder you add from the same server. 监视文件夹的更改 works on a share too, on a best-effort basis; the scheduled scan is what guarantees every change is picked up.
When a folder is not reachable
Every folder on the 文件夹 step shows a status as soon as you add it. Hover the status to read the Agent’s own message; its first words say which case it is.
| Status or message | 它的含义 | 该怎么办 |
|---|---|---|
| denied | The share did not let the Agent in. With no login stored, a Windows Agent reads as its service account, which a company domain sees as the computer itself. | Windows: click Service identity in the folder’s Credential column and store a login that can read the share, or ask whoever runs the server to give the stored one read access. Linux or Mac: the share is mounted, but its permissions keep the Agent out; check how it is mounted (Linux, 苹果). |
| credentials invalid,或 The stored credentials for \\server were refused | The server rejected the stored login: a typo, the wrong domain or a changed password. The Agent waits a minute before it tries that login again, so the account is not locked out. | Click the account name in the Credential column and type the login again. For an account made on the server itself, leave Domain blank. |
| 丢失的 | No folder at that path. On Windows, a server name that cannot be found, or a share the server does not have, also shows as missing. | Check the names, or pick the folder with Add folder from the agent instead of typing it. |
| unreachable,或 \\server did not answer | No answer from the server: it is off, the name is wrong, or a firewall blocks file sharing. | Open the same \\server\share path on the Agent’s computer. If that fails too, it is a network problem. |
| not mounted (Linux or Mac) | The share is not mounted on the Agent’s computer. Hover the status, or the Not mounted chip in the Credential column, for the exact mount command. | Mount the share (Linux, 苹果), then test the folder again. |
| Another connector on this agent already signs in to \\server as … | Windows allows one account per file server on each computer, and another connector on this Agent uses a different one. | Use the same login as that connector, or change it on every connector that reads this server. |
| Windows already holds a sign-in to \\server for … | Something else on the Agent’s computer is signed in to that server with another account, and the Agent never closes a sign-in it did not make. | Follow the message: it names the Windows account the Agent runs as and says whether Use service identity would read the share through the existing sign-in. |
| This agent build cannot sign in to \\server with stored credentials. | An older Agent that cannot use a stored share login. | Update the Agent, then test again. |
到处使用
连接器是查询流中的数据源,与其他数据源类似。只需在查询流中保存一次即可。 查询生成器 (该数据库方言为 DuckDB),并可从以下位置使用它:
Claude、Cursor 和其他人工智能客户端
通过 Query Streams MCP 服务器,Claude 了解文件夹模型,包括 源文件 和 文件事件. 通过 MCP 与 Claude 一起整理 Parquet Folder.
诺瓦
请用通俗易懂的英语询问商业计划书;Nova 可以根据其内置描述识别每个文件夹、表格和列。
文件夹表也可以连接到您的其他连接器:联合查询可以匹配 源文件 在同一代理上的数据库中,对 Parquet 文件文件夹中的名称或订单 ID 进行排序。
新建、更改和删除的文件如何显示
新增和已更改的文件
在每个 扫描间隔 (或在几秒钟内) 监视文件夹 (在)一个符合布局的新文件会被添加行并获得一个 出现 事件。已更改的文件会在一次事务中重新读取:删除旧行,导入新行,并获取一个 修改的 事件。
已删除的文件
默认情况下,消失的文件会删除其所有行;如果您选择了墓碑标记选项,则会保留已删除的行,并获得一个 消失了 事件。如果超过一半的文件一次性消失,扫描将被拒绝,之前的库存清单将保留:离线共享就是这样的。
预留文件
不符合布局、无法打开或超过上限的文件将被整体忽略:其所有行均不会加载。 文件事件 获得 漂移 指定文件和列的名称。修复文件并保存;下次扫描将再次尝试。
我所看到的景象有多新鲜?
查询结果来自上次扫描。没有“重新扫描”或“立即同步”按钮;扫描间隔、文件夹监视器和 请刷新页面后再回答查询 这是三个控制点。 MAX(last_seen_utc) 起 files_current 告诉你代理人上次查看的时间。
被搁置的文件
在“检查”步骤和“清单”选项卡上会出现三个词。它们的含义各不相同:
- 停放在一旁(停放)
- 文件与固定布局不符,或者文件无法读取、撕裂、锁定或超出限制。每个文件要么全部占用,要么全部不占用:已停放的文件不贡献任何行。
文件事件记录漂移行细节指定文件名和列名。如果文件大小和修改时间保持不变,则跳过该文件;一旦文件大小和修改时间发生变化,则立即重试。 - 无法阅读
- 代理程序无法打开或解析该文件,因为它的类型是:不是真正的工作簿,被其他程序锁定,是云端占位符,或是无法解码的字节。它自行停止运行,文件夹的其他部分继续处理。只有当文件夹内没有任何可读文件时,代理程序才会拒绝整个文件夹的处理。
- 拒绝
- 代理程序无法固定任何布局,例如,因为文件对列类型存在冲突。目前尚无数据表。
文件事件获得拒绝与原因争吵细节代理程序会在每次扫描时重试,直到布局固定为止。修复或排除它所指的文件,消息就会消失。
在哪里看:琥珀色的横幅 查看 (找出需要哪些文件以及原因),连接器的 显现 后面跟着制表符。在 SQL 中: SELECT relative_path, event_type, detail FROM fileset.files_events WHERE event_type IN ('drift','refused') ORDER BY event_at DESC.
对于一个通常如下所示的 Parquet 文件文件夹: 两个 Parquet 部件在一个文件中存储的同一列是 INT64 类型,而在另一个文件中存储的同一列是 DOUBLE 类型,因此无法固定,所以不会构建表,files_events 记录一个被拒绝的行,其中 relative_path 为 NULL,detected_by 为 'sniff',并详细列出了不一致的文件和列的名称。
值得了解的界限
文件夹数量或文件数量没有计划限制。与其他连接器一样,这些行也会计入您的数据域。您可以提高或降低连接器的默认设置:
| 环境 | 默认 | 它的作用 |
|---|---|---|
| 最大深度 | 8 | 扫描每个根目录下的文件夹层级(1-64)。 |
| 每次扫描最大文件数 | 100,000 | 一次性处理所有文件。 |
| 要哈希的最大文件大小 | 32 MiB | 只与此有关 哈希文件内容 在。 |
| 事件日志保留 | 30天 | 多久 文件事件 保留行。 |
| 每个根的扫描并行度 | 2 | 每个根目录一次读取一个文件夹。 |
内容上限是指文件会被暂存而不是截断:每个文件最多 2,000,000 行或 512 MiB,每次扫描最多 10,000,000 行或 2 GiB。一个文件夹最多可以容纳 25 种不同的布局。 每个布局一张桌子 模式。
人们提出的问题
Excel 可以打开 Parquet 文件吗?
不能单独打开;Excel 没有内置的打开程序。 镶木地板. 指出 a 镶木地板文件夹 而是使用文件夹中的连接器。代理读取文件并将其作为类型化的 SQL 表提供,例如 文件集.订单您可以像查询其他 Query Streams 表一样查询该表,然后将其导入 Excel 或 Google Sheets。
所有 Parquet 文件都需要完全相同的列吗?
不。文件可以添加或删除列,缺失的列会显示为 NULL。如果两个文件中的列类型不同,则会导致数据固定失败。代理程序会指出不一致的文件,并且在您修复或排除该文件之前不会构建任何表。
我可以在一个连接器中混合使用 Parquet 和 CSV 文件吗?
不,一个连接器只能读取一种文件类型。请在同一文件夹中添加第二个连接器,用于读取 CSV 文件:参见 合并多个 CSV 文件到一个表格中.
它是否处理类似 year=2026/month=09/ 这样的分区文件夹?
是的。 扫描子文件夹 已开启 最大深度 默认值为 8,因此根目录下的每个部件文件都会合并到同一个表中。每一行 源文件 保留相对路径,因此您可以使用以下方式按分区文件夹进行筛选: 喜欢 在那一栏上。
如何解决文件之间的类型冲突?
从琥珀色横幅或从其他位置读取文件名 拒绝 行 文件事件要么用匹配的类型重写该文件,要么将其添加到 排除模式 并保存。代理会在下次同步时重新嗅探,并在布局固定时清除该消息。
我的文件上传到哪里了吗?
不。代理程序在自己的计算机上读取这些文件,并将读取到的行保存在本地加密缓存中。程序会针对该缓存运行查询,只有查询返回的行才会通过一个出站连接离开计算机。文件不会被修改、移动或转换。
我需要开放端口还是运行 VPN?
不。代理程序会在 443 端口上建立一个出站连接,所有请求和数据行都会通过该连接传输。如果出站 HTTPS 连接正常,那么这种方式也正常。
文件夹可以位于网络共享上,或者位于 OneDrive 或 Dropbox 中吗?
Yes. Type a share as \\服务器\共享\文件夹, because the Agent runs as a service and cannot see drives mapped at your login. On Windows, store a login for the server if the share lets in only named people; without one the Agent reads as its own service account. On Linux or a Mac, mount the share first. A synced OneDrive or Dropbox folder works when its files are stored on the computer: set the folder to 始终将此设备放在身上代理程序不会下载仅存在于云端的文件。
文件夹里有不止一种类型的文件。是一个连接器还是两个?
一个连接器只能读取一种文件类型。包含 CSV 和 Parquet 文件的文件夹,其根目录下会有两个连接器,分别对应两种文件类型。不符合包含模式的文件会被忽略,而不是被单独保留。
是否有重新扫描按钮?
不。代理人扫描了 扫描间隔,对变化做出反应 监视文件夹 已开启,开启后会在回答查询前重新扫描。编辑连接器即可更改这三项设置中的任何一项。
免费套餐真的包含这些吗?
是的。免费版是永久有效的,不是会过期的试用版。文件夹连接器本身没有文件数量限制;行数与其他连接器一样计入您的数据域。请查看各套餐包含的内容。 定价页面.
每份指南 Parquet Folder
这不是你想要的配置?
- 您的数据是否已存在于 DuckDB 数据库文件中?DuckDB 连接器可以直接打开它 → DuckDB
- 只需要文件列表,包括文件大小、日期和更改记录?文件系统无需读取文件即可完成此操作 → File System
Setup trouble?
- Agent says the file or folder does not exist, or access is denied? Mapped drives, network shares, OneDrive and Linux home folders each need one fix → Where the Agent can read files from
- Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?

