gpt4 book ai didi

mysql - 大容量静态分析数据的最佳存储引擎

转载 作者:行者123 更新时间:2023-11-30 23:40:31 28 4
gpt4 key购买 nike

我正在构建一个需要存储和查询大量时间戳数据的应用程序。具体来说,这是一种分析类型的数据,其中一个特定的“集合”可以包含多达 100 个通过共享时间戳连接在一起的独立数据点。此数据是静态的,因为它一旦存储就永远不会改变,但在从数据库中删除之前可能会被多次查询(我们目前只存储 12 周的数据)。

目前,我们将此数据存储在 MySQL 中,其中包含多个表,每个表大约有 1 亿行(我们每天添加大约 300 万行)。这在仅按时间戳存储和查询数据时很好,但在执行带排序的 SELECT 时,尤其是在尝试从表中删除旧的陈旧数据时,这会变得乏味。使用例如 WHERE 时间戳 < $12weeksago 的 DELETE 查询通常需要几个小时才能完成。

我们还想保留 12 周之后的一些数据,这会在针对另一列的 DELETE 中添加另一个 WHERE 子句。这进一步减慢了速度。

考虑到大量的读/写和查询需求,您会根据这个用例推荐什么存储引擎?

最佳答案

这完全取决于您所做的选择类型。如果 NoSQL 数据库可以做到这一点,那么这可能是您最好的猜测。

但是,我认为您可以通过对数据库进行分区来大大提高性能。由于它已经是基于时间的,因此您可以轻松地每天/每周/每月创建一个分区,这样您只需查询与当前查询相关的表。而删除旧数据是简单的drop table而不是慢速删除。

关于mysql - 大容量静态分析数据的最佳存储引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3543756/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com