天数润科开源贡献 OpenTSDB-Keeper

InfluxDB 简介与安装 InfluxDB 简介与安装 1、InfluxDB 简介 官网:https://www.influxdata.com/ 中文文档:https://jasper-zhang1.gitbooks.io/influxdb/content/ InfluxDB 是用Go语言编写的一个开源分布式时序、事件和指标数据库,无需外部依赖。 类似的数据库有Elasticsearch、Graphite等。 其主要特色功能 基于时间序列,支持与时间有关的相关函数(如最大,最小,求和等) 可度量性:你可以实时对大量数 阅读详情

 

东方网 2018-04-10 09:31:51

OpenTSDB是一款社区的时序数据库产品,其构建与HBase之上的设计使得它拥有很好的可扩展性,尤其适合于监控领域,然而,OpenTSDB仍存在几个问题:(1)作为一个中间件,其稳定性、可靠性与底层HBase的表现休戚相关,基于Hadoop生态也决定其在运维方面的复杂性。(2)尽管OpenTSDB可以多节点部署,但这完全依赖于HBase本身的分布式设计,其自身仅仅被设计为一个单体应用,并没有定义或实现节点间交互的细节,没有充分发挥分布式多节点的能力。因此,我们希望针对这两点展开一些工作,打造一个可靠的、稳定的、分布式的TSDB集群,这就是我们规划中的OpenTSDB-Keeper组件。它将作为OpenTSDB集群的大脑,监控各节点状态,平衡各节点间负载,组织节点间在读写方面的协作。从2016年开始,我们采用实时计算+时序数据库的存储平台架构来解决IoT场景的数据存储需求。上千台设备的传感器数据实时接入,需要每秒能响应百万点以上的并发写需求。多层的流式计算/存储架构,需要充分考虑每层通道提供的读写带宽。技术上,我们使用自研的SkyCompute高性能计算引擎中的SparkStreaming作为流计算引擎,OpenTSDB作为存储引擎,数据架构参考下图:图1 基于SparkStreaming+OpenTSDB的流式时序数据存储架构如上图所示,单个节点的OpenTSDB无法满足一个Spark集群的并发写入,也无法保障实时写的高可用。因此,我们采用分布式的方式,启动多个OpenTSDB节点来响应SparkStreaming写请求。为了均匀分散写请求的负载,在每1个计算节点都部署了1个OpenTSDB节点,这样每个计算节点只写往本机的OpenTSDB节点,同时还节省了部分网络通信的开销。图2 简单的负载均衡架构在上线运行验证期间,我们发现,整个Spark Streaming的任务经常受OpenTSDB+HBase存储层的响应拖累,既无法发挥系统的全部性能,也无法达到承诺的数据稳定落盘。主要表现在,受更底层HBase的响应影响以及OpenTSDB自身负载,导致了响应时间不稳定,乃至出现OpenTSDB节点崩溃。我们一方面着力于解决OpenTSDB与HBase之间的连接问题,调节OpenTSDB资源,一方面认为集群形式的OpenTSDB同样需要一个监控以及资源分配组件。我们需要在OpenTSDB节点负载过程或出现故障时,及时将计算节点连接到另一个健康的OpenTSDB节点,并且对这样的故障增加报警与错误记录,以通知到运维人员,并为错误分析、调优提供原始记录。于是,我们开发了一个非常轻量的组件OpenTSDB-Keeper。在我们的业务场景中,该组件的加入,显著地提高了从计算节点到存储节点的效率、减少了IO等待时间,且避免了OpenTSDB节点无响应导致的持续的存储失败,将整个系统的处理效率提高了三倍。本文来源:东方网责任编辑:王晓易_NE0011

OpenTSDB是一款社区的时序数据库产品,其构建与HBase之上的设计使得它拥有很好的可扩展性,尤其适合于监控领域,然而,OpenTSDB仍存在几个问题:

(1)作为一个中间件,其稳定性、可靠性与底层HBase的表现休戚相关,基于Hadoop生态也决定其在运维方面的复杂性。

