问题标签 [influxdb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
influxdb - 如何让 influxdb 接受跨域请求?
我有 InfluxDB 运行localhost:8086
(它是默认的)和一个运行在不同端口上的 go 程序(因为它必须,也不能在 8086 上运行)。我试图在我的 go 程序中使用 JavaScript 将数据发布到 InfluxDB,我得到了No Access-Control-Allow-Origin
响应。这个 github 问题(由使用反向代理的人发布)说可以通过配置代理机制来解决该问题,但我没有使用。有没有办法在没有得到响应的情况下将数据发布到 InfluxDB?通过 post 请求接收数据似乎是 InfluxDB 的核心功能,但它无法正常工作。
python - 如何使用 InfluxDB 作为中间数据存储
我认为 InfluxDB 是一个非常酷的时间序列数据库。
我计划将其用作中间数据聚合器(从许多传感器收集基于时间的指标)。
数据需要以“移动窗口”的方式处理——当接收到 X 个样本时,应该触发基于 Python 的处理算法。
在聚合足够多的数据后触发算法的最佳等待时间是什么?(我假设使用选择查询进行轮询不是最佳选择)。
有什么活动我可以等待吗?
谢谢!梅尔
javascript - 基于 JS 的 influxdb 图形编辑器,如 Grafana、Influga,是否有可重用的库?
我一直在使用像grafana或influga这样的工具,这些都是很棒的项目,它们有助于创建带有图表和各种类型图形的仪表板。
我想知道,是否可以将这些应用程序的 2 个核心功能分离到一个独立的 javascript 库中,该库可以在现有的 Web 应用程序中重用(最终用户也可以轻松使用)?
两个关键特性是:
- 图形编辑器(查询、标签、颜色、ecc。)
- 图表视图(查看图表、更改日期范围、放大和缩小、ecc)
grafana 和类似解决方案的问题在于它们不容易与现有的 Web 应用程序集成,而且这些项目的复杂性不断增加并添加新功能,而许多人可能需要的是与现有 Web 应用程序的某种集成。
有人在做这个吗?如果是,两个最有前途的项目是什么?
influxdb - 使用多个键扇出查询
如果我做
并将点{"key1": 0, "key2": 0}
插入s
然后正确列出所有系列显示's.0.0'。但是,我无法查询它。我得到:
select * from /.*/
在我删除's.0.0'之前,即使做同样的错误也会失败。
我不能一次用多个键扇出吗?
time-series - 插入特定时间?
我正在查看所有 InfluxDB 示例,它们似乎都以“现在时间”(插入时间)插入。有一个明确定义的“时间”字段,但没有一个示例使用它。
将事件时间记录为“将时间插入数据库”是一种糟糕的模式。最好让传感器将其当前时间的概念附加到传感器值,传递该记录,然后将其插入具有该时间值的各种分析数据库中。(非常小的传感器可能有一个“控制器”,它更了解时间,但这仍然不是数据库插入)。
一个明显的例子是日志文件。每行都有一个时间戳,就在开头。爱它或恨它,但这是你对事件发生时间的最佳看法。
我正在寻找以指定时间值插入 InfluxDB 的示例,但还没有想出一个。时间似乎总是隐含的当前时间。
influxdb - 可以将多维哈希值插入 InfluxDB 吗?
在 InfluxDB 中,您可以将多维哈希值发布到数据库吗?
例如,这个哈希:
如果可以,你是怎么做到的?当我通过 http 管理界面尝试时,它既不会出错也不会返回成功。
collectd - grafana 2,collectd - 图表问题
所以我收集了在一些服务器上运行的数据,它们将数据发送回 InfluxDB。InfluxDB 正在存储数据,Grafana 2 配置了 InfluxDB 作为数据支持 - 一些图表工作正常 - 例如负载平均值,但有些图表不能正确 - 像界面统计信息(见图):
http://i.imgur.com/YgIxBE1.png
我猜这是因为平均负载是这样存储的:
timestamp1: $current_load_average
(例如 1.2)timestamp2: $current_load_average
(例如 1.1)
接口统计信息存储如下:
timestamp1: $bytes_transfered_so_far
(例如 1002)timestamp2: $bytes_transfered_so_far
(例如 1034)
所以 Grafana 只是绘制了通过该接口传输的总字节数,而不是我需要的字节/秒。使用相同的设置 - 当 collectd 写入 RRD 文件并且它们被多个接口绘制时 - 一切都按预期工作。
你能建议我应该研究或改变什么吗?
time-series - InfluxDB 性能
就我而言,我需要为设备捕获 15 个性能指标并将其保存到 InfluxDB。每个设备都有一个唯一的设备 ID。
指标通过以下方式写入 InfluxDB。这里我只展示一个作为例子
写入数据既快速又简单。但是当我运行查询时,我发现性能很差。我正在尝试获取过去一小时的所有 15 个指标值。
一个小时,每个指标有 120 个数据点,总共有 1800 个数据点。在 c4.4xlarge EC2 实例空闲时,查询大约需要 5 秒。
我相信 InfluxDB 可以做得更好。这是我的架构设计的问题,还是其他问题?将查询拆分为 15 个并行调用会更快吗?
postgresql - 从 Influx 迁移到 Postgres,需要提示
我使用 Influx 来存储我们的时间序列数据。它工作时很酷,然后大约一个月后,它停止工作,我不知道为什么。(类似于这个问题https://github.com/influxdb/influxdb/issues/1386)
也许有一天 Influx 会很棒,但现在我需要使用更稳定的东西。我正在考虑Postgres。我们的数据来自许多传感器,每个传感器都有一个传感器 ID。所以我正在考虑将我们的数据结构化为:
(pk)、sensorId(string)、time(timestamp)、value(float)
Influx 是为时间序列数据构建的,所以它可能有一些内置的优化。我需要自己进行优化以使 Postgres 高效吗?更具体地说,我有这些问题:
Influx 有这种“系列”的概念,而且创建新系列很便宜。所以我对每个传感器都有一个单独的系列。我应该为每个传感器创建一个单独的 Postgres 表吗?
我应该如何设置索引以快速查询?一个典型的查询是:选择 sensor123 过去 3 天的所有数据。
我应该在时间列中使用时间戳还是整数?
如何设置保留政策?例如,自动删除超过一周的数据。
Postgres 会水平扩展吗?我可以为数据复制和负载平衡设置 ec2 集群吗?
我可以在 Postgres 中下采样吗?我已经阅读了一些可以使用 date_trunc 的文章。但似乎我不能 date_trunc 它到一个特定的时间间隔,例如 25 秒。
我错过了任何其他警告吗?
提前致谢!
更新 将时间列存储为大整数比将其存储为时间戳要快。难道我做错了什么?
将其存储为时间戳:
将其存储为大整数: