DLI BEELINE 使用教程

网友投稿 1038 2022-05-30

1      使用Beeline连接DLI服务端

1.1      DLI Beeline简单介绍

DLI Beeline是一个用于连接DLI服务的客户端命令行交互工具,该工具基于DLI JDBC实现,提供SQL命令交互、批量SQL脚本执行的能力。使用华为云官网提供的DLI BEELINE工具,可以轻松的利用我们所熟悉的SQL语言将大数据玩弄于手掌之中。

1.2      DLI Beeline下载

注册/登陆华为云,在官网的产品中找到“EI企业智能”下的“数据湖探索”界面,进入控制台,点击右上角的“常用链接”,选择下载DLI BEELINE。下载得到beeline的压缩包。

1.3      使用DLI Beeline连接服务端

1.       前提条件:使用DLI Beeline的机器安装JDK 1.7或以上版本并配置环境变量,推荐在Linux环境下使用Beeline工具。

2.       下载并解压工具包dli-beeline--bin.tar.gz,其中version为版本号,以实际版本号为准。

3.       进入解压目录,里面有三个子目录conf、lib、bin,分别存放了Beeline相关的配置文件、依赖包和执行脚本。

4.       配置conf目录下的连接参数,将conf目录下的connection.properties.template重命名成connection.properties,并配置连接参数,目前支持基于账号的ak/sk的方式进行登陆。需要将模板文件中的参数值填写成真实的值。具体包括:

参数

说明

url

url的格式如下:

jdbc:dli:///projectId?=;=

endpoint指DLI的域名。projectId指项目ID。在地区和终端节点获取DLI对应的Endpoint,从公有云“用户名”>“我的凭证”页面获取项目编号。

“?”后面接其他配置项,每个配置项以“key=value”的形式列出,配置项之间以“;”隔开,这些配置项也可以通过Info对象传入。

queuename

DLI服务的队列名称。

authenticationmode

身份认证方式,以AK/SK的方式认证则填写aksk。

servicename

服务名

regionname

区域名称,参见 https://developer.huaweicloud.com/endpoint

accesskey

用户的access key

Secretkey

用户的secret key

5.       填写完连接参数后进入bin目录,启动beeline脚本,执行连接命令即可执行SQL语句,如下所示:

%bin/beeline

Start Beeline

Welcome to   DLI service !

beeline>   !connect

Connecting   from the default connection.properties

Connecting   to jdbc:DLI://DLI.cn-north-1.myhwclouds.com/8fc20d97a4444cafba3c3a8639380003

Connected   to: DLI service

jdbc:DLI://DLI.cn-north-1.myhwclouds...   (not set)> show databases;

+--------------------+

|    databaseName    |

+--------------------+

|   bjhk               |

|   db_xd              |

|   dimensions_adgame  |

|   odbc_db            |

|   sdk_db             |

|   tpch_csv_1024      |

|   tpch_csv_4g_new    |

|   tpchnewtest        |

|   tpchtest           |

| xunjian            |

+--------------------+

10 rows   selected (0.338 seconds)

备注:用户也可以在启动beeline脚本时通过命令行选项设置连接参数,如下所示,如果连接参数不全,Beeline会提示补全相关信息。

%bin/beeline -u 'jdbc:DLI://DLI.cn-north-1.myhwclouds.com/8fc20d97a4444cafba3c3a8639380003?   authenticationmode=aksk'

Start Beeline

Connecting to jdbc:DLI://DLI.cn-north-1.myhwclouds.com/8fc20d97a4444cafba3c3a8639380003?usehttpproxy=true;proxyhost=10.186.60.154;proxyport=3128;authenticationmode=aksk

Enter region name: cn-north-1

Enter service name: DLI

Enter access key(AK):

Enter secret key(SK):   ****************************************

Enter queue name: default

Connected to: DLI service

Welcome to DLI service !

jdbc:DLI://DLI.cn-north-1.myhwclouds... (not   set)>

1.4      DLI Beeline支持的命令