(2)尽管OpenTSDB可以多节点部署,但这完全依赖于HBase本身的分布式设计,其自身仅仅被设计为一个单体应用,并没有定义或实现节点间交互的细节,没有充分发挥分布式多节点的能力。

因此,我们希望针对这两点展开一些工作,打造一个可靠的、稳定的、分布式的TSDB集群,这就是我们规划中的OpenTSDB-Keeper组件。它将作为OpenTSDB集群的大脑,监控各节点状态,平衡各节点间负载,组织节点间在读写方面的协作。

从2016年开始,我们采用实时计算+时序数据库的存储平台架构来解决IoT场景的数据存储需求。上千台设备的传感器数据实时接入,需要每秒能响应百万点以上的并发写需求。多层的流式计算/存储架构,需要充分考虑每层通道提供的读写带宽。技术上,我们使用自研的SkyCompute高性能计算引擎中的SparkStreaming作为流计算引擎,OpenTSDB作为存储引擎,数据架构参考下图:

图1 基于SparkStreaming+OpenTSDB的流式时序数据存储架构

如上图所示,单个节点的OpenTSDB无法满足一个Spark集群的并发写入,也无法保障实时写的高可用。因此,我们采用分布式的方式,启动多个OpenTSDB节点来响应SparkStreaming写请求。为了均匀分散写请求的负载,在每1个计算节点都部署了1个OpenTSDB节点,这样每个计算节点只写往本机的OpenTSDB节点,同时还节省了部分网络通信的开销。

图2 简单的负载均衡架构

 

在上线运行验证期间,我们发现,整个Spark Streaming的任务经常受OpenTSDB+HBase存储层的响应拖累,既无法发挥系统的全部性能,也无法达到承诺的数据稳定落盘。主要表现在,受更底层HBase的响应影响以及OpenTSDB自身负载,导致了响应时间不稳定,乃至出现OpenTSDB节点崩溃。

我们一方面着力于解决OpenTSDB与HBase之间的连接问题,调节OpenTSDB资源,一方面认为集群形式的OpenTSDB同样需要一个监控以及资源分配组件。我们需要在OpenTSDB节点负载过程或出现故障时,及时将计算节点连接到另一个健康的OpenTSDB节点,并且对这样的故障增加报警与错误记录,以通知到运维人员,并为错误分析、调优提供原始记录。

资源

健康

于是,我们开发了一个非常轻量的组件OpenTSDB-Keeper。在我们的业务场景中,该组件的加入,显著地提高了从计算节点到存储节点的效率、减少了IO等待时间,且避免了OpenTSDB节点无响应导致的持续的存储失败,将整个系统的处理效率提高了三倍。

了解你的GPU:深入探讨AMD SMI 2024年9月17日 作者:Matt Elliott对于使用AMD硬件的系统管理员和高级用户来说,性能优化和高效的资源监控至关重要。AMD系统管理界面命令行工具`amd-smi`正是为了解决这些需求而设计的。amd-smi是一个多功能的命令行工具,专门用于管理和监控AMD硬件,主要侧重于GPU。作为未来取代`rocm-smi`的工具,`amd-smi`有望成为跨广泛设备的AMD硬件管理的主要工具。 阅读详情

相关推荐

vc mfc listctrl使用虚拟列表 虚拟列表用法

note 虚拟列表可有效加载大量数据 需要处理listctrl的 LVN_GETDISPINFO 消息 使用虚拟列表 不能 使用 insert的方法插入数据,而是告诉listctrl 当前要显示多少行 使用SetItemCount函数告诉listctrl当前显示多少行 使用虚拟列表需要自己维护数据源 使用 添加list ctrl 控件 将其Owner Data 属性 设置为 True 添加...

知其所以然 398

InfluxDB数据库

influxdb是目前比较流行的时间序列数据库。何谓时间序列数据库?什么是时间序列数据库,最简单的定义就是数据格式里包含Timestamp字段的数据,比如某一时间环境的温度,CPU的使用率等。但是,有什么数据不包含Timestamp呢?几乎所有的数据其实都可以打上一个Timestamp字段。时间序列数据的更重要的一个属性是如何去查询它,包括数据的过滤,计算等等。InfluxdbInfluxdb是一...

