gpt4 book ai didi

database - 如何每天有效地存储 1B 的新行并有可能进行查询/索引?

转载 作者:行者123 更新时间:2023-12-05 09:09:42 25 4
gpt4 key购买 nike

数据库问题。我有这种结构的数据。

   duration       caller       callee                   datetime
0 1110 33146060603 33238020000 2020-06-03 09:05:50.703710
1 0 33319185000 33447982364 2020-06-03 09:05:50.703710
2 0 33319185000 33447982364 2020-06-03 09:05:50.703710
3 0 33319185000 33447982364 2020-06-03 09:05:50.703710
4 0 33406780224 33407748000 2020-06-03 09:05:50.703710
5 0 33407816615 33483579000 2020-06-03 09:05:50.703710
6 0 33411703064 33455518000 2020-06-03 09:05:50.703710

我每 5 分钟收到一次(通过 rsync)。每天收到的总行数约为 1e9 (1B) 行。总的来说,我希望至少收集 100 天左右。理想情况下,随着时间的推移,应该很容易删除一整天以节省空间。

我希望能够查询每个 callercalleedatetime

我几乎所有的查询都是SELECT * from DB where caller = 33319185000 OR callee 33319185000 and datetime IN (2020-06-03)(选择与电话号码匹配的所有行,例如 50K 号码一次)。

是否有任何类型的高效数据库来完成这项任务?

我研究了很多,但我仍然没有找到有效解决这个问题的合适方法。

最佳答案

你可以试试Vaex的确!

本文为您提供了一个用法示例,它在总共 10 亿行中使用了过滤和选择等各种常见操作: https://towardsdatascience.com/how-to-analyse-100s-of-gbs-of-data-on-your-laptop-with-python-f83363dda94

还有一个关于获取数据的指南,文档应该有足够的示例来帮助您入门: https://docs.vaex.io/en/latest/

希望对您有所帮助!

(免责声明:本人是上述文章的作者,也是该项目的核心贡献者)。

关于database - 如何每天有效地存储 1B 的新行并有可能进行查询/索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62163296/

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