2011-02-14 70 views
3

我打算使用mysql来存储我的数据集。我有大约10^8(亿)记录: ID(int), x(float),y(float),z(float),property(float)哪个数据库引擎适合10^10记录?

哪种数据库引擎适合这种数据集InnoDB或MyISAM?或者也许ndb(我不知道可扩展性或性能)?

我计划用下面的问题来查询静态数据集:

选择getRectagularRegiongetPointsInSphere;

回答

3

我假设你试图在三维空间中存储点,然后找到一个区域内的所有点。

下划线数据库如何用大量记录进行编码对于您来说是非常不重要的,然后将一个非常好的3D空间索引系统构建到数据库中。如果没有空间索引,您无法按照要求进行查询。

你也应该考虑写你自己的数据存储为一个简单的3狴树可以给你很好的索引取决于你的观点是如何聚集 - 但使用“关闭自拍”数据库将成为你工作少。

所以我认为你需要调查数据库中对空间索引的支持,而不是询问对很多行的支持。这些日子里存储大量的行是给大多数数据库...

0

你的表格看起来很简单,你不需要事务和外键。所以我猜MyISAM会比InnoDB更合适。但我想MEMORY可能是你最快的选择。

+0

这将是一个3 +技嘉内存表,吸取盒的一切,除非它是一个64位系统 – 2011-02-14 12:30:15

+0

内存10^10行? – Arman 2011-02-14 13:38:29