当前位置: 首页 > news >正文

荆州做网站/营销培训视频课程免费

荆州做网站,营销培训视频课程免费,电商设计师接单平台,企业邮箱格式怎么写IoTDB应用灰色部分是IotDB的组件,数据可以通过JDBC/Native API 写入IoTDB,多个IoTDB之间的数据通过TsFile Sync来实现同步,例如边缘站点收集数据生成并TsFile后,可以定期将TsFile同步到云上的IoTDB。IotDB Egine通过TsFile的API讲…

448027b95d07cae143ccc63c18ae4545.png

IoTDB应用

3771702b007d3a63d51f152c3e0aabce.png

灰色部分是IotDB的组件,数据可以通过JDBC/Native API 写入IoTDB,多个IoTDB之间的数据通过TsFile Sync来实现同步,例如边缘站点收集数据生成并TsFile后,可以定期将TsFile同步到云上的IoTDB。IotDB Egine通过TsFile的API讲数据写成TsFile的格式,支持的存储方式有本地存储和HDFS。TsFile支持hadoop、Hive、Spark直接进行大数据分析。可以看到IoTDB的核心部分就是TsFile,承载了IoTDB多个实例间的数据同步和数据分析。

IoTDB的架构

de1a963ba59b21f33716bb242a33a71b.png

IoTDB使用客户端服务器的架构,客户端向服务端发起读或写的请求,服务端将请求转发到相应的模块,例如写入请求转发到StorageEgnine, 读请求转发到QueryEngine,其他还有schema manager 和Administration模块。

TsFile

TsFile是IOTDB的核心部分,下面介绍文件的格式和读写流程

文件格式

下面是TsFile的结构图

22f3cc716e9580c0e4317a378d246da6.png

上图的文件包含了两个设备d1、d2。每个设备包含了三个measurements:s1、s2、s3。一共有6条时间线。每条时间线包含2个chunk。

MetaData

一个TsFile中包含了三个部分metadata

  • ChunkMetaData 记录了时间线的Chunk的起始地址,数据类型,统计信息和指标名
  • TimeSeriesMetaData 记录了ChunkMetaData 列表的起始地址,ChunkMetaData的数量,指标名,统计信息,数据类型。
  • 第三部分是TsFileMetaData,是一个二叉树结构,记录了设备和measurements的结构

9f4ba455cf116191a413412ab25701b3.png

如上图所示,设备分为INERNAL_DEVICE,LEAF_DEVICE,指标也分为INTERNAL_MEASEUMENT,LEAF_MEASEUMENT。这些层级关系方便表达现实世界中设别的层级关系,也便于快速查询。

DATA

数据部分存储了大量的ChunkGroup,每一个ChunkGroup表示一个设备的数据。每个ChunkGroup中包含多个chunk和一个footer。

chunk存储一个指标一段时间的数据,chunk中包含了ChunkHeader和若干page。chunkHeader中记录了指标名、数据大小、压缩类型、编码类型、page数量。一个chunk中的数据是按照时间升序排序的。

page存储chunk中的数据,包含一个pageheader和编码过的时序数据。page header记录压缩前的数据和压缩后的数据(如果有),和统计数据。

ChunkGroupFooter 记录了设备名,数据大小和chunk的数量。

写过程

d0ed6fe7d738f7a7a8e5e2bc0efd8d44.png

读过程分为三个步骤

1.写内存缓冲区

TsFile有两个写数据接口

// 写一个设备一个时间点的多个指标
TsFileWriter.write(TSRecord record)
// 写一个设别多个时间点的多个指标
TsFileWriter.write(Tablet tablet)

当写数据接口被调用后,数据会被分配到设备对应的ChunkGroupWriter,设备对应的指标数据会分配到指标对应的ChunkWriter。ChunkWriter负责对数据进行编码(例如gorilla)及生成page。

2. 持久化ChunkGroup

当内存中的数据大小达到一定大小时,会调用TsFileWriter.flushAllChunkGroups()方法将内存中的所有设备的所有数据存储到磁盘上的TsFile。

3. 关闭文件

基于内存中的元数据信息,会生成TsFileMetadata并且追加到文件的末尾。

读过程

读过程比较复杂,参考 https://iotdb.apache.org/zh/SystemDesign/TsFile/Read.html

http://www.lbrq.cn/news/745831.html

相关文章:

  • 做购物网站哪种服务器好/软件开发培训中心
  • 做网站服务器多大的好/百度经验官网
  • 哪类网站流量大/十大销售管理软件排行榜
  • 如何做充值网站/网站制作公司排名
  • 诚信通国际网站怎么做/淘宝seo
  • 即墨做网站的/他达那非片能延时多久
  • 门户网站建设的步骤/查询网官网
  • 更改网站名称/企业员工培训课程有哪些
  • 通化网站建设公司/神马搜索推广
  • 外包类设计网站/百度指数分析案例
  • 黑彩网站建设需要什么东西/网络销售是什么工作内容
  • 那个网站做租赁好/磁力蜘蛛种子搜索
  • 产品seo怎么优化/网站seo优化
  • wordpress 用户接口/北京网站优化推广公司
  • 邢台地区网站建设/常用的网络推广方式有哪些
  • 网站建设与网页制作案例/aso优化运营
  • 南通seo网站诊断/百度关键词搜索怎么收费
  • 网站建设 响应式 北京/建立网站流程
  • 网页游戏大全官网/济南seo排行榜
  • 整站wordpress下载/百度app关键词优化
  • 王健林亏60亿做不成一个网站/用asp做的网站
  • qq客服代码放在网站哪里/建什么网站可以长期盈利
  • 什么网站出项目找人做/微信怎么推广
  • 广州网站建设公司排行/seo流量排行榜神器
  • 盐城网页制作哪家好/快速排名优化推广手机
  • 网站推广策划包含的内容/无锡seo关键词排名
  • 建网站怎么做报分系统/长安seo排名优化培训
  • 谷歌seo技巧/郑州seo外包顾问
  • 贾汪区人民政府门户网站建设/淘宝关键词指数
  • 网页模板下载网站10/线下引流的八种推广方式
  • STM32 vscode 环境, 官方插件
  • 华为云之开发者空间云主机使用体验【玩转华为云】
  • STL——string的使用(快速入门详细)
  • 驱动开发系列66 - glCompileShader实现 - GLSL中添加内置函数
  • leetcode4_452 and 763
  • 调试技巧(vs2022 C语言)