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

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

(图片取自百度)

--

文章目录

    • [1. Doris的基础知识](#1. Doris的基础知识)
    • [2. Spring Boot,MyBatis-Plus连接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依赖:

XML 复制代码
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.17</version>
</dependency>

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

properties 复制代码
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的相关配置与使用,在你的配置类中添加以下配置:

java 复制代码
@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进行增删改查操作了。

java 复制代码
public interface UserMapper extends BaseMapper<User>{
}

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

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

相关推荐
青春之我_XP7 小时前
【基于阿里云搭建数据仓库(离线)】Data Studio创建资源与函数
大数据·数据仓库·sql·dataworks·maxcompute·data studio
小奏技术9 小时前
基于 Spring AI 和 MCP:用自然语言查询 RocketMQ 消息
后端·aigc·mcp
杂雾无尘11 小时前
用 Trae 打造全栈项目魔法师 - 让项目初始化不再是噩梦
aigc·openai·ai编程
程序员X小鹿14 小时前
全球首个能无限跑的AI来了!AI Agents的下一站?这才是真的颠覆式革新!(附10个邀请码)
aigc
Leo.yuan15 小时前
实时数据仓库是什么?数据仓库设计怎么做?
大数据·数据库·数据仓库·数据分析·spark
掘我的金19 小时前
深入解析Stream函数与生成器本质
llm·aigc
掘我的金19 小时前
Prompt Cache 与 Streaming:核心机制与优化实践
llm·aigc
运营黑客2 天前
揭秘丨ChatGPT超级记忆功能,是如何工作的?(干货预警)
aigc·openai