详情页标题前

阿里云RDS数据库时序数据库(TimescaleDB)-云淘科技

详情页1

RDS PostgreSQL实例新增TimescaleDB插件版本,支持时序数据的自动分片、高效写入、检索、准实时聚合等。

目前RDS PostgreSQL对外开放的是Open Source版本的TimescaleDB,由于License等问题,可能暂不支持一些高级特性,详情参见TimescaleDB。

前提条件

  • 实例大版本为PostgreSQL 10或以上版本。

  • 实例内核小版本至少升级到20230330。查看和升级内核小版本,请参见升级内核小版本。

    重要

    20230330内核小版本之前已支持此插件,但RDS PostgreSQL支持插件策略已于2023年4月17日调整,部分插件在20230330或以上内核小版本才能创建,更多信息,请参见【通知】2023年4月17日起RDS PostgreSQL部分插件在低内核版本限制创建。

    • 如果您的实例大版本为PostgreSQL 14,在20230330内核小版本前已使用了TimescaleDB插件(插件版本小于等于2.5.0),在不升级内核小版本时,不影响使用,在升级内核小版本到20230330或以上版本后,必须手动执行ALTER EXTENSION timescaledb UPDATE;命令进行手动升级插件后,才能继续使用。

    • 如果您的实例大版本为PostgreSQL 15、13、12、11或10,在20230330内核小版本前已使用了TimescaleDB插件,不影响使用。

    • 如果您首次创建或重新创建此插件,请升级内核小版本到20230330或以上版本。

  • 使用该插件前,需要将timescaledb加入到shared_preload_libraries参数中。

    您可以使用RDS PostgreSQL参数设置功能,为shared_preload_libraries参数添加timescaledb。具体操作,请参见设置实例参数。

说明

部分存量用户可能已经创建过TimescaleDB插件,如果升级内核小版本后,出现如下类似提示:

ERROR:  could not access file "$libdir/timescaledb-1.3.0": No such file or directory

请在对应数据库执行如下SQL更新插件:

alter extension timescaledb update;

添加TimescaleDB插件

使用pgAdmin客户端连接实例,添加TimescaleDB,命令如下:

CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;

创建时序表

  1. 创建标准表conditions,示例如下:

    CREATE TABLE conditions (
      time        TIMESTAMPTZ       NOT NULL,
      location    TEXT              NOT NULL,
      temperature DOUBLE PRECISION  NULL,
      humidity    DOUBLE PRECISION  NULL
    );
  2. 创建时序表,示例如下:

    SELECT create_hypertable('conditions', 'time');

说明

详细命令说明请参见Create a Hypertable。

高效写入

您可以使用标准SQL命令将数据插入超表(Hypertables),示例如下:

INSERT INTO conditions(time, location, temperature, humidity)
  VALUES (NOW(), 'office', 70.0, 50.0);

您还可以一次将多行数据插入到超表中,示例如下:

INSERT INTO conditions
  VALUES
    (NOW(), 'office', 70.0, 50.0),
    (NOW(), 'basement', 66.5, 60.0),
    (NOW(), 'garage', 77.0, 65.2);

检索

您可以使用高级SQL查询检索数据,示例如下:

--过去3小时内,每15分钟采集一次数据,按时间和温度排序。
SELECT time_bucket('15 minutes', time) AS fifteen_min,
    location, COUNT(*),
    MAX(temperature) AS max_temp,
    MAX(humidity) AS max_hum
  FROM conditions
  WHERE time > NOW() - interval '3 hours'
  GROUP BY fifteen_min, location
  ORDER BY fifteen_min DESC, max_temp DESC;

阿里云RDS数据库时序数据库(TimescaleDB)-云淘科技

您也可以使用固有的函数进行分析查询,示例如下:

--均值查询(Median)
SELECT percentile_cont(0.5)
  WITHIN GROUP (ORDER BY temperature)
  FROM conditions;

阿里云RDS数据库时序数据库(TimescaleDB)-云淘科技

--移动平均数(Moving Average)
SELECT time, AVG(temperature) OVER(ORDER BY time
      ROWS BETWEEN 9 PRECEDING AND CURRENT ROW)
    AS smooth_temp
  FROM conditions
  WHERE location = 'garage' and time > NOW() - interval '1 day'
  ORDER BY time DESC;

阿里云RDS数据库时序数据库(TimescaleDB)-云淘科技

常见问题

Q:使用插件时遇到如下报错如何处理?

ERROR:  functionality not supported under the current license "ApacheOnly", license
HINT:  Upgrade to a Timescale-licensed binary to access this free community feature

A:TimescaleDB官方协议要求,不允许使用TSL协议的功能提供database-as-a-servicesoftware-as-a-service。更多信息,请参见TimescaleDB官方协议的2.2章节。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/155783.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 阿里云对象存储OSSiOS初始化-云淘科技

    OSSClient是OSS服务的iOS客户端,为调用者提供了一系列的方法进行操作、管理存储空间(Bucket)和文件(Object)等。在使用SDK发起对OSS的请求前,您需要初始化一个OSSClient实例,并对OSSClient实例进行必要设置。 说明 OSSClient的生命周期需与应用程序的生命周期保持一致。即您需要在应用启动时创建一个全局的OSSC…

    阿里云对象存储 2023年12月10日
  • 阿里云容器服务ACKRAM鉴权-云淘科技

    在使用RAM账号调用阿里云API前,需要主账号(即阿里云账号)通过创建授权策略对RAM账号进行授权。 资源授权 默认RAM账号没有权限通过调用阿里云API去创建、修改云资源。使用RAM账号调用API时,您需要先创建一个授权策略,然后将这个授权策略关联给对应的RAM账号完成资源授权。 在创建授权策略时,您可以通过ARN(Aliyun Resource Name…

    阿里云容器服务 2023年12月10日
  • 阿里云云原生大数据计算服务 MaxCompute压缩数据从OSS迁移至MaxCompute-云淘科技

    本文为您介绍如何通过MaxCompute外部表能力,将SNAPPY压缩文件数据(以半角逗号分隔)从OSS迁移至MaxCompute。 前提条件 已开通MaxCompute并创建项目,详情请参见创建MaxCompute项目。 已开通OSS并创建存储空间,且Bucket中有压缩数据SNAPPY文件,开通OSS创建存储空间详情请参见创建存储空间。本文使用的示例文件…

    2023年12月10日
  • 阿里云容器服务ACK常见问题-云淘科技

    本文介绍您在使用托管版与专有版容器集群ACK时可能遇到的常见问题以及解决方案。 您在使用容器服务ACK时如果收到容器服务ACK返回的错误信息,可查阅容器服务ACK错误码匹配解决方案。如果您没有收到具体的错误信息,可根据以下问题分类匹配问题场景和解决方案。 分类 相关文档 授权 授权管理FAQ(包括鉴权失败、RBAC授权使用、RAM授权使用等常见的授权使用问题…

    阿里云容器服务 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLS时区列表-云淘科技

    本文介绍定时SQL功能所涉及的时区格式以及常见的时区列表。 时区格式设置 定时SQL功能中的时区格式为{±偏移小时数}{分钟数}。 偏移小时数的取值范围:[-12,+14]。 分钟数的取值范围:00、30、45。 整体取值范围:[-1200,+1400] 重要 小时和分钟都必须为两位数字。您可以在创建定时SQL时,配置调度间隔为Cron,并选择时区。常见时区…

    2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。