雪意少年的博客 860

Halcon实战:5种边缘检测算子对比(Sobel、Roberts、Prewitt、Kirsch、Canny)

本文深入对比了Halcon中Sobel、Roberts、Prewitt、Kirsch和Canny五大边缘检测算子的实战表现与核心差异。通过工业图像实例与代码解析,提供了基于噪声水平、边缘连续性及实时性要求的场景化选型指南,帮助工程师精准选择最适合的算子以优化视觉检测流程。

weixin_29266007的博客 393

influxdb官网学习教程

https://jasper-zhang1.gitbooks.io/influxdb/content/Query_language/data_exploration.html influxdb官网学习教程 influxdb官网教程 influxdb中文教程

qq690452074的专栏 1242

065、鲁棒控制基础:H∞控制简介

本文从作者调试四旋翼时PID控制器失效的实际案例出发,介绍了H∞控制的基本原理及其在飞控中的应用。文章指出传统控制方法对模型误差敏感的局限性,阐释了H∞控制通过最小化扰动到输出的传递函数无穷范数来保证系统鲁棒性的核心思想。 主要内容包括: H∞控制的数学框架,通过求解Riccati方程设计控制器 飞控中的典型应用场景,如结构不确定性建模和混合灵敏度问题 一个简化的俯仰角控制设计示例 工程实现中的常见问题:权重函数选择、控制器降阶和离散化注意事项 作者强调H∞控制虽能有效处理有界不确定性,但仍需结合工程直觉进

2401_88858637的博客 44

利用SIMULINK搭建一个16QAM调制解调收发系统

1发送模块设计 根据前面介绍的理论知识,我们可以知道16QAM的基本结构,首先我来设计QAM发送段的SIMULINK仿真模块。 图1 16QAM的发送端模块 他的基本工作流程为:将信号通过两路升余弦滤波器,得到滤波以后的信号,滤波器的作用就是为了防止码间干扰。然后将滤波以后的信号和SIN,COS相乘得到调制信号,将调制 下面一一介绍每个模块的具体参数设置以及各个部分信号的波形图。 图2 产生随机数据的信号源 第一部分信号是产生一组随机的数字,作为信源,第二个模块将信号...

FPGA/MATLAB学习教程/源码/项目合作开发 4777

从influxdb官网下载influxDB的方法

打开influx下载页面https://portal.influxdata.com/downloads/ 因为众所周知的长城的原因(该网页引用了"https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"但是访问不了), 点击上图的 “v1.7.3” 根本无法下载,但其实真正的下载链接就在页面中,并且没有被和谐。...

闲人的专栏 1万+

基于YOLOv8的端面小目标计数解决方案: 多头检测器+小缺陷到大缺陷一网打尽的GiraffeDet+Wasserstein Distance Loss | 助力工业小目标缺陷检测

端面小目标计数部署解决方案 | 亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.936提升至0.955

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1955

从官网下载influxdb的方法

从官网下载influxdb的方法 首先打开官网https://portal.influxdata.com/downloads/ 直接复制以下链接到浏览器中,将最后的版本号改为你需要的就可以下载了 https://dl.influxdata.com/influxdb/releases/influxdb-1.7.3_windows_amd64.zip https://dl.influxdata.co...

weixin_43595855的博客 2060

Jenkins部署前后端分离项目最全图文教程(手把手教学)

最近Jenkins部署的热度比较高,于是就想出一篇关于我是如何使用Jenkins部署前后端分离项目的,本篇记录了我是如何一步一步去配置、搭建和部署的完整流程,每一行代码都进行了实测和讲解,通过图文的教学写成博客分享给大家!

黄团团的个人博客 4782

OCR技术解析:用Tesseract和PaddleOCR识别文本

