Apache Presto - 配置设置

本章将讨论Presto的配置设置.

Presto Verifier

Presto Verifier可用于针对另一个数据库测试Presto(例如MySQL),或者相互测试两个Presto集群.

在MySQL中创建数据库

打开MySQL服务器并使用以下命令.

create database test

现在你已经创建了"测试服务器中的数据库.创建表并使用以下查询加载它.

CREATE TABLE verifier_queries( 
   id INT NOT NULL AUTO_INCREMENT, 
   suite VARCHAR(256) NOT NULL, 
   name VARCHAR(256), 
   test_catalog VARCHAR(256) NOT NULL, 
   test_schema VARCHAR(256) NOT NULL, 
   test_prequeries TEXT, 
   test_query TEXT NOT NULL, 
   test_postqueries TEXT, 
   test_username VARCHAR(256) NOT NULL default 'verifier-test', 
   test_password VARCHAR(256), 
   control_catalog VARCHAR(256) NOT NULL, 
   control_schema VARCHAR(256) NOT NULL, 
   control_prequeries TEXT, 
   control_query TEXT NOT NULL, 
   control_postqueries TEXT, 
   control_username VARCHAR(256) NOT NULL default 'verifier-test', 
   control_password VARCHAR(256), 
   session_properties_json TEXT,            
   PRIMARY KEY (id) 
);

添加配置设置

创建属性文件以配置验证者 :

$ vi config.properties  

suite = mysuite 
query-database = jdbc:mysql://localhost:3306/tutorials?user=root&password=pwd 
control.gateway = jdbc:presto://localhost:8080 
test.gateway = jdbc:presto://localhost:8080 
thread-count = 1

query-database 字段中,输入以下详细信息 :  mysql数据库名称,用户名和密码.

下载JAR文件

通过访问以下链接下载Presto-verifier jar文件,

https://repo1.maven.org/maven2/com/facebook/presto/presto-verifier/0.149/

现在您的机器上已下载"presto-verifier-0.149-executable.jar"版本.

执行JAR

使用以下命令执行JAR文件,

$ mv presto-verifier-0.149-executable.jar verifier  
$ chmod+x verifier

运行验证程序

使用以下命令运行验证程序,

$ ./verifier config.properties

创建表

让我们使用以下查询在"test"数据库中创建一个简单的表.

create table product(id int not null, name varchar(50))

Insert Table

创建表后,使用以下查询插入两个记录,

insert into product values(1,’Phone') 
insert into product values(2,’Television’)

运行验证程序查询

在验证程序中执行以下示例查询终端(./verifier config.propeties)检查验证者结果.

示例查询

insert into verifier_queries (suite, test_catalog, test_schema, test_query, 
control_catalog, control_schema, control_query) values 
('mysuite', 'mysql', 'default', 'select * from mysql.test.product', 
'mysql', 'default', 'select * from mysql.test.product');

在这里, select*来自mysql.test.product 查询是指mysql目录, test 是数据库名称,产品是表名.通过这种方式,您可以使用Presto服务器访问mysql连接器.

这里,两个相同的选择查询相互测试以查看性能.同样,您可以运行其他查询来测试性能结果.您还可以连接两个Presto群集以检查性能结果.