服务访问

更新时间:
复制为 MD 格式

Lindorm 提供了灵活的服务访问模式,以满足不同场景的查询需求。您可以根据业务特点,选择以下两种方式之一来访问您的数据和计算资源。

前提条件

直连 OLAP 资源组服务

  • 适用场景:纯粹的数据分析场景,例如对接 BI 报表工具、数据分析师进行探索性查询等。

  • 工作原理:直接使用 OLAP 资源组的独立地址进行连接。

操作步骤

  1. 登录Lindorm管理控制台

  2. 在页面左上角,选择实例所属的地域。

  3. 实例列表页,单击目标实例ID或者目标实例所在行操作列的管理

  4. 在左侧导航栏,选择配置与管理 > 数据库连接

  5. 在顶部选择计算引擎页签,在 OLAP连接方式区域找到目标资源组,获取其专有网络连接地址。

  6. 配置MySQL客户端后,通过JDBC连接OLAP资源组的VPC内网地址(需去掉末尾的冒号及端口号),并使用Lindorm宽表引擎的用户名和密码登录,即可通过MySQL协议连接到OLAP资源组。

    mysql -hld-bp1dv4****-proxy-ldps.lindorm.aliyuncs.com -P9030 -uroot -p

    执行以上语句后,可以看到MySQL命令行提示符,即可输入需要执行的SQL语句。

通过宽表引擎智能路由查询

  • 适用场景:在日常业务查询(高并发点查)的同时,偶尔需要执行复杂的分析查询。

  • 工作原理:连接宽表引擎,通过在 SQL 中添加特定注释(Hint)将复杂查询路由到 OLAP 资源组执行。

基础用法:转发查询到 OLAP 资源组

当您通过 MySQL 客户端或 Lindorm-cli 连接到 Lindorm 宽表引擎后,可以使用 _use_ldps_ Hint 将特定 SQL 转发至 OLAP 资源组执行。

  • 语法格式

    /*+ _use_ldps_(olap_cg_name) */

    重要

    此 Hint 必须紧跟在 SELECT 关键字之后。

  • 代码示例

    -- 使用数据库
    USE db01;
    -- 将查询转发到默认OLAP资源组
    SELECT /*+ _use_ldps_ */ * FROM tb01 LIMIT 5;
    -- 将查询转发到指定 OLAP 资源组
    SELECT /*+ _use_ldps_(olap_cg_name) */ * FROM tb01 LIMIT 5;
  • 参数说明

    变量

    类型

    默认值

    说明

    olap_cg_name

    String

    默认 OLAP 资源组

    用来指定查询要转发到的OLAP资源组名称。如果未指定,则查询会被转发到默认资源组

    说明

    如何设置默认 OLAP 资源组?请参考修改默认资源组

进阶用法:在转发时动态设置会话变量

在将查询转发到 OLAP 资源组时,您还可以通过 SET_VAR Hint 精确控制该查询在 OLAP 引擎中的执行行为,例如调整并发度、开启优化选项等。

  • 语法格式

    /*+ SET_VAR(key1 = value1, key2 = value2) */

    重要

    SET_VAR Hint 必须紧跟在 _use_ldps_ Hint 之后,并且不能与转发 Hint 共用一个注释块。

  • 代码示例

    -- 指定查询的会话变量
    SELECT /*+ _use_ldps_ */ /*+
    SET_VAR(enable_lindorm_table_concurrent_scan = false) */ * FROM tb01
    LIMIT 5;
    -- 指定多个查询的会话变量
    SELECT /*+ _use_ldps_ */ /*+
    SET_VAR(enable_lindorm_table_concurrent_scan = false,
    enable_build_join_filter_from_lindorm_table_in_opt = true) */ * FROM
    tb01 LIMIT 5;
  • 参数说明

    变量

    类型

    默认值

    说明

    适用场景建议

    enable_build_join_filter_from_lindorm_table_in_opt

    BOOL

    FALSE

    在对宽表引擎中两表进行 JOIN 关联时,根据右表的查询结果动态生成左表的过滤条件并下推,从而加速左表数据扫描。

    当 JOIN 的右表能被高效过滤成一个小结果集时,开启此选项(设为 TRUE)可以显著提升整体 JOIN 性能。

    enable_lindorm_table_concurrent_scan

    BOOL

    TRUE

    控制读取 Lindorm 宽表数据的并发行为。TRUE 表示以多线程并发方式扫描,FALSE 表示以单线程方式扫描。

    默认的并发扫描(TRUE)能最大化利用资源、提升查询速度。在排查问题或需要严格控制资源消耗时,可临时设置为 FALSE