当前位置:   article > 正文

开源、云原生且实时分析型的现代数据仓库DataBend的介绍,及其与其它开源文件存储的结合使用实例_databend功能

databend

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

DataBend介绍

Databend 是一个开源、云原生且实时分析型的现代数据仓库,旨在提供高效的数据存储和处理能力。它采用 Rust 语言开发,并支持 Apache Arrow 格式以实现高性能列式存储与查询处理。

主要特点:

  1. 云原生设计:Databend 构建在 Kubernetes 之上,具备弹性伸缩、水平扩展的能力,可轻松部署在公有云或私有云环境中。
  2. SQL 支持:Databend 具备完善的 SQL 查询功能,兼容 MySQL 协议,使得用户可以利用熟悉的 SQL 语法进行数据查询和处理。
  3. 性能优化:通过矢量化查询执行引擎和列式存储技术,Databend 可实现对大规模数据集的快速读取和分析。
  4. 对象存储集成:Databend 能够将数据存储在各种对象存储服务上,如 AWS S3、Azure Blob 存储、Google Cloud Storage 等,实现成本低廉的大规模存储。
  5. 实时分析:Databend 支持实时数据摄取和即时查询响应,适合于 BI 分析、日志分析、实时报表等应用场景。
  6. 社区驱动:作为开源项目,Databend 由活跃的开发者社区共同维护和贡献,持续迭代更新,增加新功能并改进现有特性。

使用场景示例:

  • 数据分析师可以使用 Databend 进行复杂的数据查询和数据分析。
  • 开发者可以构建实时数据管道,将流式数据写入 Databend 并立即进行查询和分析。
  • 数据科学家可以结合 Databend 和其他工具(如 Python 或 R)进行机器学习模型训练前的数据预处理工作。

部署与使用步骤:

  1. 下载或克隆 Databend 的源代码或二进制包。
  2. 根据官方文档配置所需的环境变量和服务参数,例如数据库 URL、连接凭据以及对象存储的访问信息。
  3. 启动 Databend 服务,通常可以通过命令行工具完成启动、停止和管理操作。
  4. 使用 MySQL 客户端或支持 MySQL 协议的应用程序连接到 Databend 数据库,并开始创建表、插入数据以及执行 SQL 查询。

Databend Cloud - Open Source Cloud Data Warehouse Alternative to Snowflake | Databend Cloud

Databend的安装

以下是一个简化的 Databend 安装和配置步骤,具体细节可能根据实际情况有所调整,请参照最新的官方文档进行操作。

1. 环境准备

确保你的机器上已安装 Rust 工具链(Rustup)以及 Docker。如果尚未安装,请参考以下链接进行安装:

2. 安装 Databend

使用 Rust 工具链编译并安装 Databend:

# 克隆 Databend 仓库
git clone https://github.com/datafuselabs/databend.git
cd databend

# 使用 nightly 版本的 Rust 编译器构建 Databend
rustup default nightly
cargo build --release

# 创建 Databend 的数据存储目录(例如 /var/lib/databend)
sudo mkdir -p /var/lib/databend
sudo chown $(id -u):$(id -g) /var/lib/databend
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
3. 配置与运行 Databend

Databend 提供了单机模式和分布式模式的部署方式。这里我们先介绍单机模式下的配置与启动:

# 运行一个单节点的 Databend 服务
./target/release/databend-server --config-path=config.toml.example

# 或者如果你想在后台运行(daemon mode),可以加上 `--log-file` 参数指定日志文件
./target/release/databend-server --config-path=config.toml.example --log-file=/var/log/databend/server.log &
  • 1
  • 2
  • 3
  • 4
  • 5

上述命令中,config.toml.example 是一个示例配置文件,你需要根据实际需求修改它。例如设置监听地址、端口、数据目录等信息。

4. 配置数据库连接

默认情况下,Databend 启动后会在本地监听 3307 端口作为 SQL 查询接口。你可以通过任何支持 MySQL 协议的客户端连接到 Databend。

mysql -h localhost -P 3307 -u root
  • 1
5. 配置持久化存储 (可选)

如果你希望将数据持久化存储在某个位置(比如 S3 或 MinIO),则需要在配置文件中添加对应的存储后端,并提供相应的访问凭证。

6. 分布式部署