OCR技术解析:用Tesseract和PaddleOCR识别文本 ,人工智能,计算机视觉,大模型,AI,光学字符识别(Optical Character Recognition,简称 OCR)是一项将图片、扫描件等文档中的文字信息转换为可编辑文本的技术。在数字化时代,OCR 技术广泛应用于文档处理、车牌识别、身份证识别、古籍数字化等领域,极大地提高了文字信息处理的效率。Tesseract 和 PaddleOCR 是两款极具代表性的 OCR 工具。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 3万+

时序数据库:Influxdb详解

关系型数据库也是支持时间戳的,也能够基于时间戳进行查询。但是,从我们的使用场景出发,需要注意数据库的写入性能。通常,关系型数据库会采用 B+树数据结构,在数据写入时,有可能会触发叶裂变,从而产生了对磁盘的随机读写,降低写入速度。当前市面上的时序数据库通常都是采用 LSM Tree 的变种,顺序写磁盘来增强数据的写入能力。通常时序数据库都会保证在单点每秒数十万的写入能力。时序数据库一般用于指标监控场景。这个场景的数据有一个非常明显的特点就是冷热差别明显。通常,指标监控只会使用近期一段时间的数据。

秃了也弱了 2833

深度学习在移动开发中的应用:实时姿态估计实战

我们将使用TensorFlow Lite框架,结合专为移动端优化的MoveNet模型,实现一个能够在主流Android设备上达到30FPS的多人姿态跟踪解决方案,并深入探讨其优化技巧和实际应用场景。特别是3D姿态估计、多人长期跟踪等前沿技术的发展,将进一步推动移动端姿态估计技术的应用深度和广度。在下一篇文章中,我们将探讨深度学习在移动端的另一个创新应用:实时手势识别,包括如何在资源受限的环境中实现复杂手势的实时识别,以及这项技术在AR/VR交互、智能家居控制等场景中的应用。第四部分:典型应用场景实现。

Programming Talk 325

InfluxDB 入门

1. 简述 时间序列数据:从定义上来说,就是一串按时间维度索引的数据。 时序数据库(TSDB)特点: 持续高并发写入、无更新; 数据压缩存储; 低查询延时。 常见 TSDB:influxdb、opentsdb、timeScaladb、Druid 等。 1.1 influxdb概念 influxdb是一个开源分布式时序、时间和指标数据库,使用 Go 语言编写,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展,是 InfluxData 的核心产品。 应用:性能监控,应用程序指标,物...

qq690452074的专栏 1324

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

influxDB使用客户端教程

文章目录使用帮助查看版本启动启动方法二登陆查看数据库切换数据库查看表创建表查询表删除记录删除表删除数据库 使用帮助 influx --help 查看版本 influx -version 启动 influx -config /etc/influxdb/influxdb.conf 启动方法二 systemctl start influxdb.service sudosystemctl start influxdb.service 登陆 influx 默认连接到 localhost:8086

JavaPub 6317

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

influxDb摸河第一步-安装

influxDb摸河第一步-安装 上头给个活,调研下influxDb,那先不说别的,先run起来 一、官方的回答一些废话 首先,influxDb的官方地址:https://www.influxdata.com/ 其次,我是个windows环境,所以我的下载方式是:桌面,shift+右键 打开 powershell,然后贴下面的话 wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.6-windows-amd64.zip -

a904198604的博客 731

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【时序数据库InfluxDB】Windows环境下配置InfluxDB+数据可视化,以及使用 C#进行简单操作的代码实例

Windows环境下配置InfluxDB+数据可视化,以及使用 C#进行简单操作的代码实例

寒冰屋的专栏 1919

【InfluxDB】InfluxDB 2.x基础概念及原理

时序数据库,全称时间序列数据库(Time Series Database,TSDB),用于存储大量基于时间的数据。时序数据库支持时序数据的快速写入、持久化,多维度查询、聚合等操作,记录了所有的历史数据。在查询时,将时间作为数据的过滤条件。时序数据(Time Series Data)指的是一系列每个时间点产生的数据,例如CPU利用率,Jmeter每秒发送http请求产生的响应时间等。时序数据的使用场景广泛,包括DevOps监控,应用程序指标,压测指标,IoT传感器数据,实时动态数据分析等场景。

baidu_31295661的博客 2405

