Time Series DataBase Overview

时序数据库TSDB(Time Series DataBase)是WSN(Wireless Sensor Network)的基础,还在用Oracle搭建车联网或物联网系统的兄弟们,可以看看下面的内容换换思路。

遗憾的是找了半天几乎没有针对嵌入式平台的版本,或许依靠终端硬件性能的提升能直接跨过这一鸿沟。


数据结构定义

在OpenTSDB的定义中,每条数据记录有4部分组成[4]:metric,timestamp,value,tags。

在Druid的定义中,每条记录由2部分组成[3]:event,metrics。


metrics

从OpenTSDB的定义中[7]就能看出来,metric基本上就代表A-PUD的数据负载。


特殊需求

从操作接口来说,大部分的写操作都是追加式(Append)的,频率很高(ms级别),很少有删除数据的情况存在;而读操作也是按时序一块块读。因此在读写效率上和存储优化上有很多工作可以做。从应用角度来说,访问时效与时戳(TimeStamp)相关,散布在各地的1小时内数据可能要求1秒钟响应,1周前的历史数据允许1分钟的延迟。从系统架构来说,分布式存储是必须的,并且要解决分布式带来的数据融合(Fusion)问题。从数据特征来说,平稳数据的信息量少,异常数据的信息量大,一些信号特征(均值、方差、极值、中位数)需要在实时处理后在线存储,有些信号需要以可变分辨率(MultiResolution)存储,有些信号需要支持多粒度(Granularity)解析,甚至是重采样(ReSample)的能力。


资源网站

Druid 以MySQL作为后台数据库,具备在线分析处理(OLAP)功能,能够对实时数据进行查询,通过Broker节点进行交互式/多层次查询。以Connector方式提供不同数据应用扩展(R, Ruby, Python, node.js),目前最新版本是0.6.160。

Geras 位于剑桥一家叫1248公司开发的针对IoT的商业数据库,支持HTTPS, JSON, RESTful, SenML, MQTT, HyperCat。

InfluxDB 使用Go语言开发,以类SQL为查询语言,提供https读写接口,不依赖任何外部数据库(如Zookeeper、Hadoop、Redis等),目前最新版本是0.8.8。

KairosDB 基于Cassandra NoSQL开发,开发时间不到2年,开源但目前没有稳定版本。

KDB+ 貌似被墙:(

OneTick 法国2005年成立的一家公司开发的商业数据库,主要针对金融行业的应用,提出了CEP(Complex Event Processing)的概念。

OpenTSDB 以HBase作为后台数据库,通过优化Schema来压缩及加速数据存储。提供CLI接口(uid, mkmetric, import, query, fsck, scan, search, tsd)和http接口(get, post, put, delete),提供的Utility中包含统计工具[2],如:GnuPlot, R, SciPy。该项目开源,诞生于2010年,目前版本2.10。

SiteWhere 开源的M2M平台,基于MongoDB和HBase,使用Solr搜索引擎,提供REST服务接口。提供IDeviceManagement和IUserManagement接口以支持数据商店应用,当然还包括Spring Security验证授权。提供Arduino和Android平台软件库[5]。开源项目,目前版本1.0.0。

TempoDB 貌似开源[6],但主页上基本没什么东西。

Plazma Treasure Data公司提供的商业数据库,2014年成立。

Informix TimeSeries  IBM公司2001年收购的数据库产品。

Presto 开源的分布式SQL查询引擎。

AxiBase 基于HDFS(Hadoop Distributed File System)的产品,提供各种看板Dashboard和自定义规则引擎。


参考链接

1. http://en.wikipedia.org/wiki/Time_series_database

2. http://opentsdb.net/docs/build/html/resources.html

3. http://druid.io/docs/0.6.160/Tutorial:-A-First-Look-at-Druid.html

4. http://opentsdb.net/docs/build/html/user_guide/writing.html

5. http://docs.sitewhere.org/current/hardware/

6. http://blog.tempoiq.com/client-libraries-on-github

7. http://opentsdb.net/docs/build/html/user_guide/query/timeseries.html

8. http://www.xaprb.com/blog/2014/06/08/time-series-database-requirements/

9. http://nosql-database.org

10. http://nosql.mypopescu.com/kb/nosql



转载请注明出处 blog.youkuaiyun.com/spacecraft


这张图信息量太大,得慢慢研究。





### YOLO系列论文概述 YOLO(You Only Look Once)是一种高效的实时目标检测算法,其核心理念在于通过单次推理完成对象定位与分类的任务。相比传统的两阶段方法(如Faster R-CNN),YOLO显著提升了速度性能[^3]。 #### 基本原理 YOLO的核心思想是将输入图像划分为S×S的网格结构,并预测每个网格单元中的边界框及其对应的类别概率。具体而言,模型会输出一个大小为 \( S \times S \times (B \cdot 5 + C) \) 的张量,其中\( B \)表示每个网格预测的边界框数量,而\( C \)则代表类别的总数[^4]。 #### 主要版本发展 以下是YOLO的主要版本及其特点: 1. **YOLOv1**: 首次提出了基于卷积神经网络的目标检测框架,实现了端到端训练。然而,由于设计上的局限性,其精度相对较低。 2. **YOLOv2**: 提出了改进版Darknet-19作为骨干网络,并引入Anchor机制来提升边界框预测能力。此外,还加入了预训练策略以提高泛化性能[^5]。 3. **YOLOv3**: 进一步扩展了多尺度特征融合的思想,在不同层次上提取特征用于检测小物体。该版本支持多种分辨率输入以及更复杂的场景解析需求[^6]。 4. **YOLOv4**: 结合了许多先进的优化技术,例如CSPNet、Mish激活函数等,从而大幅提高了效率与准确性。特别值得注意的是,它首次公开了一个完全开源的大规模目标检测解决方案[^7]。 5. **YOLOv5**: 虽然官方并未发布正式文档,但社区广泛认可此版本具有更高的灵活性和易用性。借助PyTorch生态系统的强大功能,开发者可以快速部署自定义项目[^8]。 ```python import torch from yolov5 import detect # 加载预训练权重文件 model = torch.hub.load('ultralytics/yolov5', 'yolov5s') # 执行图片检测任务 results = model('example.jpg') print(results.pandas().xyxy[0]) ``` #### 技术优势 与其他主流目标检测算法相比,YOLO具备以下几个明显的优势: - 实时性强:得益于简洁的设计思路,能够在保持较高mAP指标的同时实现每秒数十帧以上的处理速率; - 泛化能力强:通过对整幅图像建模而非单独区域分析,减少了背景误报率; - 易于集成:无论是嵌入式设备还是云端服务器环境均能良好适配[^9]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值