对于生产环境或大规模测试,你可能需要部署多节点集群。请参考 Databend 的 Kubernetes Helm Chart 或 Docker Compose 文件来搭建分布式集群。

注意事项:
  • 在正式环境中,请确保正确配置安全性相关的选项,如密码加密、访问控制等。
  • 对于持久化存储支持,Databend 可以配置为使用各种对象存储服务,包括但不限于 AWS S3、MinIO、Google Cloud Storage 等。

请查阅最新版的 Databend 文档获取详细指导和最佳实践:Databend - The Future of Cloud Data Analytics. | Databend

基于Docker安装和配置使用

atabend 提供了 Docker 镜像,使得用户可以通过 Docker 容器快速部署和运行 Databend 数据库。以下是一个使用 Docker 安装 Databend 的详细配置步骤:

1. 拉取 Databend Docker 镜像

首先,确保已安装 Docker,并在终端中执行以下命令以拉取最新的 Databend Docker 镜像。请注意,实际镜像名可能会随着版本更新而变化,请参考官方文档获取最新版本。

docker pull databend-docker:databend-query # 查询引擎(databend-query)
docker pull databend-docker:databend-meta # 元数据服务(databend-meta)
  • 1
  • 2
2. 创建用于持久化存储的目录(可选)

为了在容器重启后仍能保留数据,可以创建本地主机上的目录用于持久化存储元数据和服务数据:

mkdir -p /path/to/databend/meta-data
mkdir -p /path/to/databend/query-data
  • 1
  • 2
3. 运行 Databend Meta 服务
docker run -d --name databend-meta \
  -v /path/to/databend/meta-data:/var/lib/databend-meta \
  -e "DATABEND_QUERY_HTTP_PORT=8001" \
  databend-docker:databend-meta
  • 1
  • 2
  • 3
  • 4

这里,-v 参数将主机上的目录映射到容器内的 /var/lib/databend-meta 目录。

4. 运行 Databend Query 引擎
docker run -d --name databend-query \
  --link databend-meta:databend-meta \
  -v /path/to/databend/query-data:/var/lib/databend-query \
  -p 8080:8080 \
  databend-docker:databend-query
  • 1
  • 2
  • 3
  • 4
  • 5

这里的 --link 参数用于连接查询引擎与元数据服务容器,使查询引擎能够访问元数据服务。同时 -p 参数用于映射查询引擎的 HTTP 端口到宿主机上。

5. 配置环境变量(可选)

根据需要,可以设置其他环境变量来配置数据库的行为,例如日志级别、监听地址等。请查阅 Databend 文档了解可用的环境变量列表。

6. 访问和测试 Databend

启动容器后,可以通过如下方式访问 Databend 查询引擎:

  • HTTP API: 在浏览器或 Postman 中访问 http://localhost:8080/ (如果映射的是本机端口)。
  • SQL Client:通过 MySQL 客户端工具如 MySQL Workbench 或者命令行工具连接至 Databend,端口通常为 3307,用户名和密码可能需要查看具体文档或环境变量配置。

请始终参照最新的官方文档进行操作,因为具体的参数和配置可能会随时间发生变化。以上示例是基于假设的默认配置给出的。

Centos 9下安装和使用

在CentOS 9系统上安装Databend的大致步骤(以最新的官方文档为准):

1. 确保环境准备就绪
  • CentOS 9系统已经安装了必要的开发工具和依赖库。
  • Rust编程语言环境已安装。
# 更新系统并安装必要软件包
sudo dnf update -y
sudo dnf install -y curl git make gcc-c++ zlib-devel openssl-devel

# 安装Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
2. 安装Databend
  • 使用Rust的Cargo来构建和安装Databend的服务器部分(metasrv和databend-query)。
# 克隆Databend源代码
git clone https://github.com/datafuselabs/databend.git
cd databend

# 构建并安装
cargo build --release --bin metasrv
cargo build --release --bin databend-query

# 创建用于存放运行时数据的目录


![img](https://img-blog.csdnimg.cn/img_convert/3d94057fd9003327e08df0be52d008bb.png)
![img](https://img-blog.csdnimg.cn/img_convert/9b5c3496982eae449f724a4c00a1fe3c.png)
![img](https://img-blog.csdnimg.cn/img_convert/26a508c1d4831b4680a1629c0b69ddd0.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

中...(img-cHljENKU-1715459718217)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/947569
推荐阅读
  

闽ICP备14008679号