我的Node.js应用程序需要为几千兆字节的时间戳CSV数据编制索引,以便它可以快速获取任意值组合的行数,无论是每天的每分钟(1440个查询)还是每个小时在几个月内(也是1440年)。我们在半秒钟内说。海量数据快速重复行计数 - 什么格式?
不会读取列值,只有给定排列的每个区间的行数才会被读取。将时间缩短至整个分钟即可。每列的可能值很少,介于2到10之间,有些取决于其他列。进行预处理并将计数存储为适用于此单一任务的任何格式都可以 - ,但是会是什么格式?
存储实际值可能是一个坏主意,数百万行和变化很小。
为每个组合生成短代码并与正则表达式匹配可能是可行的,但由于这些代码必须每分钟重复一次,所以我不确定这是一种好方法。
或者它可以使用像SQLite,NeDB或TingoDB这样的嵌入式数据库,但是我们并不完全相信,因为它们没有原生类枚举类型,可能或不可能用于这种计数。但也许它会工作得很好?
这是一个惯用的解决方案的常见问题,但我还没有弄清楚它可能被称为什么。知道该怎么称呼它以及如何思考它会非常有帮助!