gpt4 book ai didi

algorithm - 处理海量数据的库/数据结构

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:21:55 28 4
gpt4 key购买 nike

我有一些巨大的二进制驱动程序日志(每个大约 2-5GB,在将它们转换为可读形式后可能大约是原来的 10 倍)我需要编写一个工具来允许我按顺序浏览、排序、搜索和有效过滤它们(以便查找和解决错误)。

每个日志条目都有一些属性,例如:时间戳、类型、消息和一些 GUID。条目是同质的,没有关系,“检查”后无需存储数据。

我真的不知道如何处理这么多数据。将所有内容都保存在内存中是愚蠢的,将数据保存在平面文件中也是如此。我想过使用像 SQLite 这样的小型 DBMS,但我不确定它是否足够快,而且我不需要 DMBS 的许多功能——只需要排序和搜索。如果可能的话,在这种情况下,我会急切地用空间换取速度。

是否有任何库(或者可能是数据结构)可以帮助我处理如此大量的数据?

像 Postgre、MSSQL、MySQL 这样的“服务式”RDBMS 是不可能的,该工具应该在任何地方都易于使用,没有任何麻烦。

编辑:哦,有没有人知道 SQLite 的“:memory”模式是否对数据库的大小有任何限制,或者它会填充虚拟内存直到完全填满?

最佳答案

查看 STXXL - 超大数据集的标准模板库。

“STXXL 的核心是用于外部存储器(核外)计算的 C++ 标准模板库 STL 的实现,即,STXXL 实现了可以处理仅适合磁盘的大量数据的容器和算法。虽然与 STL 的兼容性支持易用性和与现有应用程序的兼容性,但另一个设计重点是高性能。”

此外,如果您可以为该任务分配多台计算机,请检查 Hadoop .尤其是 HBase、Hive 和 MapReduce。

关于algorithm - 处理海量数据的库/数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3442863/

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