当前位置:AIGC资讯 > AIGC > 正文

[AIGC] Doris:一款高效的MPP数据仓库引擎

在大数据处理的领域中,Apache Doris(原百度 Palo)是一个高效的MPP(大规模并行处理)数据仓库,最初由百度开发,现在已经成为Apache的孵化项目。

(图片取自百度)

文章目录

1. Doris的基础知识 2. Spring Boot,MyBatis-Plus连接Doris

1. Doris的基础知识

Doris基于Google的Dremel和F1技术构建,设计目标是通过简洁易用的SQL界面,为超大规模实时分析提供解决方案。它使用面向列的存储设计和并行计算来满足数据查询和分析的需求。

Doris独特的特性包括:

实时流式加载:Doris直接由生产系统中摄取数据,以支持近实时查询。

高并发低延迟查询处理:Doris通过并行执行计划和大规模并行处理技术,实现高并发和低延迟的查询。

基于向量化和编码的高效存储扫描:Doris通过向量化和编码进行大规模的列式存储扫描,显著提高查询的效率和系统的吞吐量。

2. Spring Boot,MyBatis-Plus连接Doris

首先,我们需要在项目的pom.xml中添加MySQL的JDBC依赖:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.17</version>
</dependency>

然后在application.properties中添加与Doris的连接属性:

spring.datasource.url=jdbc:mysql://dorisEndPoint:9030/testDb
spring.datasource.username=root
spring.datasource.password=
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

mybatis-plus.mapper-locations=classpath:mapper/*.xml

请注意,Doris使用的是MySQL的连接协议,因此可以使用MySQL的JDBC驱动进行连接。

接着是Mybatis-Plus的相关配置与使用,在你的配置类中添加以下配置:

@Autowired
private DataSource dataSource;

@Bean
public SqlSessionFactory sqlSessionFactory() throws Exception {
    MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
    sqlSessionFactory.setDataSource(dataSource);
    sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mapper/*Mapper.xml"));
    return sqlSessionFactory.getObject();
}

再创建对应的Mapper接口和Mapper.xml文件,就可以开始使用Mybatis-Plus进行增删改查操作了。

public interface UserMapper extends BaseMapper<User>{
}

这样,我们就完成了在Spring Boot中通过MyBatis-Plus操作Doris数据库的设置。

结语:大规模并行处理(MPP)引擎Doris和Spring Boot以及Mybatis-Plus之间的相结合,使得我们在使用简单且强大的Spring Boot编程模型的同时,也能享受到Doris在大数据处理中的强大能力。

总结

**文章总结:Apache Doris(原百度Palo)与Spring Boot、MyBatis-Plus的集成应用**
Apache Doris作为一个高效的大规模并行处理(MPP)数据仓库,源自百度并已成为Apache孵化项目。它以Google的Dremel和F1技术为基础,专为超大规模实时分析提供解决方案,通过列式存储和并行计算技术优化查询效率和系统吞吐量。
### Doris基础知识
- **实时流式加载**:实时从生产系统摄取数据,支持近实时查询。
- **高并发低延迟查询**:利用并行执行计划和MPP技术,实现高并发、低延迟的数据查询。
- **高效存储扫描**:通过向量化和编码的列式存储,显著提高查询效率和系统吞吐量。
### Spring Boot与MyBatis-Plus连接Doris
尽管Doris不直接提供Java连接器,但由于其兼容MySQL的连接协议,可利用MySQL的JDBC驱动实现连接。以下是基本步骤和要点:
1. **添加MySQL JDBC依赖**:在Spring Boot项目的`pom.xml`文件中引入MySQL JDBC驱动。
2. **配置数据源**:在`application.properties`中配置Doris数据库的连接参数,包括URL、用户名、密码和驱动类名,注意使用`jdbc:mysql://`格式的URL来连接Doris。
3. **配置MyBatis-Plus**:在Spring配置类中定义`SqlSessionFactory` Bean,并通过`DataSource`注入,设置`Mapper`接口位置。
4. **Mapper接口与XML**:定义Mapper接口和与其对应的XML文件,实现数据增删改查操作。
### 结论
通过将Apache Doris与Spring Boot架构和MyBatis-Plus ORM框架相结合,开发者可以在享受Spring Boot带来的简单、强大编程模型的同时,充分利用Doris在大数据处理领域的强大能力。这一组合为实时数据分析场景提供了高效、灵活的解决方案。

更新时间 2024-08-24