当你将 Snowflake 或 Databricks 连接到 Perplexity 时,Computer 会生成一个 Data Map 您的数据仓库或湖仓。Data Map 会捕获有关您的数据模型的关键信息——重要的表和列、常见的查询模式,以及对象之间的关系——从而让 Computer 能将自然语言问题转换为准确的查询。
可以把它看作一张数据环境地图,帮助 Computer 理解哪些内容存放在哪里,以及通常如何使用。生成后,Data Map 会随着时间持续优化:它会从用户反馈中学习,可由管理员直接编辑,并且支持版本管理,因此始终可以审查更改并回滚。
工作原理
一旦启动 Data Map 生成,Computer 会利用您已连接账户的权限来探索您的数据模型。此过程会检查您的架构、表、视图以及历史使用模式,以构建对您数据的全面理解。
Data Map 安全地存储在按组织划分、带版本控制的仓库中,仅您所在组织的成员可访问。每一次更改——无论是重新生成、管理员编辑还是自学习更新——都会被记录下来,以便进行审查和回滚。
生成 Data Map
有 每个组织仅一个 Data Map,由该组织的每一位成员共享。当管理员执行生成时,代表的是整个组织,而不是某个单独用户。
Snowflake
Snowflake 的 Data Map 生成由组织管理员在 Snowflake 连接器设置中发起。Perplexity 提供两个 Snowflake 连接器,管理员可通过其组织已配置的任一连接器生成 Data Map:
-
Snowflake (密钥对或 PAT)— 查询将以配置的服务账户身份运行。
-
Snowflake(用户 OAuth) — 查询以发起生成的管理员的 Snowflake 身份运行。
所使用的任何身份都必须能够读取 Snowflake 的账户使用视图(参见 要求 (如下)。如果这些授权缺失,生成会在一开始就失败,并明确提示权限错误,而不会生成不完整的 Data Map。
Databricks
对于 Databricks,生成会从连接器设置中使用发起人的 Databricks OAuth 身份启动。Computer 会枚举用户在 Unity Catalog 中可见的目录、架构和表,并读取 Databricks 系统表以获取使用信号。发起人能在 Unity Catalog 中看到的内容,决定了最终会出现在 Data Map 中的内容。
补充背景信息(Snowflake 和 Databricks)
你可以添加 补充上下文 — 上传文件或添加说明数据的备注(例如,关键表分别表示什么、业务定义、常见查询模式)— 以帮助 Computer 更准确地解读您的数据。补充上下文会在每次生成运行中传入,并且是 不受再生影响,因此您可以随着时间不断添加内容,而无需担心丢失。
查看知识
生成完成后, 生成 Data Map 连接器弹窗中的按钮变为 查看知识。点击 查看知识 打开该 Data Map 编辑器,管理员可以在这里浏览、编辑并管理 Computer 已了解的关于您数据的所有内容。 重新生成 Data Map 在初始 Data Map 存在后,也可通过连接器弹窗获取——参见 重新生成 Data Map 它的作用以及保留的内容。
需要多长时间?
生成数据映射可能需要 最多 90 分钟,具体取决于您的数据仓库或湖仓的规模和复杂程度。您无需保持页面打开——该过程会在后台运行,并且 查看知识 连接器弹窗完成后,按钮将会出现。
Data Map 编辑器
Data Map 编辑器是面向管理员的 Data Map 视图,可通过组织管理工具访问。它将 Snowflake 和 Databricks 知识划分为不同部分,而底层业务上下文、表集群和查询模式则整理为可直接读取和编辑的文件。
在编辑器中,管理员可以:
-
浏览 完整的 Data Map——业务背景、表簇、常见查询模式。
-
编辑 直接对文件进行修改。保存的编辑会立即应用到实时 Data Map,并成为新的权威依据;它们无需经过审核流程。
-
审查并处理 AI 提议的更改 来自自学习管道。管理员可以 批准 提案(更改将应用于 Data Map)或 拒绝 它(该提案将被丢弃)。目前不支持在批准前直接就地修改提案——希望获得不同结果的管理员可以先拒绝,然后由自己进行编辑。
-
查看版本历史 任何文件的内容,并在需要时回滚。
在编辑器中的直接编辑适合正常使用且可持久保留,但它们与自动生成的内容并存,而且 如果你为该仓库重新生成 Data Map,则不会保留这些内容 — 见 重新生成 Data Map 下面。
从反馈中自我学习
Data Map 会随着你的团队使用得越多而变得越好。当用户在会话中纠正数据助手时——例如,“使用 fct_queries 而不是 query_events 用于查询次数\"或\"排除 type = 'internal' “来自查询量指标\”——Computer 会捕捉这些反馈,并利用它们改进 Data Map,惠及所有人。
该流程旨在 safe, 可供审核,和 在整个组织范围内共享:
1. 捕获反馈
当用户在 Data Scientist 会话中提供反馈时,Computer 会记录一条结构化更正——应受影响的文件、章节、建议的修改,以及生成该反馈的会话上下文。Data Map 本身绝不会在用户会话中被实时编辑;反馈始终只会先进入这条日志。
2. 每日压缩为建议更新
每天一次,Computer 会查看各组织在过去 24 小时内记录的更正,并生成一个单一的汇总 “建议的更新” 到 Data Map:
-
对同一区域进行多次更正 已合并 合并为一次编辑。
-
冲突的更正 (例如,一个写着“始终包含 cron 作业”,另一个写着“始终排除 cron 作业”)是 留待人工审核 而不是自动解决。
-
每次更正都是 路由到正确的仓库 — 针对 Snowflake 的更正不会影响到 Databricks Data Map,反之亦然。
-
无法自信合并或路由的更正会被标记给管理员查看,而不会悄悄应用。
结果会在 Data Map 编辑器中显示为一项供管理员审核的单一建议。
3. 管理员审核
管理员 批准 提案(更改已应用于 Data Map)或 拒绝 (该提案将被丢弃)。批准后才会“部署”这些更改——你们团队随后提出的下一个数据问题将使用更新后的 Data Map。没有单独的发布步骤。
这种人在回路中的模式是有意为之:它让 Computer 能够在真实使用中持续学习,同时让管理员始终掌控哪些内容被信任为事实依据。
谁可以执行什么操作?
-
任何用户 在数据科学家会话中,可以提供反馈,从而影响第二天建议的更新。
-
组织管理员 可以直接浏览和编辑 Data Map 文件,并在 Data Map 编辑器中批准或拒绝每日建议的更新。
-
有 每个组织仅一个 Data Map — 组织中的每位成员都查询同一个共享 Data Map。不存在按用户划分的 Data Map。
重新生成 Data Map
管理员可以运行 重新生成数据映射 可随时在连接器弹窗中进行。如今,重新生成是一项 为你重建仓库,从零开始进行再生:
-
该仓库的 Data Map 已被新的结果完全替换。 对该仓库的 Data Map 所做的手动管理员编辑不会被保留。
-
其他仓库的 Data Map 保持不变——重新生成 Snowflake 不会影响 Databricks,反之亦然。
-
补充上下文 会被保留并重新应用于新的运行。
-
等待反馈 “(当天已记录但尚未汇总到拟议更新中)”会被保留。已获批准并应用到 Data Map 的反馈,是被替换内容的一部分。
-
完整版本历史会被保留,因此 Data Map 的之前版本仍可查看。
由于重新生成会替换仓库的数据映射以及管理员对此所做的任何编辑,因此应有意执行。 更安全的重新生成方式可保留管理员的编辑——以及一个单独、明确的“完全重置”——已列入路线图,但目前尚未在产品中提供。
要求
Snowflake
用于生成数据映射的身份——对于密钥对/PAT 身份验证,是服务账号;对于 OAuth 身份验证,是发起管理员的 Snowflake 用户——必须能够读取这两个视图中的内容。 SNOWFLAKE.ACCOUNT_USAGE schema:
-
SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY -
SNOWFLAKE.ACCOUNT_USAGE.ACCESS_HISTORY(Snowflake Enterprise Edition 或更高版本)
重要: ACCOUNT_USAGE 默认情况下仅管理员可用。生成失败的最常见原因是某个角色可以读取常规数据库,但无权访问 ACCOUNT_USAGE。解决方法是授予 IMPORTED PRIVILEGES 在……上 SNOWFLAKE 数据库。
如果你在初始设置期间还没有授予此访问权限,请将以下内容以如下方式运行: ACCOUNTADMIN:
GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO ROLE <your_role>;
然后从连接角色进行验证:
SELECT 1 FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY LIMIT 1; SELECT 1 FROM SNOWFLAKE.ACCOUNT_USAGE.ACCESS_HISTORY LIMIT 1;
如果 ACCESS_HISTORY 不可用(Snowflake Standard Edition)时,生成会回退到 QUERY_HISTORY 单独使用。Data Map 仍然可以正常工作,但在列血缘和表访问次数方面的信号精度会略低一些。
如需完整设置说明,请参阅 将 Perplexity 与 Snowflake 连接.
Databricks
Databricks 生成会使用发起者的 OAuth 身份,并继承其 Unity Catalog 权限——无需额外授权。以下是一些实用注意事项:
-
需要 Unity Catalog。 Computer会读取 Databricks 系统表中的查询历史记录,这些记录依赖于 Unity Catalog。仅运行在
hive_metastore将在生成过程中未通过访问检查。 -
A SQL 仓库必须正在运行 生成开始时。如果当前没有运行中的仓库,请先在 Databricks 中启动一个。
-
在 Unity Catalog 中,发起人可见的内容决定了最终会出现在 Data Map 中。如果某个目录或 schema 对该用户是隐藏的,Computer 就无法将其包含在内。
如需完整设置说明,请参阅 将 Perplexity 连接到 Databricks.


