使用指南|如何将 GreptimeDB 数据保存在阿里云 OSS
引入
GreptimeDB 从诞生的第一天起就定义为面向云时代基础设施的分布式时序数据库,可以将数据保存在 AWS S3 或者阿里云 OSS 等等这样的廉价对象存储上。
本篇文章将详细介绍如何做到这一点。
第一步:下载 GreptimeDB
首先,你需要下载一个 GreptimeDB 实例,可以根据你的运行平台从 Greptime 资源页面 下载打包好的二进制文件,也可以使用 docker 镜像。
更多安装方式请参考安装文档。
本文将以我们提供的安装脚本来演示。首先打开命令行,进入一个临时工作目录,执行下列脚本将会自动下载并安装一个 greptime 实例到本地:
这里下载的是 nightly 构建版本,仅用于测试,如果需要生产稳定运行,还请下载正式发布的版本(截止本文编写时间是 v0.4.0)。
如果一切顺利的话,你应该可以看到类似下列的输出:
在当前目录可以看到 greptime
这个二进制文件:
执行 ./greptime --help
命令,查看帮助信息:
第二步 配置 OSS 信息
假设你已经创建了一个阿里云 OSS 的 bucket ,并且已经有对应的 Access Key ID/Secret 等鉴权信息,接下来就进入配置环节。
首先,可以从我们的 GitHub 仓库下载 standalone 单机模式的样例配置文件 standalone.example.toml,假设我们保存为 config.toml
:
接下来编辑 config.toml
,重点是其中的 [storage]
部分,样例展示如下:
配置本地磁盘模式,数据库根目录设置为 /tmp/greptimedb/
(如果是生产环境,请修改为非临时目录)。
参照配置文档,可以修改成将数据保存在阿里云 OSS 上:
这里有一些关键参数,可以根据你的具体使用替换成你的 OSS bucket 信息:
bucket
:创建的 bucket 名称;root
:数据库数据的存储目录,这里设定为oss-test
,相对于 bucket 的根目录开始;access_key_id
: OSS 的访问 Secret Access ID;secret_access_key
: OSS 的访问 Secret Access key;必要的话设置
region
或者endpoint
,我们测试的 bucket 创建在杭州,所以 region 设置为cn-hangzhou
,endpoint
设置为https://oss-cn-hangzhou.aliyuncs.com/
`。
第三步 启动并测试
正确配置之后,就可以启动测试了。执行下列命令启动单机版 GreptimeDB:
我们通过 -c
选项指定了配置文件。如果正常启动可以在最后看到类似如下的日志:
GreptimeDB 支持各类协议端口将正常绑定并监听。我们可以通过浏览器地址 http://localhost:4000/dashboard/ 访问 GreptimeDB 自身携带的 Dashboard,如下所示。
也可以在这里执行 SQL/Python/PromQL 等查询语句。
接下来我们尝试创建表,再写入数据并查询。你可以直接在 dashboard 里窗口执行这些 SQL 语句:
一切正常的话,你将可以看到查询的结果,示例如下:
我们可以登录阿里云 OSS 的控制台查看写入的数据:
为了提升查询性能,建议将本地文件缓存打开:
cache_path
指定本地缓存的目录,cache_capacity
指定本地缓存使用的最大大小。
Have fun! ◔.̮◔✧
版权声明: 本文为 InfoQ 作者【Greptime】的原创文章。
原文链接:【http://xie.infoq.cn/article/47b30791a9cef6b30affc572a】。文章转载请联系作者。
评论