嘿,Evan,欢迎来到 IT for All 播客。感谢您本周来到这里。嘿,感谢你的邀请,Ryan。当然。如果你不介意的话,让我们从一个简短的介绍开始吧。也许可以稍微介绍一下你的背景和你是谁,以及对公司的一些介绍。我从哪里开始呢?我是一个土生土长的纽约人,自从上大学以来就住在西海岸,华盛顿大学。在西雅图住了很多年,早期创办了自己的初创公司,在泡沫时期发展壮大,泡沫破裂后不得不缩减规模,这是第一次互联网泡沫。
然后能够将其出售给 SonicWall/戴尔,经营了一家名为 iPass 的上市公司六年,然后在 Influx 的创始人 Paul 的风险投资公司工作,当时我们还没有收入,我在我们有 20 个人的时候加入,到现在已经超过八年了。
所以今天的谈话,我们有一个非常有趣的话题,我认为我们过去简短地谈到过,但从未真正深入探讨过,我认为我们的听众会从中受益,那就是时间序列数据。我相信我们的很多听众有时不太了解这个主题的含义。所以,如果你不介意的话,让我们从谈谈什么是时间序列数据开始吧,对于那些不熟悉的人来说,它如何融入物联网领域。
你知道,在最基本的层面上,它是收集和读取带时间戳信息的流程。所以信息是有索引的,由某个时间发生的事情来传输、捕获。如果你看看这个,你会发现这是一个巨大的数据集。它的广泛相关性是关于遥测的。整个人类设计系统,整体系统,都是收集遥测数据,读取遥测数据,对其进行迭代以提高系统的运行能力,并且
随着时间的推移,你踏上自主性的旅程,时间戳数据或这种遥测数据至关重要。它与物联网的关系是传感器使用时间序列进行通信。这就是他们使用的语言。压力、体积、湿度、光线,无论测量是什么,它都在时间戳测量中表达。
发生了什么?发生了什么?发生了什么?发生了什么?发生了什么?所以时间序列非常基础。它已经存在很长时间了。你知道,如果你在 25 年前这样做,你会使用 Oracle 数据库或 Informix 数据库。如果你在 10 年前这样做,你可能会使用 MySQL 或 Cassandra 数据库。
如果你现在这样做,你正在使用这一整类新兴的数据库。我们真的专注于时间序列。并且,特别是在物联网方面,有一类数据库可能不会将自己描述为数据库,而是已经内置到物联网中的工业历史记录器。
物联网系统,特别是工业物联网系统,长期以来一直如此。所以这里有很长的历史。现在相关的是这些数据现在有多重要,以及收集这些数据的能力以及正在出现以处理这些数据的专用数据库。你知道,物联网是关于连接事物,传感器,通常是物理事物,但它不一定是物理事物,但通常是物理事物。
因此,物联网是关于对现实世界的仪表化和操作。在我们目前痴迷于大型语言模型的世界中,这是对数字世界的仪表化操作,物联网是关于对物理世界的仪表化操作。因此,为了对物理世界进行仪表化、操作、了解更多信息并使其发展,
你需要收集关于所有事情一直在发生的所有数据。这些数据可能非常简单。它可能是时间 A 的压力是多少,时间 B 的压力是多少,但它也可能非常复杂,例如压力是多少?光线是多少?湿度是多少?太阳的位置是多少?天气模式是什么?气压计读数是多少?它可能是一组非常丰富的时间戳数据。
它描述了现实世界。描述越丰富,你对现实世界的图景就越有价值。物联网从根本上来说就是这样。物联网中时间序列数据的一些独特特征是什么?为什么管理它通常会带来挑战?它是一种非常独特的数据类型。一个原因是它的收集方式。每件事都有时间戳数据。
这使得,如果你能够围绕它进行优化,你就会获得一些好处。通常,你知道,物联网,如果你能想象一个广泛的系统,无论是自动驾驶汽车还是能源系统,都可能有数千到数百万个传感器在世界各地收集数据。与大多数数据类型相比,你的摄取量非常高。如果你正在连接,你知道,我们的基本分辨率是纳秒级分辨率,有些客户实际上使用了它。所以你可以开始考虑与纳秒级分辨率相关的摄取级别,以及
数十万或数百万个传感器,你开始谈论每秒数十亿个数据点。所以摄取量很大。二是您经常对这些数据进行汇总,因为您不需要长时间保留高分辨率数据。您经常对其进行汇总。因此,您经常对其进行下采样和转换。因此,如果您构建一个面向此操作的数据库,
那么您将处于更有利的地位。第三,作为下采样或更改的一部分,您会非常快速地逐出数据。大多数数据库都不擅长逐出数据。这实际上是一个辅助流程。它会消耗大量的 CPU。但是时间序列数据库必须非常擅长这一点,因为您正在逐出数据,你知道,如果您的保留时间很短,几乎与您收集数据的速度一样快。
所以你可以想象这种不同速度和节奏的数据小型工厂,因为它知道它实际收集的内容以及它如何工作。
然后是关于时间序列的另一件事,最后一件事是基数。基数是对与每个时间戳关联的测量值、标签或字段数量的描述。基数可能是爆炸性的。因此,如果您在时间戳上拥有高度描述性的数据,数据库就会被基数阻塞。它们开始无法执行。它们开始真正地,它们开始出现故障。它们开始令人不快地出现故障。因此,时间序列数据库必须设计为能够处理基数。
可能有三到四件事是不同的。你们如何专注于解决你刚才提到的那些挑战?一种方法是将其构建到实际的开源和实际数据库中。这些功能,你将其构建进去,你对其进行优化。因此,我们的最新版本,可能在你发布我们的讨论时就会发布,
你知道,具有无限的基数。它具有超快的响应时间。作为时间序列数据库,Influx 必须擅长三件事。这是我们的重点。这是我们的关注点。我们必须擅长摄取。我们只需要能够提取这些数据,并且我们必须能够立即读取它。它不能是我们在摄取数据,然后你可以在五秒钟内读取它。它必须立即被摄取和读取。因为如果你要围绕这些数据构建一个操作系统,
你必须能够立即读取它。所以第一点是,我们必须能够立即摄取和读取数据。
第二点是,我们必须能够组织这些数据,以便能够对其进行适当的处理和管理。所以你可以想象一下数据量。因此,其中一些应该存储到对象存储中,一些应该保留在磁盘上,一些应该存储在内存中,一些应该建立索引。因此,如果你能够将其摄取并组织起来,那就太好了。第三点,甚至可能是最重要的一点是,我们必须能够进行查询。在某些情况下,对于最后的值,低于 10 毫秒,对于较长的时间,低于 50 毫秒,低于 100 毫秒。
一秒钟,因为我们的想法是,你正在构建一个不仅收集遥测数据,而且还在对其进行操作的操作平台。对其进行操作是查询的功能。因此,如果你查询此时此系统的状态,让我们采取行动。该查询必须非常快。我可以举一个例子,你知道,我们为特斯拉 Powerwalls 供电。我的手机上有一个应用程序。我可以每秒更新一次该应用程序,它会告诉我我的房子正在产生多少电力并传输到我的 Powerwall。
为了使该应用程序能够正确运行,这些类型的查询必须非常快。
当然。是的。我相信有些听众正在努力管理时间序列数据。如果你要给他们一些建议,也许是他们应该采取的第一步,重新评估他们的方法,你有什么想法吗?这是关于架构和设计的。因此,你知道,大多数人都已经开始使用,他们习惯于使用 Postgres 或 Mongo 或 Xamarin。因此,他们构建了他们想要的东西,它运行良好,对他们来说也足够用。
但是随着系统的扩展,这就是我们获得大多数客户的地方。他们开始说,哇,这,我们开始遇到基数、性能、查询性能限制。我们需要看看它。这不仅仅是我们,其他时间序列供应商也做得不错。他们开始关注特定于时间序列的东西。如果我正在与一群人交谈,
比如说,物联网、工业物联网或能源物联网。我说从时间序列数据库开始你的流程,对吧?它在低数据量下也能很好地执行,但是当你开始真正参与并使你的系统自动化时,你就会开始看到真正的优势。所以……
这就是我的主要建议。你可以将其在云端运行,在本地运行,也可以在边缘运行。你是否看到物联网中有哪些主要的应用程序依赖于时间序列数据?或者它基本上适用于每种类型的应用程序用例?哪些对你来说最引人注目?你知道,我们认为它是主要的运营应用程序。这实际上是一场重要的讨论,因为它弥合了运营时间序列和人工智能之间的关系。当你构建一个系统时,比如说,
让我们使用一个标准的物联网系统,也许是一辆自动驾驶汽车。当你构建该系统时,你想要做的是,你想要踏上智能的旅程。你想要说……
我已经用(我在这里编造了一个数字)一千个传感器对汽车进行了仪表化。我将它在路上行驶一周。我正在收集所有这些数据。我正在查看它。我正在评估它。然后我根据这些数据来纠正汽车的特定设计能力。如果我将这个小循环运行十亿次,我可能就拥有一辆完全自动驾驶的汽车。
处理汽车可能遇到的所有情况,所有这些事情。太阳是什么?太阳的角度是多少?路面的温度是多少?轮胎充气了吗?所有这些事情。我可以运行这个循环,我将获得一个越来越智能、越来越自主的系统,这就是所有人类设计系统想要成为的样子。对于我在制造某种东西的工厂车间来说也是如此。我不断使用这些遥测数据进行完善。最终,我希望系统能够自我完善。
时间序列的规则是,自我完善发生在很多地方,它通过人工智能实现自动化。
因此,我正在获取这些时间序列数据,并基于它构建训练模型,对吧?我正在构建现实世界的训练模型,无论是机器人还是自动驾驶汽车。我通常是在一种湖仓环境中进行的,在那里我可以获取结构化和非结构化数据。我可以将它与时间序列数据结合起来,并且我基本上可以构建一个关于我认为世界将如何运作的模型。但是然后我必须将其操作化。
因此,操作不仅仅是收集遥测数据,而是实际的获取。所以我构建了这些推断,然后我必须实现它们。因此,当汽车看到 X 时,它能多快地响应 X?当工厂车间看到某些条件不同步时,工厂车间能多快地进行调整?这就是操作数据库、时间序列数据库发挥作用的地方,因为它将实时查询。它将拥有来自模型的推断信息。它将实时查询。它将采取行动。
这就是我们正在关注的自动化。今天时间序列中发生的大部分事情是人们查看仪表板或仪表板或触发器。这即将改变,对吧?这将改变,因为这些系统将是自动驾驶的。他们将
变得越来越智能。因此,操作时间序列与分析训练和模型内容是分开的。当然。这暗示了我的下一个问题,你已经谈到了一些,我相信这将是这里的答案,尤其是在谈论人工智能时。随着我们看到越来越多的应用程序进入世界,传感器数据的指数级增长,你是否看到了公司如何收集、存储和分析时间序列数据的一般趋势?我认为最重要的趋势是模型构建、机器学习和
以及有机时间序列数据之间的关系。这正在成为,你知道,我们与之交谈的每个人,我们所有的客户都设计出了将操作数据与驱动模型的分析数据区分开的架构,并试图找出集成它们的方法。大多数人在整合的旅程中还处于相对早期的阶段。
但是最大的趋势是我们看到这种需求正在出现。以前,你知道,如果我们在三到四年前谈论这个问题,主要的要求是让我们监控这个系统并进行报告。但是现在我们看到,好吧,我们实际上可以开始采取措施走向自主性,也就是,你知道,所以这就是我认为最重要的趋势。但是,你知道,我们显然在数字世界中也看到了这一点,以大型语言模型的形式,我们到处都看到了这一点。但是当它触及现实世界时
然后,因为你已经报道了一段时间了,我们获得的传感器并没有减少。我们获得的传感器越来越便宜,而且数量也越来越多,我们正在以惊人的速度对物理世界进行传感器化。在我们展望未来时,你是否预见到由于我们将拥有更多传感器以及我们将从物理世界收集更多数据而产生的其他挑战?我的技术乐观主义,我相信肯定有一些外部因素会成为问题。
但总的来说,更有效地监控物理世界,无论是医疗保健、气候还是太空,这都是一件非常强大和重要的事情。我认为可能会有某些负面外部因素,但我看到的大部分都是积极的。你知道,特别是我们之前在开始之前谈到的,你知道,南加州和火灾以及气候变化。
监控物理世界的能力将非常非常重要。- 告诉我一些关于你们未来的展望,InfluxDB 将在解决我们在这里讨论的这些挑战方面发挥什么作用?
是的,我想谦虚地面对它。我们是一个数据平台,但所有事情都始于数据。所以,你知道,我们的使命是在我之前提到的这三件事上做到出色,即数据的摄取、组织和查询,以便数据可用。如果人工智能和机器学习以及日益增长的自主系统世界正在
正在发生,那么这些东西的镐和铲子在哪里?如果人工智能是所有信息的炼油厂,那么我们正在从地下提取石油和天然气。无论是什么,我们都在提供制造这种智能的原材料。然后我们提供采取行动的能力。
这就是我们组织世界的方式。所以我们构建了,你知道,产品的下一个版本就是考虑到这些因素而构建的。它与湖仓环境深度集成。数据一直被谈论为在我们的日常生活中和每个企业的日常生活中有多么重要。但是,随着我们开始真正从物理世界中提取越来越多的数据,人工智能及其能力和功能也在增长,以解决业务问题,像你们这样的公司正在帮助简化这一过程。我认为能够做到这一点在未来的发展中扮演着非常重要的角色,
我们要去的地方。我认为这是一件需要强调的重要事情。我们的听众可以在哪里了解更多关于你们正在做的事情、你们支持的应用程序、联系方式、后续行动等等?这是经典的。它在 influxdata.com 上。还有一些 GitHub 代码库。我们对开源、Apache、Data Fusion、Flight、SQL 等做出了巨大贡献。有我们的网站,有博客文章。所有你需要知道的东西都在这里。
Evan,这次谈话很棒。我真的很感谢你的时间。我想做的是,显然我们会发布这个,但可能在今年晚些时候再邀请你,谈谈这个领域的增长以及随着人工智能的增长、物联网的增长而发生的事情,你知道,更多的数据出现。我很想了解你们从你们的角度来看的看法。
百分之百。Ryan,我真的很享受这次谈话。首先,很高兴认识你,我真的很享受这次谈话,并祝贺你的成功。谢谢。是的,我们一直玩得很开心,希望我们的听众能继续从中获得价值。显然,我们能够重点介绍的专家越多,你们提供的价值就越高。所以再次感谢你的时间。好的,伙计。保重。