连接和查询多个数据源
本教程将指导您使用联合查询分析虚构的 Great Retail Company 的销售数据(存储在多个位置)。
简介
数据联合概述
数据联合是一个使多个数据库能够协同工作的软件过程。 它允许您混合来自多个来源的数据以获取见解。 它允许您通过单个查询访问众多分散的数据库中的所有数据。
Presto(Java ) 引擎的数据联合能力
这Presto(Java ) 引擎的联合查询功能允许组织轻松地混合来自多个来源的数据,包括当前数据库和新数据IBM® watsonx.data。 通过利用watsonx.data融入Presto(Java ),您的企业现在可以无缝地组合和分析各种来源的数据,从而获得更深入的洞察。 这种简化的方法不仅提高了运营效率,还为决策者提供了及时、准确的数据驱动洞察。
用例场景
- 分析跨多个数据源的购买方法
- 此用例的目标是分析与最大订单相关的采购方法。 销售数据可在Db2。 部分数据被移至 Iceberg 表中watsonx.data。 销售数据现在位于两个地方 -Db2和watsonx.data你需要执行Presto(Java )查询Db2和Iceberg来分析数据,旨在找出与最大订单相关的购买方式。
以下视频提供了学习本文档中的概念和任务的直观方法。
目标
- 注册您的Db2数据源watsonx.data
- 将部分销售数据从Db2到watsonx.data
- 运行查询以检索见解
准备工作
本教程需要:
- 订阅watsonx.data在云端。
- Presto(Java)引擎的可用性
- Db2数据库
GOSALESDW
数据 - 凭证Db2数据库
注册您的Db2数据源
注册Db2数据源(具有 GOSALESDW
数据)watsonx.data实例。
要注册您的Db2数据来源,参见 IBMDb2。 注册时请使用以下详细信息Db2数据源。
- 数据库名称:输入数据库名称
BLUDB
。 - 主机名:输入主机名作为
db2w-sucqakq.us-south.db2w.cloud.ibm.com
- 用户名:
db2inst
- 密码:
Usertutorials1!
- 港口:
50001
关联Db2和Presto(Java ) 引擎
注册后Db2数据库,您必须将目录与Presto(Java ) 引擎。 有关详细信息,请参阅For more information, see 将目录与引擎关联。
复制数据自Db2数据库到 Iceberg
将目录与引擎关联后,从Db2到冰山。 为此,请完成以下步骤:
-
从导航菜单中选择数据管理器。 在内部创建架构
Iceberg_data
目录。 有关如何创建架构的更多信息,请参阅 创建架构。 -
从导航菜单中,选择查询工作区。
-
编写查询以从中复制数据
GOSALESDW
表中存在Db2数据库并创建一个新表(此处SLS_SALES_FACT
) 里面Iceberg
目录。示例查询:
create table "iceberg_data"."wxgosalesdw"."sls_sales_fact" as select * from "db2catalog". "GOSALESDW"."SLS_SALES_FACT";
-
点击启动运行按钮运行查询。
-
刷新
Iceberg_data
目录查看新表SLS_SALES_FACT
。
数据联合
现在,销售数据分为Db2和冰山目录。 您可以从两者运行查询Db2和 Iceberg 来分析数据并产生与最大订单相关的购买方法的见解。 要做到这一点:
-
来自查询工作区,运行以下查询来了解哪种采购方式与最大订单相关。
您可以使用以下示例查询来确定哪种采购方式与最大订单相关联。 该查询访问五个表,其中一个在 watsonx.data 对象存储空间(iceberg_data)中,其他四个在 Db2 ( db2catalog ) 中。
示例查询:
选择 pll.product_line_en 作为产品、
md.order_method_en 作为 order_method、
sum(sf.quantity)为总数
from
db2catalog.GOSALESDW.SLS_ORDER_METHOD_DIM 作为 md、
db2catalog.GOSALESDW.SLS_PRODUCT_DIM as pd.GOSALESDW.SLS_PRODUCT_DIM、
db2catalog.GOSALESDW.SLS_PRODUCT_LINE_LOOKUP as pll、
db2catalog.GOSALESDW.SLS_PRODUCT_BRAND_LOOKUP as pbl、
iceberg_data.wxgosalesdw.sls_sales_fact as sf
其中
pd.product_key = sf.product_key
和 md.order_method_key = sf.order_method_key
和 pll.product_line_code = pd.product_line_code
和 pbl.product_brand_code = pd.product_brand_code
按 pll.product_line_en, md.order_method_en 分组
按产品订购,订购方法;
-
点击运行按钮运行查询。
-
选择结果集或者细节选项卡查看结果。
-
点击“**解释 **”链接。 Explain 页面将打开,显示查询的可视化解释输出。 您可以滚动可视化解释输出,查看树中的五个 ScanProject 叶节点(这里,查询中使用了五个表)。 这与正在读取的五个表格相对应。
借助这些功能,您的企业可以推动更智能的运营,优化采购方法,并最终提高整体业务绩效。