时序数据库(Time Series Database,TSDB)是一种专门设计用于高效存储和处理时间序列数据的数据库系统。时间序列数据是指按时间顺序排列的数据点序列,每个数据点通常包含一个时间戳和一个或多个值(度量Metrics)。这类数据广泛存在于物联网(IoT)、监控系统、金融交易、工业控制、传感器网络、气象记录、服务器指标监控等多个领域。
背景
时序数据库产生背景主要源于以下几个方面:
物联网(IoT)的快速发展:随着物联网技术的普及,大量设备和传感器被部署在全球各地,持续不断地生成时间序列数据,如温度、湿度、设备状态等。这些数据通常带有时间戳,且数据量巨大,传统的关系型数据库难以高效地存储和处理这类数据。
监控与日志管理需求增加:在IT运维、工业控制、能源管理等领域,系统和应用程序的监控变得日益重要。这些应用需要收集并分析时间序列数据来检测异常、性能瓶颈和趋势,以支持决策制定。传统的数据库在处理高并发写入、数据压缩和高效查询时间序列数据方面存在局限。
大数据分析与预测需求:随着数据分析技术的发展,企业和研究机构越来越重视对历史时间序列数据的分析,以进行预测性维护、市场趋势预测、气候模型预测等工作。这要求数据库不仅能够高效存储大规模时间序列数据,还要支持复杂的时间序列分析和查询功能。
资源优化与成本控制:在很多场景下,存储和处理时间序列数据的成本是一个重要考虑因素。时序数据库通过数据压缩、高效索引和存储优化等技术,能够在保证查询效率的同时,有效降低存储和计算资源的需求。
因此,时序数据库作为专门针对时间序列数据设计的存储系统,应运而生,它针对时间序列数据的特点进行了优化,如高写入吞吐量、数据压缩、时间范围查询优化等,能够更好地满足上述应用场景的需求。
功能概述
Ganos TSDB是在云原生数据库PolarDB PostgreSQL版(兼容Oracle)基础上实现的时序数据库,它完全兼容开源时序数据库TimescaleDB Apache 2.0版本。同时提供连续聚合、时序压缩、统计分析等高级功能,其核心功能可以概括为以下几点:
高性能读写:Ganos TSDB能够处理每秒成千上万次的数据点写入,并提供快速的历史数据检索能力,满足实时监控和分析的需求。
连续聚合:支持自定义聚合视图,该视图会根据指定的时间间隔(例如每分钟、每小时或每天)对原始时间序列数据进行聚合计算(如求和、平均值、最大值或最小值等),并将结果存储在单独的物化视图中。这个过程是自动的,配置完成后,Ganos TSDB会在后台定期或根据数据变化更新这些聚合视图,确保聚合数据总是最新的。
跨模态融合处理:支持时序、时空等不同模态数据的一体化存储与检索,数据可按时间+空间多维分区,查询时自动分区裁剪,加速检索效率。
低成本存储:Ganos TSDB采用优化的存储结构和压缩算法来减少存储空间需求,支持对相似或重复数据进行去重和高压缩比存储,使得存储空间降低70%以上。同时可无缝对接OSS对象存储,将冷数据归档,大幅降低存储成本,这对于海量时间序列数据尤其重要。
数据保留策略:支持灵活的数据保留策略,根据业务需求自动删除过期数据,帮助管理数据存储成本并保持数据库的高效运行。
扩展性与高可用性:为了应对大规模应用的需求,Ganos TSDB依托云原生数据库PolarDB,提供水平扩展能力和故障转移机制,确保系统的稳定性和可靠性。
综上所述,Ganos TSDB时序数据库凭借其特有的设计和优化,为处理时间序列数据提供了强大的支持,是实现大规模监控、分析和预测任务不可或缺的工具。
使用场景
Ganos TSDB时序数据库主要应用于以下场景:
物联网(IoT): 在物联网场景中,大量设备如智能传感器持续不断地生成温度、湿度、压力等监测数据。这些数据具有时间序列特性,需要被实时收集、存储并分析,以实现远程监控、故障预警等功能。
监控系统:包括IT基础设施监控(如服务器性能、网络流量)、应用性能管理等。这些系统需要记录系统各项指标随时间的变化,以便快速定位问题和优化性能。
金融服务:金融市场中的股票价格、交易量、汇率等数据都是典型的时间序列数据。时序数据库可以用于高频交易分析、市场趋势预测和风险管理。
能源与Utilities:智能电网、水电站的运行数据、能耗数据等,通过时序数据库进行存储和分析,有助于提高能源分配效率和预测维护。
工业自动化:制造业中的设备状态监控、生产流程控制等,产生大量的时间序列数据。时序数据库帮助实现设备健康管理、产能优化等。