微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql – 开源数据库中行数的上限?

我有一个项目,我正在进行数据挖掘大型数据库.我目前将所有数据存储在文本文件中,我试图了解存储数据关系数据库的成本和好处.这些点看起来像这样:

CREATE TABLE data (
    source1 CHAR(5),
    source2 CHAR(5),
    idx11   INT,
    idx12   INT,
    idx21   INT,
    idx22   INT,
    point1  FLOAT,
    point2  FLOAT
);

我可以以合理的性能获得多少这样的积分?我目前有大约1.5亿个数据点,我可能不会有超过3亿个数据点.假设我使用的是带有4个双核2ghz Xeon cpu和8GB RAM的盒子.

解决方法:

MysqL不仅能够满足您的需求,还能满足Alex对Postgresql的建议.合理的性能应该不难实现,但是如果要访问大量的表并且有大量的DML,您将需要了解更多关于您最终选择的数据库所使用的锁定的信息.

我相信Postgresql可以使用开箱即用的行级锁定,MysqL将依赖于您选择的存储引擎. MyISAM只锁定在表级别,因此并发性受到影响,但是InnoDB for MysqL等存储引擎可以并将使用行级锁定来提高吞吐量.我的建议是从MyISAM开始,只有当你发现需要行级锁定时才转移到InnoDB. MyISAM在大多数情况下运行良好,重量极轻.我使用MyISAM在MysqL中拥有超过10亿行的表,并且具有良好的索引和分区功能,您可以获得出色的性能.您可以在MysqL中阅读有关MysqL存储引擎的更多信息
MySQL Storage EnginesTable Partitioning的表分区.这是一篇关于partitions in practice on a table of 113M rows文章,您可能会觉得它很有用.

我认为将数据存储在关系数据库中的好处远远超过成本.一旦数据在数据库中,您就可以执行许多操作.及时恢复,确保数据完整性,更细粒度的安全访问,数据分区,通过通用语言对其他应用程序的可用性. (sql)等

祝你的项目好运.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