我正在编写一个需要存储和分析大量电气和温度数据的应用程序。
基本上,我需要存储过去几年和未来数万个地点的大量每小时用电量测量值,然后以不太复杂的方式分析数据。
我需要(目前)存储的信息是位置 ID、时间戳(日期和时间)、温度和电力使用情况。
关于需要存储的数据量,这是一个近似值,但大致如下:
20 000 多个位置,每月 720 条记录(每小时测量,每月大约 720 小时),120 个月(10 年前) ) 和未来许多年。简单的计算得出以下结果:
20 000 个位置 x 720 条记录 x 120 个月(10 年前)= 1 728 000 000 条记录。
这些是过去的记录,新记录将每月导入,因此每月大约有 20 000 x 720 = 14 400 000 条新记录。
总位置也将稳步增长。
对于所有这些数据,需要执行以下操作:
数据将每月写入一次,但会被数百名用户(至少)不断读取,因此读取速度更为重要。
我没有使用 NoSQL 数据库的经验,但从我收集到的信息来看,它们是此处使用的最佳解决方案。我已经阅读了最流行的 NoSQL 数据库,但由于它们完全不同,并且还允许非常不同的表架构,我一直无法决定使用什么是最好的数据库。
我的主要选择是 Cassandra 和 MongoDB,但由于我的知识非常有限,而且在大数据和 NoSQL 方面没有实际经验,我不太确定。我还读到 …