[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在大数据处理中的强大能力。

相关推荐
墨风如雪6 小时前
谷歌Nano Banana Pro:AI画图迈向专业
aigc
Dragon online10 小时前
数据仓库深度探索系列:数仓建设全流程解析
数据仓库
isNotNullX11 小时前
数据中台有什么用?数据仓库和数据中台怎么选?
大数据·数据仓库·人工智能·数据中台
mortimer13 小时前
从一句话扩展成完整的AI画图提示词【限制你的只有你的想象力】
aigc·openai
恋猫de小郭14 小时前
聊一聊 Gemini3、 AntiGravity 和 Nano Banana Pro 的体验和问题
前端·aigc·gemini
martian66514 小时前
第九章:如何学习和掌握BI?
大数据·数据仓库·学习·etl·bi
用户51914958484518 小时前
利用配置错误的postMessage()函数实现DOM型XSS攻击
人工智能·aigc
doubao3618 小时前
如何在海量文献中高效筛选有价值信息
人工智能·学习·自然语言处理·aigc·ai工具·ai检索
用户51914958484519 小时前
Rust 1.91.0 发布:新增平台支持与安全增强
人工智能·aigc