存储大型数据集以处理和分析数据

数据挖掘 数据集 数据分析 数据格式 加工 数据工程
2022-02-20 20:59:38

我是数据工程的新手,想知道,存储超过 3000 GB 数据以进行进一步处理和分析的最佳方式是什么?我专门寻找开源资源。我探索了许多用于存储的数据格式。我要存储的数据集是传感器生成的心率脉搏数据。

2个回答

这将取决于用例 - 读取、写入和分析等。尽管如此,如果尚未完成,您可能想要探索Hadoop 。

取决于数据的格式。简要概述您的选择及其优缺点。

  • csv - 易于处理和共享,可以从终端搜索,在grep几十 Gbs 后将受到限制。也许你可以把你的数据集分解成几个csvs. json也会属于这一类)

  • SQL 数据库- 如果数据是结构化的并遵循数据模式,那么传统的 SQL 数据库(如PostgreSQL)可能是一个有趣的选择。SQL 提供了一种检索数据的表达方式,而 PostgreSQL 数据库将通过适当的硬件 + 配置完全处理 3 Tb 数据。许多编程语言都提供了与 PostgreSQL 或SQLite等 SQL 数据库集成的方法

  • 没有 SQL 数据库- 如果数据不是结构化的或不遵循数据模式,则MongoDBElasticSearch等工具可以存储“键/值”或“文档”。使用适当的硬件和集群配置,No SQL DB 将能够处理 3 Tb 的数据。

  • 时间序列数据库——你提到的心率脉搏数据,这很可能是时间序列数据。您可以查看专门用于存储时间序列的 db。如果时间序列维度是您要解决的问题的定义特征,那么InfluxDB将是我的首选。


注意:正如您所说的您正在开始使用数据工程,这本书将为您提供有关如何构建数据管道和选择适当工具的有价值的内容。设计数据密集型应用程序,作者:Martin Kleppmann