You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何外部访问Synapse Lake Database及在Azure SQL中跨库查询修改

关于Azure Synapse Lake Database的访问与查询问题解答

1. 如何从外部访问Synapse Lake Database?

  • Synapse Studio:登录Azure门户进入对应Synapse工作区,打开Synapse Studio即可直观访问Lake Database内的表,支持数据预览、SQL查询编写、表结构管理。
  • SQL客户端工具:使用SSMS、Azure Data Studio等工具,通过Synapse的无服务器SQL池或专用SQL池端点连接,用T-SQL查询Lake Database对象,前提是拥有db_datareader等对应权限。
  • SDK/代码方式:借助Python的pyodbc库、Azure .NET SDK等,通过Synapse SQL端点的连接字符串编写代码,实现数据读取与处理。
  • BI工具集成:Power BI等可视化工具可直接连接Synapse Lake Database,快速构建报表与数据分析模型。

2. 如何在Azure SQL Database中查询Azure Synapse Lake Database?是否可将Synapse Lake Database添加为Azure SQL Database的外部数据源?

可以将Synapse Lake Database的数据添加为Azure SQL Database的外部数据源,具体操作步骤如下:

步骤1:创建数据库范围凭据

先创建访问Lake Database底层ADLS Gen2存储的凭据(示例用SAS令牌):

CREATE DATABASE SCOPED CREDENTIAL SynapseLakeCredential
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = '你的SAS令牌内容';

步骤2:创建外部数据源

指向Lake Database数据所在的ADLS Gen2容器或具体路径:

CREATE EXTERNAL DATA SOURCE SynapseLakeSource
WITH (
    LOCATION = 'abfss://容器名@存储账户名.dfs.core.windows.net/LakeDatabase的存储路径',
    CREDENTIAL = SynapseLakeCredential
);

步骤3:查询数据

  • 用OPENROWSET直接查询文件:
SELECT *
FROM OPENROWSET(
    BULK '具体文件路径/文件夹',
    DATA_SOURCE = 'SynapseLakeSource',
    FORMAT = 'PARQUET' -- 根据存储格式调整,如DELTA
) AS LakeData;
  • 创建外部表方便重复查询:
CREATE EXTERNAL TABLE dbo.LakeDB_ExternalTable (
    ID INT,
    Name VARCHAR(100),
    CreateDate DATETIME
)
WITH (
    LOCATION = 'Lake Database对应表的存储文件夹',
    DATA_SOURCE = 'SynapseLakeSource',
    FORMAT = 'PARQUET'
);

-- 后续直接查询外部表
SELECT * FROM dbo.LakeDB_ExternalTable;

另外,也可将Azure SQL Database链接到Synapse无服务器SQL池,通过链接服务器查询Lake Database的表,适配复杂场景。

3. 在Azure SQL Database内能否同时访问并修改本地表与Synapse Lake Database的表?

可以在Azure SQL Database内查询Synapse Lake Database的表,但修改操作存在限制:

  • 查询操作:通过外部数据源或链接服务器,可直接将Lake Database的表与Azure SQL Database本地表进行联合查询(如JOIN、UNION),全程在Azure SQL Database内完成跨源操作。
  • 修改操作:Azure SQL Database通过外部表仅能读取Lake Database数据,无法直接执行INSERT/UPDATE/DELETE。若要修改Lake Database数据,需通过Synapse Studio、Synapse SQL池(专用/无服务器)或ADLS Gen2 SDK完成;也可先将Lake Database数据导入Azure SQL Database修改后,再写回Lake Database存储。

内容的提问来源于stack exchange,提问作者Praj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 06:43:14