DLI Beeline支持一系列命令,启动一个命令的标识以!开始,如!connect

支持的命令及使用方法如下:

命令

描述

!connect

通过输入连接参数的方式连接到DLI服务,若不输入参数,则加载默认的connection.properties文件连接。

!help

打印命令行的帮助文档。

!history

展示命令行执行历史。

!outputformat

设置查询结果的输出格式,支持table,vertical,csv2,dsv,tsv2,xmlattr,xmlelements,每一种格式的具体说明详见1.6.

!properties

通过加载connection.properties文件连接到DLI服务。该功能与!connect,但是可以指定连接配置文件。

!quit

退出beeline会话。

!run

执行一个SQL脚本

使用方法: !run

!save

将当前的会话属性保存至beeline.properties中,下次开启beeline时会自动加载这些属性。

!script

将执行的命令保存至一个文件中。例如:

!script /tmp/mysession.script

执行该语句之后,后续的命令将被保存至/tmp/mysession.script

再次执行!script,结束脚本记录。

执行!run /tmp/mysession.script将会重新执行记录下来的命令。

!set

设置Beeline变量,如!set color true,

!set后面不接参数则显示所有变量值

!sh

执行一个Shell脚本

!sh  

!sql

显示地执行一条SQL语句,beeline中不带命令的语句默认会转换成!sql命令,sql语句必须以分号结尾。

!sql  

!DLIconf

查看DLI 自定义配置

1.5      DLI Beeline支持的命令行选项

DLI Beeline支持的启动命令行选项如下:

命令

描述

-u

连接DLI JDBC的url,其中url需要采用单引号括起来

使用方式: beeline   –u db_URL

-e

需要执行的SQL语句,可以输入多条语句,以分号间隔,语句需要采用单引号括起来

-f

需要执行的脚本文件

--DLIconf property=value

设置DLI属性配置

--property-file=

通过指定的方式获取连接属性文件并连接到DLI服务

--help

打印命令行选项帮助

1.6      查询输出格式

DLI Beeline支持多种查询结果输出格式,输出格式可以通过!outputformat指定。DLI Beeline支持的输出格式包括:

table,vertical,csv2,dsv,tsv2,xmlattr,xmlelements

table

table格式输出的结果以表的形式展示,如

select id, value, comment from test_table

+-----+---------+-----------------+

| id  |  value  |     comment     |

+-----+---------+-----------------+

| 1   | Value1  | Test comment 1  |

| 2   | Value2  | Test comment 2  |

| 3   | Value3  | Test comment 3  |

+-----+---------+-----------------+

vertical

以行为单元组织数据,每一个属性以key-value的形式展示:

select id, value, comment from test_table

id         1

value      Value1

comment    Test comment 1

id         2

value      Value2

comment    Test comment 2

id         3

value      Value3

comment    Test comment 3

csv2

id,value,comment

1,Value1,Test comment 1

2,Value2,Test comment 2

3,Value3,Test comment 3

dsv

id|value|comment

1|Value1|Test comment 1

2|Value2|Test comment 2

3|Value3|Test comment 3

tsv2

id    value       comment

1     Value1    Test comment 1

2     Value2    Test comment 2

3     Value3    Test comment 3

Xmlattr

Xmlelements

DLI BEELINE 使用教程

1

Value1

Test comment 1

2

Value2

Test comment 2

3

Value3

Test comment 3

Data Lake Insight 官网地址:https://www.huaweicloud.com/product/dli.html

Data Lake Insight 体验地址:http://49.4.0.83:8080/#/main/queryEditor

Data Lake Insight 文档中心:https://support.huaweicloud.com/usermanual-uquery/zh-cn_topic_0068141086.html

Data Lake Insight 论坛地址:https://forum.huaweicloud.com/forum-599-1.html

华为云 大数据

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【专访广州商学院黄衫获奖同学】做一个合格的软件工程师
下一篇:如何快速准备高质量的图像分割的标注数据?
相关文章