本文介绍如何快速通过Lindorm计算引擎使用SQL语言对宽表中的数据进行查询分析。

前提条件

  • 已创建并开通Lindorm实例的宽表引擎,具体操作请参见创建实例
  • 已开通Lindorm实例的计算引擎服务,具体操作请参见开通与变配
  • 已安装Java环境,要求使用JDK1.8及以上版本。

准备数据

在已开通宽表引擎的Lindorm实例中通过Lindorm-cli连接并执行以下SQL语句,连接方法请参见通过Lindorm-cli连接并使用宽表引擎
CREATE DATABASE test;
USE test;
CREATE TABLE authors (id int, name varchar, country varchar, primary key(id, name));
CREATE TABLE books (id int, title varchar, author_id int, intro varchar, primary key(id, title));
UPSERT INTO authors (id, name, country) values ('222', 'Tom', 'British'), ('333', 'Jerry', 'America');
UPSERT INTO books (id, title, author_id, intro) values (1, 'booka', '333', 'comic'), (2, 'bookb', '333', 'story'), (3, 'bookc', '222', 'story');

使用计算引擎查询宽表引擎数据

  1. 下载Beeline客户端。
  2. 获取连接地址并执行下述命令连接Lindorm计算引擎。
    ./bin/beeline -u "hostname" -n username -p password
    表 1. 参数说明
    参数 说明 获取方法
    hostname Lindorm计算引擎的JDBC连接地址。 具体操作,请参见查看连接地址
    username Lindorm宽表引擎实例的用户名。
    password 用户名的密码。
  3. 连接成功后,执行以下语句查询宽表引擎数据。
    SELECT a.name, b.title, b.intro FROM lindorm_table.test.authors as a, lindorm_table.test.books as b where a.id = b.author_id and a.name='Jerry';
    说明 示例中SELECT语句中的参数值解释如下,具体请参见SELECT语法介绍
    • lindorm_table:宽表引擎在计算引擎中的数据源。lindorm_table为默认的Catalog名称。
    • test:访问宽表引擎的数据库名。
    • booksauthors:访问的数据所在的表名。

    查询结果

    +-------+-------+-------+
    | name  | title | intro |
    +-------+-------+-------+
    | Jerry | booka | comic |
    | Jerry | booab | story |
    +-------+-------+-------+
    2 rows selected(1.052 seconds)