墨天轮国产数据库沙龙 | 胡津铭:时序数据库DolphinDB,从量化金融到万物互联
分享嘉宾:胡津铭 DolphinDB研发副总监
整理:墨天轮社区
导读
DolphinDB是高性能分布式时序数据库,集成了功能强大的编程语言和高容量高速度的流数据分析系统,为海量结构化数据的快速存储、检索、分析及计算提供一站式解决方案。
时序数据库的主要应用场景
我今天分享的主题是“时序数据库:从量化金融到万物互联”,因为在我看来这是时序数据库最主要的两个应用场景:量化金融与物联网。

图1 时序数据库的主要应用场景
1、在量化金融中的应用
在这里举一个典型的金融数据示例,如下图所示stock ID即股票ID,bid price是现在股票的买入价格,Ask price是股票的即时卖价,然后time是这条数据产生的时间。

图2 金融数据示例
第一个场景是实时查询,能够查询所有的股票在这一时间段内的数据,其中关键点在于能查看到某一特定的股票,与特定的时间范围内的数据,即对单个时间序列做到实时查询。
第二个场景是数据分析,如图上所示,可以计算股票代码为Apple的这只股票在2月23号这一天的这个moving average的数据,即对单个时间序列做数据分析。
那第三个场景是策略回测,比如在评估量化金融已开发出来的策略,应用在历史数据上能够获得多少利润后,决定是否上线策略。最后便是实时计算的场景,根据市场上的信息,对比现在的股票与其相关联的股票价格分别是多少,基于这些信息,决定是否要买卖。
2、在物联网中的应用
下图为物联网的数据示例,deviceID为设备ID,传感器同时测温度、压强压力两个指标,并有对应的时间戳。

图3 物联网数据示例
在物联网中的时序数据库的第一个应用场景是设备监控,它能够查询一个设备在某一个时间段(点)上的数据情况。第二个应用场景是历史统计,能够查询某一个(类)设备在过去一年内的平均值、最大最小值。
第三个应用场景是反向控制,根据物联网产生的数据及时给出决策,并反过来控制传感器实行什么样的操作,或者控制其他的设备去实行什么样的操作。
- 简单的控制逻辑:若某设备监控到的温度持续高于阈值,则自动采取对应的措施
- 复杂的控制逻辑:若根据某些复杂的算法(如机器学习)计算得出某片区域的现状不合常理,则自动采取对应的措施
DolphinDB的产品特性
1、DolphinDB支持事务
不支持事务的数据库会出现什么样的后果?

图4 不支持事务的时序数据库示例
如图所示,以股票交易为例,Google与Apple的股票数据已经成功存储在了Node1中,但是由于网络延迟,Oracle的实时股票数据无法存储在Node2 中。当数据库不支持事务时,便会无法查询到google的最新股票价格,对应地便会基于不准确的数据做出错误决策,导致严重的后果。
因此,在时序数据库中必须要有事务的支持以满足量化金融与物联网行业的应用需求。
2、强大的分析能力
时序数据库在存下数据之后,最终的目的是挖掘出数据中的价值,这就需要数据库提供强大的分析能力。
DolphinDB提供了一门编程语言,可以方便地进行自定义计算;还提供了1000多个内置的分析函数供使用。
3、高效的存储引擎
DolphinDB的高效存储引擎体现在
- 基于LSMT,提供高效的点查询能力
- 千万级设备,10ms以内
- 高效的历史数据分析能力
- PB级数据,秒级计算响应
- 自动去重

图5 DolphinDB 高效的存储引擎
4、流数据处理架构
DolphinDB内置的流数据框架支持流数据的发布、订阅、预处理、实时内存计算、复杂指标的滚动窗口计算等,是一个运行高效,使用便捷的流数据处理框架。
其中流数据模块采用发布-订阅-消费的模式。流数据首先注入流数据表中,通过流数据表来发布数据,数据节点或者第三方的应用可以通过DolphinDB脚本或API来订阅及消费流数据。

