我是靠谱客的博主 虚幻鞋垫,最近开发中收集的这篇文章主要介绍初始presto1.presto是什么2.properties配置3.sql写法4.程序连接,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
1.presto是什么
Presto是一个facebook开源的分布式SQL查询引擎
2.properties配置
2.1达梦
如/etc/catalog/dameng123.properties
connector.name=dameng
connection-url=jdbc:mysql://127.0.0.1:8080?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true&failOverReadOnly=false
connection-user=root
connection-password=root
connector.name 连接名,固定是"dameng"
connection-url 连接url,注意不用配模式名(数据库名),如devdb等
connection-user 用户名
connection-password 密码
2.2mysql
如/etc/catalog/mysql123.properties
connector.name=mysql
connection-url=jdbc:mysql://127.0.0.1:8080?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true&failOverReadOnly=false
connection-user=root
connection-password=root
connector.name 连接名,固定是"mysql"
connection-url 连接url,注意不用配数据库名,如devdb等
connection-user 用户名
connection-password 密码
3.sql写法
其中dameng123是properties名称,bspdev是数据库名称,ds1005是表名
那么执行的sql中需要在表名前加【catalog.schema】, 如select * from dameng123.bspdev.ds1005,否则报错
程序中的sql也一样要注意 ,会根据catalog名称去找presto的properties配置文件,从而读指定文件的数据源
4.程序连接
4.1配置presto连接
以下前缀不固定,保证程序可以读到就好,你写test.url也行
com.presto.url=jdbc:presto://localhost:8080
com.presto.username=root
com.presto.password=root
com.presto.maxTotal=100
com.presto.maxIdle=80
com.presto.minIdle=1
com.presto.initialSize=1
com.presto.maxWaitMillis=6000
4.2建立数据源属性对应实体类
@Setter
@Getter
public class DataservicePrestoProperties {
private String driverClassName = "com.facebook.presto.jdbc.PrestoDriver";
private Class<? extends DataSource> type;
private volatile String password;
private String url;
private String username = "root";
private int maxTotal = GenericObjectPoolConfig.DEFAULT_MAX_TOTAL;
private int maxIdle = GenericObjectPoolConfig.DEFAULT_MAX_IDLE;
private int minIdle = GenericObjectPoolConfig.DEFAULT_MIN_IDLE;
private int initialSize = 0;
private long maxWaitMillis = BaseObjectPoolConfig.DEFAULT_MAX_WAIT_MILLIS;
}
4.2用@ConfigurationProperties读出配置文件中的presto连接
@Bean(name = "dataservicePrestoProperties")
@ConfigurationProperties(prefix = "com.presto")//这就是刚刚在配置文件中定义的前缀
public DataservicePrestoProperties dataservicePrestoProperties() {
return new DataservicePrestoProperties();//这就是刚刚写的配置文件对应的实体类
}
4.3.完整代码
@Configuration
public class DataservicePrestoConfig {
@Bean(name = "dataservicePrestoProperties")
@ConfigurationProperties(prefix = "com.presto")//这就是刚刚在配置文件中定义的前缀
public DataservicePrestoProperties dataservicePrestoProperties() {
return new DataservicePrestoProperties();//这就是刚刚写的配置文件对应的实体类
}
@Bean(name = "dataservicePrestoDataSource")
public BasicDataSource dataservicePrestoDataSource(@Qualifier("dataservicePrestoProperties") DataservicePrestoProperties properties) {
BasicDataSource basicDataSource = new BasicDataSource();
basicDataSource.setUrl(properties.getUrl());
basicDataSource.setUsername(properties.getUsername());
basicDataSource.setPassword(properties.getPassword());
basicDataSource.setMaxTotal(properties.getMaxTotal());
basicDataSource.setMaxIdle(properties.getMaxIdle());
basicDataSource.setMinIdle(properties.getMinIdle());
basicDataSource.setInitialSize(properties.getInitialSize());
basicDataSource.setMaxWaitMillis(properties.getMaxWaitMillis());
return basicDataSource;
}
}
5.依赖
<!-- Presto -->
<dependency>
<groupId>com.facebook.presto</groupId>
<artifactId>presto-jdbc</artifactId>
<version>${presto-jdbc.version}</version>
</dependency>
<dependency>
<groupId>com.facebook.presto</groupId>
<artifactId>presto-base-jdbc</artifactId>
<version>${presto-jdbc.version}</version>
</dependency>
最后
以上就是虚幻鞋垫为你收集整理的初始presto1.presto是什么2.properties配置3.sql写法4.程序连接的全部内容,希望文章能够帮你解决初始presto1.presto是什么2.properties配置3.sql写法4.程序连接所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复