写点什么

GreptimeDB 使用指南 | 3 分钟快速下载启动时序数据库

作者:Greptime
  • 2023-09-08
    北京
  • 本文字数:2700 字

    阅读完需:约 9 分钟

GreptimeDB 使用指南 | 3 分钟快速下载启动时序数据库

GreptimeDB 是由 Rust 编写的云原生、分布式、融合存储和分析的开源时序数据库,主要面向拥有大量时序数据并且能够从时序性数据的分析结果中获益的行业,例如金融,物联网,工业、自动驾驶以及 IT 基础设施监控等行业或部门。GreptimeDB 自 2022 年 11 月在 GitHub 上开源,版本已从 v0.1 迭代到 v0.4,逐渐趋于成熟,v0.4 是第一个我们推荐可用于生产的版本,那就来看看如何快速的使用 GreptimeDB。


安装启动

首先是启动安装,GreptimeDB 目前支持三种方式来安装启动


  • 二进制直接启动

  • Docker 容器方式来启动

  • 在 Kuberenets 环境中启动(集群方式)在 官网下载页面 可以找到三种方式的下载文件,下载中心里面包含了最新的稳定版本,当然对于想尝鲜的朋友,我们也提供了 Nightly builds 版本。


我们先以最新稳定的版本,二进制启动方式为例,笔者的设备是苹果 M1 芯片的,下载如下图的版本(大家需要根据自己的设备来选择对应的版本):


下载之后的文件是 tgz 压缩文件:

khaos@bogon ~/W/s/GreptimeDB> ls -lrth-rw-r--r--@ 1 khaos  staff    50M Sep  5 16:46 greptime-darwin-arm64.tgz
复制代码


可以使用解压工具进行解压,笔者用的是 tar 命令行工具:

khaos@bogon ~/W/s/GreptimeDB> tar zxvf greptime-darwin-arm64.tgzx greptimekhaos@bogon ~/W/s/GreptimeDB> ls -lrth-rwxr-xr-x@ 1 khaos  staff   128M Jul  5 01:01 greptime*-rw-r--r--@ 1 khaos  staff    50M Sep  5 16:46 greptime-darwin-arm64.tgz
复制代码


查看使用帮助(如果遇到操作系统阻拦运行,可以通过安全 &隐私设置允许运行):

khaos@bogon ~/W/s/GreptimeDB> ./greptime -helpgreptimedbbranch: HEADcommit: 4b580f40372c023120b4abf408caaaf8d2e06870dirty: falseversion: 0.3.2
USAGE: greptime [OPTIONS] <SUBCOMMAND>
OPTIONS: -h, --help Print help information --log-dir <LOG_DIR> --log-level <LOG_LEVEL> -V, --version Print version information
SUBCOMMANDS: cli datanode frontend help Print this message or the help of the given subcommand(s) metasrv standalone
复制代码


可以看到我们下载的版本是 0.3.2。 GreptimeDB 开源版本就支持分布式,所以下载的程序可以以不同的组件运行,比如 datanodefrontend 或者 metasrv,当然也可以以单机模式运行,即 `standalone`,为了快速体验 GreptimeDB,我们就以单机模式为例:

khaos@bogon ~/W/s/GreptimeDB> ./greptime standalone start2023-09-05T09:07:06.343240Z  INFO greptime: short_version: 0.3.2, full_version: greptimedb-HEAD-4b580f42023-09-05T09:07:06.343280Z  INFO greptime: command line arguments2023-09-05T09:07:06.343286Z  INFO greptime: argument: ./greptime2023-09-05T09:07:06.343292Z  INFO greptime: argument: standalone2023-09-05T09:07:06.343296Z  INFO greptime: argument: start...2023-09-05T09:07:06.351417Z  INFO cmd::standalone: Datanode instance started2023-09-05T09:07:06.351431Z  INFO frontend::server: Starting POSTGRES_SERVER at 127.0.0.1:40032023-09-05T09:07:06.351533Z  INFO servers::server: Postgres server started at 127.0.0.1:40032023-09-05T09:07:06.351561Z  INFO frontend::server: Starting OPENTSDB_SERVER at 127.0.0.1:42422023-09-05T09:07:06.351595Z  INFO servers::server: OpenTSDB server started at 127.0.0.1:42422023-09-05T09:07:06.351608Z  INFO frontend::server: Starting PROM_SERVER at 127.0.0.1:40042023-09-05T09:07:06.351760Z  INFO servers::prom: Prometheus API server is bound to 127.0.0.1:40042023-09-05T09:07:06.351776Z  INFO frontend::server: Starting HTTP_SERVER at 127.0.0.1:40002023-09-05T09:07:06.377584Z  INFO servers::http: Enable dashboard service at '/dashboard'2023-09-05T09:07:06.377693Z  INFO servers::http: HTTP server is bound to 127.0.0.1:40002023-09-05T09:07:06.377704Z  INFO frontend::server: Starting MYSQL_SERVER at 127.0.0.1:40022023-09-05T09:07:06.377730Z  INFO servers::server: MySQL server started at 127.0.0.1:40022023-09-05T09:07:06.377750Z  INFO frontend::server: Starting GRPC_SERVER at 127.0.0.1:40012023-09-05T09:07:06.377768Z  INFO servers::grpc: gRPC server is bound to 127.0.0.1:4001
复制代码

看到上面的信息,恭喜你,说明已经启动成功。


GreptimeDB 支持不同的连接协议,比如 MySQLPostgreSQLgRPC 等,对应了不同的端口,如果想修改默认端口,可以通过配置文件或者启动参数来设置,具体可以参考 https://docs.greptime.com/user-guide/operations/configuration


连接

接下来,可以通过你常用的客户端来连接 GreptimeDB,本文以 MySQL 为例:

khaos@bogon ~/W/website (sync-biweekly-report)> mysql -h 127.0.0.1 -P 4002Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 8Server version: 5.1.10-alpha-msql-proxy Greptime
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
复制代码


看到上面消息,再次恭喜,连接成功,接下来可以看下有哪些默认的表:

mysql> show tables;+---------+| Tables  |+---------+| numbers || scripts |+---------+2 rows in set (0.00 sec)
复制代码


numbers 是系统自带的测试表,scripts 表是用来存放 Python 自定脚本的(具体可以参看 https://docs.greptime.com/user-guide/scripts-&-functions/overview)

Dashboard

GreptimeDB 还自带了一个 dashboard,方便用户快捷的通过 web 访问数据库,默认可以通过 http://127.0.0.1:4000/dashboard/ 来访问,如下图:


Dashboard 支持执行 SQL,SQL 查询结果的视图,编写 Python Scripts 等,还也可以通过自带的 Playground 来体验 GreptimeDB 的功能。


下图是通过 Playground 里面的代码生成了一组测试数据,并查询之后的展示效果:


结语

至此,GreptimeDB 已经完全安装启动成功,便可以通过自己常用的方式,无论是客户端、SDK 或者 API 方式来访问了。具体可以参考我们的使用文档:https://docs.greptime.com/getting-started/overview

用户头像

Greptime

关注

专注于 Infra 技术分享 2022-09-23 加入

分布式、高性能、存储计算分离的开源云原生时序数据库

评论

发布
暂无评论
GreptimeDB 使用指南 | 3 分钟快速下载启动时序数据库_数据库_Greptime_InfoQ写作社区