图6 DolphinDB 流数据处理架构
5、批流一体
批流一体是指用一摸一样的代码实现批计算和流计算的逻辑,即可以实现批计算的历史分析,也能够进行实时计算,帮助降低运维成本。

图7 DolphinDB 实现批流一体
6、内置流计算引擎
DolphinDB内置流计算引擎包含时间序列聚合引擎、响应式状态引擎、横截面引擎、会话窗口引擎、异常检测引擎,帮助降低开发成本。

图8 DolphinDB 内置流计算引擎
关于DolphinDB
1、DB-Engines 中的 DolphinDB
DolphinDB为企业IT人员、业务人员与决策者提供数据管理与分析应用一站式解决方案实现内部协作与融合,贯通企业数据应用链条,充分利用数据价值。
在世界数据库流行度排行榜DB-Engines中可以看到,DolphinDB位于时序数据库榜单第十,也是国内唯一一家入围前十的时序数据库产品,并且流行度也在不断攀升。

图9 DolphinDB 在DB-Engines 中的流行度
2、DolphinDB 代表客户
DolphinDB为金融、工业物联网、电力、能源、交通等各行业客户提供优质服务。

图10 DolphinDB 代表客户
如果您也是金融领域、或者物联网领域并对时序数据感兴趣,欢迎您来尝试DolphinDB,我们
为海量数据(特别是时间序列数据)的快速存储、检索、计算及分析提供一站式解决方案。
以上就是我今天的分享内容,谢谢大家!
更多精彩内容,欢迎大家观看现场视频回放与会议资料
- 查看原文:https://www.modb.pro/db/336226
- 查看【国产数据库沙龙】往期生态工具、图数据库专场文章、视频回放资源:https://www.modb.pro/topic/157860
墨天轮,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、活动直播、在线课程、文档阅览、资源下载、知识分享及在线运维为一体的统一平台,持续促进数据领域的知识传播和技术创新。
关注官方公众号: 墨天轮、 墨天轮平台、墨天轮成长营、数据库国产化 、数据库资讯
墨天轮国产数据库沙龙 | 胡津铭:时序数据库DolphinDB,从量化金融到万物互联的更多相关文章
- 日吞吐万亿,腾讯云时序数据库CTSDB解密
一.背景 随着移动互联网.物联网.大数据等行业的高速发展,数据在持续的以指数级的速度增长,比如我们使用手机访问互网络时的行为数据,各种可穿戴设备上报的状态数据,工厂中设备传感器采集的指标数据,传统互联 ...
- 时序数据库技术体系 – InfluxDB TSM存储引擎之TSMFile
本文转自 http://hbasefly.com/2018/01/13/timeseries-database-4/ 为了更加系统的对时序数据库技术进行全方位解读,笔者打算再写一个系列专题(嘿嘿,好像 ...
- [Go] 时序数据库influxdb的安装
日志类的数据时候存储在时序数据库中,下面就是时序数据库influxdb的安装 curl -sL https://repos.influxdata.com/influxdb.key | apt-key ...
- 时序数据库技术体系 – 初识InfluxDB(原理)
原贴地址:http://hbasefly.com/2017/12/08/influxdb-1/?qytefg=c4ft23 在上篇文章<时序数据库体系技术 – 时序数据存储模型设计>中笔者 ...
- [转帖]时序数据库技术体系(二):初识InfluxDB
时序数据库技术体系(二):初识InfluxDB https://sq.163yun.com/blog/article/169866295296581632 把生命浪费在美好事物上2018-06-26 ...
- 巨杉TechDay回顾 | WARNING!您参加的数据库沙龙热度已爆表……
自从2008年“大数据”这一概念被首次提出以来,在过去这10年中,几乎各行各业都或多或少受到了这一概念的影响.与此同时,在AI.云计算.物联网.区块链等新兴技术快速发展的今天,数据库己经成为了决定所有 ...
- 国产时序数据库IotDB安装、与SpringBoot集成
一.简介: 本文将完成一个真实业务中的设备上报数据的一个例子,完整的展示后台服务接收到设备上报的数据后,将数据添加到时序数据库,并且将数据查询出来的一个例子.本文所有代码已经上传GitHub:http ...
- 深度解读MRS IoTDB时序数据库的整体架构设计与实现
[本期推荐]华为云社区6月刊来了,新鲜出炉的Top10技术干货.重磅技术专题分享:还有毕业季闯关大挑战,华为云专家带你做好职业规划. 摘要:本文将会系统地为大家介绍MRS IoTDB的来龙去脉和功能特 ...
- MRS IoTDB时序数据库的总体架构设计与实现
MRS IoTDB时序数据库的总体架构设计与实现 MRS IoTDB是华为FusionInsight MRS大数据套件最新推出的时序数据库产品,其领先的设计理念在时序数据库领域展现出越来越强大的竞争力 ...
- 附加数据库失败,sql2008,断电数据库日志受损
附加数据库失败,提示:无法在数据库 'DBNAME' (数据库 ID 为 7)的页 (1:210288) 上重做事务 ID (0:0) 的日志记录或者在重做数据库 'DBNAME' 的日志中记录的操作 ...
随机推荐
- docker 具名和匿名挂载
具名和匿名挂载 -v 容器路径! docker run -d -P --name nginx01 -v /etc/nginx nginx -P 随机使用 端口号 docker volume ls 查看 ...
- 【托普斯的力场】—— ARPG游戏《艾尔登法环》中的人物:托普斯
地址: https://youtube.com/shorts/oSIbOQ_r4fA?si=F-knFwjZ3iPXqPeS https://www.bilibili.com/video/BV1fV4 ...
- reinforcement learning常用的游戏环境,gym框架使用的标准Atari游戏集合
reinforcement learning常用的游戏环境,gym框架使用的标准Atari游戏集合.*.bin文件为Atari2600游戏的常用游戏环境的模拟文件,也称为roms文件. 文件地址: h ...
- baselines中环境包装器EpisodicLifeEnv的分析
如题: class EpisodicLifeEnv(gym.Wrapper): def __init__(self, env): """Make end-of-life ...
- SeaTunnel毕业!首个国人主导的数据集成项目成为Apache顶级项目
采访嘉宾 | 郭炜.高俊 编辑 | Tina 北京时间 2023 年 6 月 1 日,全球最大的开源软件基金会 Apache Software Foundation(以下简称 ASF)正式宣布 Apa ...
- 微服务架构SpringCloud的理解
微服务架构是什么? 微服务是一种架构思想,实际上以分布式系统方式开发.架构是为了解耦.该架构解决的是分布式中的四个问题: 一.客户端如何访问众多服务: 应用划分为众多服务以后,客户端需要如何访问? 通 ...
- 基于MonoGame重制《俄罗斯方块》游戏
两年前,我使用C#基于MonoGame编写了一款<俄罗斯方块>游戏,相关介绍可以参考[这篇文章].最近,使用业余时间将之前的基于MonoGame的游戏开发框架重构了一下,于是,也就趁此机会 ...
- Next.js 中为什么 App Router 可能是未来,但 Pages Router 仍然重要?
Next.js 作为一个强大的 React 框架,为开发者提供了两种路由系统:App Router 和 Pages Router.这两种路由系统各有特色,适用于不同的场景.本文将深入探讨这两种路由系统 ...
- MFC中CString转int,double
CString str=L"123"; int n=_wtoi(str); //n=123 double d=_wtof(str); //d=123.0000 Vs2012中编译
- Linux 扩展磁盘分区
之前安装 Ubuntu 虚拟机时使用的都是默认配置,虚拟机硬盘分配了 60 GB.后来想要扩容,特此记录一下扩容过程. 在操作前请做好备份 首先在 VMware 中修改虚拟硬盘大小. 然后进入虚拟机, ...