对于流量计费系统,我需要存储大量关于通过我们的网关路由器发送的互联网数据包的数据集(包含时间戳,用户ID,目标或源IP,字节数等).
这些数据必须存储一段时间,至少几天.也应该可以轻松检索.
有什么好办法呢?我已经有了一些想法:
为每个用户和每天创建一个文件,并将每个数据集附加到该文件.
优点:它可能非常快,并且在给定一致的文件布局的情况下很容易找到数据.
缺点:不容易看到所有用户的所有UDP流量.
使用数据库
优点:使用正确的SQL查询很容易找到特定数据.
缺点:我不确定是否有一个数据库引擎可以有效地处理可能有数亿个数据集的表.
也许可以将两种方法结合起来:为每个用户使用SQLite数据库文件.
优点:在他的文件上使用SQL查询获取一个用户的信息很容易.
缺点:获取整体信息仍然很困难.
但也许其他人有一个非常好的主意?
首先十分感谢.