《陶建辉-不只是时序数据库而是一个极简时序数据平台.pdf》由会员分享,可在线阅读,更多相关《陶建辉-不只是时序数据库而是一个极简时序数据平台.pdf(37页珍藏版)》请在三个皮匠报告上搜索。
1、不只是时序数据库,而是一个极简时序数据库处理平台主讲人:陶建辉陶建辉 TDengine 创始人核心开发 1994年到美国留学,1997年起,先后在芝加哥Motorola、3Com等公司从事无线互联网的研发工作。2008年初回到北京创办和信,后被联发科收购。2013年初创办快乐妈咪,后被太平洋网络收购。2017年5月创办涛思数据,专注物联网大数据的处理,产品TDengine开源后,在GitHub全球趋势排行榜上多日排名第一。涛思数据已获红杉、GGV、经纬、明势资本等多家机构的近7000万美元的投资。演讲嘉宾介绍2023K+物联网时代,时序大数据的处理面临挑战TDengine 通过技术创新打造极简
2、时序数据平台 时序数据库的优势和技术难题工业、物联网、车联网场景的极简时序数据平台解决方案 AI 时代,我们能做什么 CONTENT目录目录0 01 10 02 20 03 30 04 40 05 5物联网时代,时序大数据的处理面临挑战Part 01物联网大数据处理 假设一台设备每秒钟上报一条数据,每条数据中包含 10 个参数,则一天产生 864000个数据点,一年产生 3.15 亿个数据点。假设一个车间部署 1000 个设备,每年就产生 3154 亿个数据点,约 3.4TB 数据。100 个车间则需要处理 344TB 数据。存储5年则为 1721TB 历史数据。+数据采集数据传输数据存储、分
3、析、计算数据应用物联网四层模型高效写入高效查询存储空间水平扩展简单易用安全可靠物联网大数据处理的挑战海量时序数据读写性能低分布式支持差数据量越大,查询越慢时序数据特有分析需要应用来开发典型场景:低频监控场景、业务管理数据架构陈旧无分布式方案,无法水平扩展依赖windows等环境分析能力弱,而且往往是封闭系统无法云化部署典型场景:scada系统、生产监控系统计算实时性差,查询慢计算内存、CPU 开销巨大无时序针对性优化典型场景:非结构化数据存储、爬虫数据组件多而杂,架构臃肿支持分布式但单节点效率低硬件、人力维护成本非常高典型场景:舆情大数据分析、电商大数据时序大数据处理的行业痛点关系型数据库传统
4、工业实时库Hadoop大数据平台NoSQL数据库通用大数据方案的挑战:低效、复杂、高成本通常将开源的 Kafka,Redis,Hbase,MongoDB,Cassandra,ES,Hadoop,Spark,Zookeeper 等大数据软件拼装起来,利用集群来处理海量数据。因牵涉到多种系统,每种系统有自己的开发语言和工具,开发精力花在了系统联调上,而且数据的一致性难以保证。开发效率低非结构化数据技术来处理结构化数据,整体性能不够,系统资源消耗大。因为多套系统,数据需要在各系统之间传输,造成额外的运行代价。运行效率差每个系统都有自己的运维后台,带来更高的运维代价,出问题后难以跟踪解决,系统的不稳定
5、性大幅上升。运维复杂集成复杂,得不到专业服务,项目实施周期长,导致人力攀升,利润缩水。应用推向市场慢Part 02时序数据库的优势和技术难题时序数据库发展趋势当前,数据规模增长迅速;未来,数据规模更是不可估量。任何旨在处理时间序列数据的系统必须是可扩展的 要 求现有常见处理方式:在应用和时序数据库之间部署代理服务器部分解决了写入问题对于查询,仍旧是很大挑战不仅时序数据需要分布式存储,元数据也需要分布式存储可扩展性/Scalability复杂性/Complex时序数据处理,除需要时序数据之外,还需要:流式处理Stream Processing 缓 存Caching数据订阅Data Subscri
6、ption云原生/Cloud Native为充分利用云计算的弹性资源优势,任何应用包括时序数据库都需要是云原生的。需要具备如下特征:分布式设计自动化 可观测性韧 性水平扩展弹 性方便易用/Ease of use查询语言SQL 仍是最流行的数据库查询语言交互式控制台示例代码数据迁移工具 Part 03TDengine通过技术创新打造极简时序数据平台 分布式架构TDengine ClusterV5V3V4Q1dnode 1 M1Q5V6V2dnode 4V5Q4M0V4dnode 2V5V6V3Q2dnode 5V2V7V6Q3dnode 0dnode 3V3V2V4M2TAOSCAPPTAOSC
7、APPDnodeMnode VnodeQnodeTaosc元数据的分布式设计每张表的元数据全部存储在VnodeMnode 仅仅存储节点、用户、数据库等少量元数据表的元数据采用 B+树 结构存储采用Hash,根据表名,就找到表对应的vnode元数据分布式设计海量数据的处理:分区、分片分片(Sharding)设计策略:按照数据采集点进行分片,片称为 vnode 一个片里有一到多个数据采集点的数据 片可以分布到多台计算机上 一个数据采集点的数据只会在一个片里 片通过中心化的管理节点进行管理 系统的负载均衡的是以 vnode 为单位进行的分区(Partition)策略:按照时间维度进行分区v2v3v5
8、T0-T1T1 T2T2 T3按照时间维度对数据进行分区(Partition)v4按采集点对数据进行分片(Sharding)TDengine对大数据进行的切割T3 T4引入计算节点 Qnode计算与存储完全分离计算节点 Qnode 可动态启停Vnode 可以 split 或 Merge存算分离、弹性伸缩 数据写入流程vnodefollowerApp/taoscWritememorydiskWALvnode leaderFILEFILEFlushHigh AvailabilityHigh ReliabilityRAFT for ConsistencyTDengine:极简的时序数据处理平台除核心
9、的时序数据库之外,TDengine还提供缓存数据订阅流计算处理TDengine能大幅降低系统复杂度运维成本数据订阅类似流行的 Kafka,而且 API 几乎一样,应用可以订阅数据流,只要数据有更新,应用将得到及时通知。但与 Kafka 相比,可订阅一个库、一张超级表或一张表,订阅其中的某些列,还可以指定过滤条件,甚至订阅聚合的结果,灵活可控。Consumer Group 2Consumer Group 1Consumer 1Consumer 2Consumer 3Consumer 4Consumer 5Insert ThreadInsert ThreadInsert ThreadTailHea
10、dA Set of WAL Files on vnode 1A Set of WAL Files on vnode 2A Set of WAL Files on vnode 3 TDengine 缓 存 每张表的最新一条记录永远保存在内存里,因此可以快速获取 通过 SQL 函数 last_row 获取 在很多场景下,无需部署 Redis,降低系统复杂度和成本 物联网、工业互联网场景里,需要缓存的往往是最新的数据TDengine 流计算支持事件驱动的流式计算,支持多种触发方式,支持乱序写入支持各种窗口,包括滑动窗口、状态窗口、会话窗口、事件窗口等采用 SQL 语法,无学习门槛对于通用的时序数据处
11、理场景,Spark or Flink 不再需要Source VnodeInput QueueStream TaskOutput QueueOther Stream TasksTarget Vnode大幅节省人力和运营成本用户无需操心繁琐的部署、优化、扩容、备份、异地容灾等事务,可全心关注核心业务,减少对 DBA 的要求,节省人力成本。TDengine 自身的缓存、流计算、订阅功能还大幅降低运营成本。便捷且安全的数据共享既支持将一个库完全开放,设置读或写的权限;也支持通过数据订阅的方式,将库、超级表、一组或一张表、或聚合处理后的数据分享出去。共享数据与在线文档一样简单。安全可靠的企业级服务提供数
12、据定时备份、恢复,数据从运行实例到私有云、其他公有云或 Region 的实时复制;提供基于角色的访问权限控制、IP 白名单、用户行为审计等功能;提供 7*24 的专业技术服务。TDengine Cloud:全托管的时序数据云服务Part 04工业、物联网、车联网场景的极简时序数据平台解决方案玉溪精品线智能制造大数据平台玉溪卷烟厂精品线智能制造大数据平台,使用 TDengine 存储超过万亿条生产线监控数据。精品线包括 8 个工艺段,260 多类设备,每个设备 11 个分类,主要涉及温度、湿度、水分、重量、风量、流量、液位、频率等多种数据,采集频率高、数据量超过万亿条。TDengine 存储压缩
13、后空间不到 1 TB,查询效率仍然保持在秒级。玉溪精品线智能制造大数据平台Flink 集群Kafka 集群Kafka 集群Flink JobsTDengine客户端接口TDengine 集群TDengine 集群PLCOPC ServerOPC UA 数采MES 数据点接入与展示数据应用与展示采 集缓冲、过滤、聚合持久化每条产线 8 个工艺段、每个工艺段 30+设备、每个设备 1000+数采点。总计设备采集点共有 36000+个,数据类型包括浮点数、布尔型、整型和字符串。2 年总数据量超过万亿条。电力应用场景落地应用:青岛某新能源发电单位的光伏发电物联网平台。平台需要存储和分析光伏发电设备的实
14、时监测数据和遥测数据。平台支撑至少 50000 台设备总计 400 万测点的实时数据接入存储及实时查询,日增量 40 多亿条。客户之前使用 TimescaleDB,无论在读写性能还是稳定性上均遇到问题,且没有集群功能。切换到 TDengine 后,读写性能大幅提高,常规查询在 50 QPS 左右,高并发在 100 QPS 左右,一次历史数据查询分析最大跨度为一年且支撑多测点多模式分析方式。由于 TDengine 的高压缩比,存储成本也大幅降低。山东八五信息智慧园区物联网平台发电-输电-调度-用电平台架构八五信息物联网平台整体解决方案数据连接设备资产模型数据集市基础应用物联网平台由四个部分组成:
15、数据连接:为设备提供接入平台的多种方法,可以兼容工业生产、智能家具、计量仪器等领域的绝大多数通讯协议。为复杂的网络环境提供缓存与边缘计算能力。设备资产模型:为企业或园区复杂的资产结构提供了一套强大的管理工具,可通过不同场景配置得到适合的资产管理模型,并将物联数据与其他静态数据或业务数据进行组合。将繁杂的设备点位数据组合为清晰的模型结构。数据集市:实现物联数据与其他业务数据的整合,构建多重数据关系,为应用提供工作表。基础应用:集成化的通用组件库,将物联网应用中必须和常用的组件集成在了平台层,集约化的实现各类基础应用,如:数据可视化、组态、数据大屏、事件中心(规则引擎)、安全中心等。将设备接入平台
16、将设备组合为资产物联数据与业务数据整合通用组件库车联网平台案例-零跑汽车存储车辆的 GPS 信息。存储 C11 车型车辆的 GPS 等信息。由于存储和处理问题,只能把电动车产生的 3000 多个信号的二进制数据存储在 HDFS 上,用的时候还需要使用 Map/Reduce 进行计算获取,例如使用数据导出功能每次都需要半小时以上才能计算完毕。背景及痛点车联网数据解析后直接存储在 TDengine 集群,不再存储原始报文在 HDFS,解决了使用数据时重复解析问题。数据插入性能高,解决了以前 Hbase 入库不及时的问题;查询方便,不需要在解析报文,时延降低;对时序数据压缩率极高,比原来 HDFS
17、存储原始报文,压缩比提高了 10-20 倍;集群支持在线水平扩展,轻松应对未来扩容需求;解决方案高性能、低硬件成本、历史数据压缩能力提升近 20 倍。关键价值压缩性能提升 10-20 倍,TDengine 助力零跑科技实现性能和成本最优化(https:/ 考车联网案例-零跑汽车数据插入性能高,解决了以前 Hbase 入库不及时的问题;查询方便,不需要在解析报文,时延降低;对时序数据压缩率极高,比原来 HDFS 存储原始报文,压缩比提高了 10-20 倍;集群支持在线水平扩展,轻松应对未来扩容需求;Part 05AI 时代,我们能做什么AI 时代,赋能各行业打通各种数据源,打破数据孤岛、完成数据汇聚,提供标准 SQL 接口,让第三方分析、可视化、AI 工具能无缝集成,并提供安全、灵活而强大的数据共享。21,500+4,700+18,500+社区版开源2019.07.12集群版开源2020.08.03云原生版开源2022.08.13注:GitHub 为截止 2023 年 6 月数据TDengine 的核心代码全部开源 50 多个国家安装实例超 300k GitHub 全球趋势排行榜多次排名第一THANKS