插入/更新/索引多行(100亿)数字作为值

时间:2014-07-15 10:11:19

标签: sql database data-structures bigdata nosql

我需要插入100亿行并多次更新它们的值。

表格结构:

Column1 Column2 Count
1       1       99
1       2       10003
1       3       1
1       4       23
1       5       9994
...
99999   1       2
99999   2       2233
99999   3       5904
99999   4       12
99999   5       4598435
...

我需要将Column1编入索引。 在一个表中Count将是另一个表中的Integer,它将是Double。

哪种数据库最适合我的需求? 我被告知我应该使用NoSQL,但它们有很多。

3 个答案:

答案 0 :(得分:2)

我会使用你熟悉的数据库,只要它能处理你所需的吞吐量。所以我假设你问你的首选数据库还没有满足你的要求。

如果您需要具有一致的亚毫秒查找延迟的高吞吐量,请查看ADTech行业中大量使用的Aerospike。见Case Study from AppNexus and Intel。 Aerospike是一个开源的,分布式的内存和/或SSD NOSQL KV数据库,支持UDF和二级索引。

答案 1 :(得分:0)

尝试从PostgreSQL开始。它没有行数限制manifested here。如果您遇到任何麻烦问题,您可能会再次考虑一些NoSQL解决方案。但它更有可能,Postgres将满足您的要求。今天非常成熟。

答案 2 :(得分:0)

任何主流RDBMS中都没有任何东西可以使这很难甚至不可能。对于任何RDBMS,您的所有要求都琐碎

您需要的是一个包含单个索引的表。这并不会对架构上的任何系统造成压力。

请注意,RAM可能不足以缓存所有数据。这意味着每次访问都会访问磁盘。您需要具有足够IOPS的磁盘。