influxdb无法查询tag_Matlab操作InfluxDB数据库

InfluxDB是一个基于Go语言开发的开源时序数据库,着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据、IoT行业的实时数据等场景。这里介绍Matlab如何操作InfluxDB。1、下载InfluxDB官网地址:https://portal.influxdata.com/downloads/(同时下载Chronograf,后面介绍使用方法)下载后无需安装,直接解...

weixin_39918682的博客 356

InfluxDB时序数据库

前言 在我们很多应用中会遇到有一种基于一系列时间的数据需要处理,通过时间的顺序可以将这些数据点连成线,再通过数据统计后可以做成多维度的报表,也可通过机器学习来实现数据的预测告警。而时序数据库就是用于存放管理这种有着时间顺序数据的,时序数据库一般都支持时序数据的快速写入、持久化、多维度的聚合查询等基本功能。 InfluxDB简介 InfluxDB是一个基于时间序列数据而开发的高性能数据存储平台...

纸上得来终觉浅,绝知此事要躬行 3856

influxDB部署

如果在有外网的情况下是可以简化步骤1、步骤2中的步骤。只需要在在步骤1中获取下载的地址,然后进入CentOS操作系统下,使用如下命令即可获取安装包。然后这里我们选择influxDB中的V2.0.4版本进行点击进入,进入到对应的页面之后这里我们会看到针对不同操作系统的版本或者容器版本。我们这里下载的版本为:influxdb2-2.0.4.x86_64.rpm。https://portal.influxdata.com/downloads/获取相应的版本。这里我们设置成相应的参数如下。

测试人,测试魂 1048

influxdb安装、配置用户权限、读写数据库详解(新手入门)

本文参照: https://cloud.tencent.com/developer/article/1543962 https://jasper-zhang1.gitbooks.io/influxdb/content/Introduction/installation.html influxdb官网:https://www.influxdata.com/products/influxdb-overview/ 一、安装 InfluxDB默认使用下面的网络端口: TCP端口8086用作InfluxDB的客户端和

qq_29648129的博客 1万+

【Jmeter】性能监控体系:InfluxDB & Grafana & Prometheus

什么是 InfluxDB?InfluxDB 是一个由 InfluxData 开发的,开源的时序型数据库。它由 Go 语言写成,着力于高性能地查询与存储时序型数据。InfluxDB 被广泛应用于存储系统的监控数据、IoT 行业的实时数据等场景。可配合Telegraf服务(Telegraf 可以监控系统 CPU、内存、网络等数据)。可配合Grafana服务(数据展现的图像界面,将 InfluxDB 中的数据可视化)。InfluxDB 官网什么是时序数据?

专注于技术分享的博主 1542

1.InfluxDB简介与安装

influx

woshiwjma956的博客 2056

一些关于react的keep-alive功能相关知识在这里(下)

一些关于react的keep-alive功能相关知识在这里(下)本篇承接上篇内部, 所以是从第九点开始九、保留页面scroll比如页面上的table里有100条数据, 我们想看第100条数据, 那就要滚动不少距离, 不少场景这种滚动距离也是有必要保留的。这里使用的方法其实比较传统啦, 首先在KeepAliveProvider 下发一个处理滚动的方法:consthandl...

我本可以容忍阳光,如果我不曾见过太阳,然而阳光已使我荒凉,成为更新的荒凉。 899

OpenTSDB Architecture Explained: Design Principles for High Performance

1.背景介绍 OpenTSDB(Open Telemetry Storage Database)是一个高性能的开源时间序列数据库,专为监控系统设计。它可以存储和检索大量的时间序列数据,并提供了强大的查询功能。OpenTSDB的设计原理和性能得到了广泛的认可,因此,本文将深入探讨OpenTSDB的架构设计原理,并分析其在高性能监控系统中的应用。 2.核心概念与联系 2.1 时间序列数据 时间...

AI天才研究院 1078
上一篇: 通过公共API访问导入数据到OpenTSDB
下一篇: spark SQL学习(认识spark SQL)
王树民
博客等级 码龄10年 912粉丝 560原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值