Timescale Cloud:性能、扩展、企业级
自托管产品
MST
TimescaleDB 是一个 PostgreSQL 扩展,适用于时序数据和高吞吐量数据摄取及查询的严苛工作负载。您可以从源代码在任何本地系统上安装 TimescaleDB 实例。
本节向您展示如何
- 在 PostgreSQL 上安装和配置 TimescaleDB - 设置一个自托管的 PostgreSQL 实例,以高效运行 TimescaleDB1。
- 将 TimescaleDB 扩展添加到您的数据库 - 在数据库上启用 TimescaleDB 功能和性能改进。
开发和生产环境
以下说明适用于开发和测试安装。对于生产环境,我们强烈建议您实施以下措施,其中许多可以使用 PostgreSQL 工具实现。
- 增量备份和数据库快照,以及高效的时间点恢复。
- 高可用性复制,最好跨多个可用区部署节点。
- 自动故障检测和快速重启,适用于非复制和复制部署。
- 需要时用于读取扩展的异步副本。
- 用于扩展客户端连接的连接池。
- 零停机时间的次要版本和扩展升级。
- 用于主要版本升级和其他功能测试的分支工作流。
- 监控和可观察性。
准备部署到生产环境?使用 Timescale Cloud 服务,我们为您优化数据库性能,并处理可扩展性、高可用性、备份和管理,让您高枕无忧。
要从源代码安装 TimescaleDB,您的开发环境需要满足以下条件:
PostgreSQL:
使用 PostgreSQL 安装说明
安装 受支持的 PostgreSQL 版本。
我们不建议将 TimescaleDB 与 PostgreSQL 17.1、16.5、15.9、14.14、13.17、12.21 一起使用。
这些次要版本 引入了破坏性的二进制接口更改,该更改在随后的 PostgreSQL 次要版本 17.2、16.6、15.10、14.15、13.18 和 12.22 中被回滚。从源代码构建时,最佳实践是使用 PostgreSQL 17.2、16.6 或更高版本进行构建。通过 Timescale Cloud
和 Timescale 构建和分发的平台包不受影响。
构建工具:
适用于您的操作系统的 C 语言编译器,例如
gcc
或clang
。如果您使用的是 Microsoft Windows 系统,可以安装 Visual Studio 2015 或更高版本来替代 CMake 和 C 语言编译器。请确保在运行安装程序时安装了 Visual Studio 的 CMake 和 Git 组件。
本节向您展示如何使用 Timescale 提供的源代码在受支持的平台上安装最新版本的 PostgreSQL 和 TimescaleDB。
安装最新的 PostgreSQL 源代码
在命令提示符下,克隆 TimescaleDB GitHub 仓库:
git clone https://github.com/timescale/timescaledb进入克隆的目录
cd timescaledb检出最新版本。您可以在我们的 发布页面
查找最新的发布标签。
git checkout 2.17.2此命令会生成一个错误,提示您当前处于“detached head”(分离头)状态。这是预期行为,因为您检出的是标签,而不是分支。请继续按正常步骤操作。
构建源代码
引导构建系统
对于 Microsoft Windows 上的安装,您可能需要将
pg_config
和cmake
文件位置添加到您的路径中。在 Windows 搜索工具中,搜索系统环境变量
。pg_config
的路径应为C:\Program Files\PostgreSQL\<version>\bin
。cmake
的路径在 Visual Studio 目录中。构建扩展
安装 TimescaleDB
配置 PostgreSQL
如果您安装了多个版本的 PostgreSQL,TimescaleDB 只能与其中一个版本关联。TimescaleDB 构建脚本使用
pg_config
来查找 PostgreSQL 存储其扩展文件的位置,因此您可以使用pg_config
来查找 TimescaleDB 正在使用哪个 PostgreSQL 安装。定位
postgresql.conf
配置文件psql -d postgres -c "SHOW config_file;"打开
postgresql.conf
文件并将shared_preload_libraries
更新为shared_preload_libraries = 'timescaledb'如果您使用其他预加载库,请确保它们用逗号分隔。
为 TimescaleDB 优化您的 PostgreSQL 实例
sudo timescaledb-tune此脚本包含在安装 TimescaleDB 时附带的
timescaledb-tools
包中。有关更多信息,请参阅配置。重启 PostgreSQL 实例
设置用户密码
以
postgres
用户登录 PostgreSQLsudo -u postgres psql您已进入 psql shell。
设置
postgres
的密码\password postgres设置密码后,键入
\q
退出 psql。
为了提高性能,您可以在自托管 PostgreSQL 实例上的每个数据库上启用 TimescaleDB。本节向您展示如何使用命令行中的 psql
为 PostgreSQL 中的新数据库启用 TimescaleDB。
连接到 PostgreSQL 实例上的数据库
在 PostgreSQL 中,默认用户和数据库都是
postgres
。要使用不同的数据库,请将<database-name>
设置为该数据库的名称psql -d "postgres://<username>:<password>@<host>:<port>/<database-name>"将 TimescaleDB 添加到数据库
CREATE EXTENSION IF NOT EXISTS timescaledb;检查 TimescaleDB 是否已安装
\dx您将看到已安装扩展的列表
List of installed extensionsName | Version | Schema | Description-------------+---------+------------+---------------------------------------------------------------------------------------plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural languagetimescaledb | 2.17.2 | public | Enables scalable inserts and complex queries for time-series data (Community Edition)按 q 退出扩展列表。
就是这样!您已在自托管的 PostgreSQL 实例上的数据库中运行 TimescaleDB。
接下来做什么?尝试 Timescale 提供的主要功能,查看用例教程,使用您喜欢的编程语言与 Timescale Cloud 服务中的数据交互,将 Timescale Cloud 服务与一系列第三方工具集成,使用常规的Timescale,或深入了解API。
关键词
在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页面
。