在 Wren AI 团队,我们从用户那里听到最常见的问题是:“我们可以将 Wren AI 的文本转SQL解决方案直接连接到原始数据吗?既然 AI 可以搞定一切,数据建模是不是就不需要了?” 现代 AI 驱动的工具(如 Wren AI)确实彻底改变了我们与数据交互的方式,但数据建模不再重要的想法是一种误解。恰恰相反,干净、结构良好且面向业务的数据集比以往任何时候都更加重要。没有这个坚实的基础,AI 解决方案将难以将自然语言查询转化为可靠的洞察。
在本文中,我们将解释为什么数据建模在文本转SQL时代并未消亡,强调仅依赖原始数据的局限性,并展示您如何仍能借鉴传统商业智能的最佳实践来优化您的 Wren AI 实施。目标不是消除建模,而是利用建模,以便 Wren AI 能够提供您的业务用户所期望的准确、直观且可操作的分析体验。
数据分析始终是将原始信息转化为可操作洞察的过程。在历史上,这个过程需要专业的数据分析师和 BI 开发人员编写复杂的 SQL 查询、构建语义层并仔细建模数据。近年来,文本转SQL工具应运而生,预示着一个与数据直接、自然语言交互的新时代。
但随着这些技术的进步,一个问题经常出现:数据建模是否已死?毕竟,如果任何人都可以用简单的英语提问并获得答案,为什么还要费力进行复杂的数据建模、构建语义层或预计算指标呢?
现实是,数据建模比以往任何时候都更加关键。尽管 Wren AI 等文本转SQL解决方案为数据消费者提供了一个强大的新界面,但它们建立在坚实、结构良好的数据基础之上时才能发挥最大效用。在本文中,我们将探讨文本转SQL当前的局限性,讨论数据建模为何仍然至关重要,并提供传统 BI 实施中的具体示例。我们还将概述如何利用您现有的建模工作最大化 Wren AI 的效益——确保数据民主化不会以牺牲准确性、一致性和可靠性为代价。
传统的商业智能(BI)通常涉及专业工具和技能集:数据分析师编写 SQL 查询,BI 开发人员创建仪表板,以及数据工程师管理 ETL/ELT 流水线。这意味着业务用户——产品经理、营销专业人士或销售高管——必须依赖中间人来获取他们所需的洞察。文本转SQL工具应运而生,以应对这一瓶颈,承诺让任何人都能直接与数据交互。
用户只需输入,而无需编写复杂的 SQL 查询
“显示第三季度按产品类别划分的总收入,并突出显示前五大类别。”
文本转SQL工具会解释此请求,将其翻译成 SQL,然后返回结果。
然而,这里有一个关键点:工具必须知道“收入”意味着什么,产品如何与类别关联,Q3 指的是哪个时间范围,以及“前五”意味着什么。如果您的底层数据是一个由命名晦涩的表和列组成的混乱网络,例如 tbl_trx_2023
、cust_id_num
、cat_desc_var1
等,文本转SQL引擎将会非常吃力。它可能会误解字段、产生不正确的逻辑,或者无法返回任何有意义的结果。
这正是传统数据建模发挥作用的地方。
在传统的商业智能设置中,数据建模将原始源表转化为业务友好的数据集。例如,假设您有一个存储产品销售的事务系统。您的原始数据可能分散在多个表中
order_id
, customer_id
, product_id
, quantity
, price
product_id
, category_id
, sku
, description
category_id
, category_name
customer_id
, region
, industry
对于数据库管理员或数据工程师来说,这些模式可能很直观。但对于只想了解按产品类别划分的总收入的业务用户来说,这并不直观。在传统的 BI 环境中,数据建模师会
• 逻辑地连接这些表,并创建一个事实表 fact_sales
,其关键维度链接到 dim_products
、dim_categories
和 dim_customers
。
• 将字段重命名为更友好的名称:使用 product_category
代替 category_name
,使用 total_revenue
代替 sum(price*quantity)
。
• 应用一致的定义:确保“revenue
”始终表示 sum(quantity * price)
,并且产品类别是标准化的。
当您在此基础上添加 Wren AI 这样的文本转SQL解决方案时,这些建模工作可确保用户提问“上季度按产品类别划分的总收入是多少?”时,工具能够轻松地将这些术语映射到定义明确、有意义的字段。
传统的 BI 实施通常包含语义层或元数据存储库。Looker、Tableau 数据建模或 Power BI 的数据模型等工具允许开发人员预先定义度量(如收入、利润率或流失率)和维度(时间、产品、区域)。通过这样做,终端用户无需理解原始 SQL 或复杂逻辑——他们可以将预定义的度量和属性拖放到仪表板画布上。
在 Wren AI 文本转SQL场景中,这个语义层变得更加关键。用户使用的不是仪表板画布,而是会话界面。当他们要求“月环比收入增长”时,Wren AI 会查找预定义的度量定义以及表达月环比增长如何计算的数据模型。没有这个,文本转SQL系统可能难以正确推断如何计算增长率或比较月份。
在传统的 BI 中,数据工程师通常会预先计算某些指标或创建汇总表以加快查询速度。例如,您可以构建一个每日汇总表,按类别和日期存储收入。通过这样做,您可以消除每次有人运行查询时动态重新计算这些总计的需要。
有了 Wren AI,预计算和确定性数据集使得自然语言查询更加准确。想象一下用户问道
“显示我过去三个月的平均订单价值及其变化情况。”
如果您已经预先计算了一个包含平均订单价值每日或每月汇总的表,Wren AI 可以快速准确地响应。如果没有,该工具将不得不从原始事务数据中动态计算逻辑,这会增加歧义或错误的风险——尤其是当原始数据未得到完美建模时。
一个健全数据模型的重要原则是治理。通过标准化定义和确保一致的命名约定,您可以减少混淆。传统的 BI 项目通常涉及数据治理委员会、命名约定和仔细的文档。这些最佳实践不会随着 Wren AI 的出现而消失——它们变得更加重要。
为什么?因为当有人向 Wren AI 提问时,他们依赖于易于理解的术语。如果一个团队用“收入”表示净销售额减去退货,而另一个团队用“收入”表示总销售额,系统就需要知道使用哪个定义。数据建模和治理确保了这些定义的标准化,创建了一个 Wren AI 可以自信引用的单一事实来源。
让我们考虑一些传统 BI 实施中的典型场景,以及它们如何映射到 Wren AI 的设置。
传统 BI 方法
fact_sales
表,包含 date_key
、product_key
、customer_key
以及度量,如 sales_amount
和 quantity_sold
。dim_date
、dim_product
和 dim_customer
表标准化了日期、产品和客户的表示方式。Wren AI 方法
fact_sales
和 dim_product
表稳定、定义良好,并包含您业务关心的所有标准指标。fact_daily_revenue
表,按日期和产品类别汇总总销售额。date_key
上的过滤器,将“收入”映射到 sales_amount
,并将“产品类别”映射到 dim_category
表,从而返回即时、正确的结果。传统 BI 方法
fact_customer_activity
表,其中包含预计算的标志或指标,用于识别客户每月是否活跃或流失。Wren AI 方法
churned_customer
作为布尔值或细分标签。churned_customer
标志和时间维度以提供准确结果。传统 BI 方法
fact_inventory
表来跟踪库存水平、再订货点和欠单。dim_product
和 dim_supplier
有助于将产品与供应商关联,而 dim_date
提供了时间维度。stockout_rate
”或“average_lead_time
”之类的指标。Wren AI 方法
fact_inventory_agg
表,存储每日库存水平和缺货计数,Wren AI 可以立即回答:“上周供应商 X 的缺货率是多少?”stockout_count / total_items_sold
),Wren AI 将不得不尝试从原始表中推断,这可能会导致混淆。一个常见的误解是,如果您的数据已经在关系数据库中,就万事俱备了。但原始的关系模式通常是为事务处理设计的,而不是为商业智能设计的。表可能以复杂的方式规范化,或以开发者友好的术语而非业务术语命名。外键和关系可能存在,但对于非技术用户来说可能不清楚。
Wren AI 的强项是自然语言查询——而不是神奇地从晦涩的模式中推断出您的业务规则。通过将原始表转换为面向业务的数据集,您可以减轻文本转SQL引擎的认知负担。当列和表具有有意义的名称时——例如使用 sales_amount
而不是 col_x56
,使用 product_category
而不是 cat_desc_var1
——Wren AI 可以更有效地将用户意图映射到数据元素。
此外,在您的转换流水线中预计算逻辑消除了歧义。如果您知道“上季度收入”总是衡量上季度第一天和最后一天之间的销售总额,您可以将这些汇总存储在一个按季度索引的表中。然后,Wren AI 只需将过滤器应用于正确的数据集。这种预计算确保了自助服务用户能够获得准确结果,而无需每次都费力处理定义或原始数据。
您的流水线应已将数据提取、转换并加载到组织良好的模式中。花时间重命名列、清理数据异常并连接相关表。就像传统 BI 工具受益于干净、建模的数据一样,Wren AI 也是如此。
如果您的组织在 Looker 中使用了 LookML,在 Power BI 中使用了数据模型,或在 Tableau 中使用了语义层,同样的原则也适用。以符合您业务的方式定义您的指标、维度和层次结构。例如,将“年度经常性收入 (ARR)”存储在一个单独的指标表中,或将其标记为已知度量。这样,当用户查询时,Wren AI 就可以轻松识别“ARR”。
确定您的业务用户经常查询的顶级查询和指标。他们是否经常分析月经常性收入、平均订单价值、流失率或转化率?在您的数据流水线中预计算这些指标。这可能意味着创建按时间段、客户细分或产品类别索引的汇总表。结果是:从 Wren AI 获得更快、更确定的答案。
数据建模包括强制执行一致的命名约定和文档。确保您有一个数据字典,解释每个指标和维度的含义。这个字典既可以指导技术实施者,也可以在用户与 Wren AI 交互时作为参考。您的术语越一致,Wren AI 就越容易正确解释查询。
首次部署 Wren AI 时,观察用户如何与其交互。他们提出的问题是否与您的模型无法清晰映射?也许您需要添加一个新的语义定义或预计算一个不同的指标。就像传统的 BI 一样,数据模型会随着业务变化而演变。持续改进您的模型可确保 Wren AI 保持准确和有价值。
不要将文本转SQL和数据建模视为对立力量,而应将其视为互补关系。传统的 BI 实践——ETL/ELT 流水线、语义层、数据集市和汇总表——为 Wren AI 实现其可访问分析的承诺奠定了基础。
通过建立在经过验证的数据建模技术之上,Wren AI 成为您的下一代 BI 接口,赋能任何人访问经过整理、定义明确的数据。您的分析环境不再是令人困惑的表格集合,而是 Wren AI 可以轻松导航的一系列丰富、有意义的数据集。
像 Wren AI 这样的文本转SQL解决方案并未扼杀数据建模;它们提升了其重要性。这些新工具依赖于始终推动有效 BI 的基础工作——干净、结构良好的数据模型、预定义的业务逻辑、语义层和预计算指标。
换句话说,数据建模并未消亡;它是文本转SQL界面发挥作用必不可少的基础。通过将传统 BI 实施的经验——例如 ETL 流水线、语义层和指标定义——与 Wren AI 的前沿能力相结合,您可以创建无缝、自助服务的分析体验,既用户友好又达到企业级标准。
要点总结
最终,数据建模仍然是指导您的组织从原始信息走向可操作知识的蓝图。通过在这个坚实基础之上利用 Wren AI,您将两者兼顾:传统 BI 的严谨性和可靠性,以及自然语言查询的可访问性和便利性。
如果您还没有尝试过这种语义优先的文本转SQL解决方案的神奇之处,它可以彻底改变您的分析体验,我们邀请您探索 Wren AI 🙌。
您也可以在 GitHub 上的 Wren AI 开源项目 😍中深入了解我们的开源产品,并立即开始构建一个更直观、面向未来的数据环境。
立即使用 AI 为您的数据增能?!