将csv数据从S3存储桶自动摄取到时间流数据库的最简单方法是什么
我有一个s3存储桶,它在文件夹结构中连续生成csv文件。我想把这些文件保存在时间流数据库中,这样我就可以在grafana实例中可视化它们。
我已经尝试过通过Glue爬网程序这样做,但对我来说不会。关于如何解决这项任务,有什么变通方法或教程吗?
现在有一个名为批量加载的功能。您可以将CSV文件摄取到时间流中。
你可以在这里阅读
我使用Lambda函数、SNS主题和队列来实现这一点。
我的bucket中的新文件触发SNS主题上的通知
通知被添加到一个SQS队列中。
lambda函数消耗队列,恢复新s3对象的bucket和key,下载csv文件,进行一些处理并将数据摄取到时间流中。lambda是用Python实现的。
这一直运行良好,但需要注意的是,大型文件可能无法在lambda 15分钟的限制内完全摄取。时间流不是很快。它通过使用多值记录以及使用";boto3中时间流客户端的公共属性特性。
(需要注意的是,如果愿意的话,lambda可以直接由S3 bucket触发。使用队列可以提供更大的灵活性,例如可以手动将文件添加到队列中进行再处理(