我希望系统上有大量(例如数百万)的日志文件。但OS对打开的文件有限制。在单个文件夹中创建百万个文件效率不高。
是否有现成的解决方案,框架或数据库来创建日志文件并以有效的方式将数据附加到日志文件中?
我可以设想各种技术来优化大量日志文件的管理,但可能会有一些开箱即用的技术。
e.g。我希望每天或当它达到50MB时重新创建日志文件。必须存储旧日志文件。例如上传到Amazon S3。
我可以想象log database
将所有日志写入单个文件,但后来的过程会将记录追加到数百万个文件中。
可能有适合此类任务的特殊文件系统。我找不到任何东西。我相信可能有解决方案。
PS 我希望在单个服务器上运行日志记录。我说100万,因为它超过打开文件的默认限制。 100万个文件1MB是1TB,它可以存储在常规硬盘上。
在我自己编写之前,我会寻找现有的解决方案。我相信可能有一组日志记录服务器。我只是不知道如何搜索它们。
答案 0 :(得分:1)
我会开始考虑将Hadoop的Cassandra作为日志数据的存储,并最终如果您希望这些数据以文件的形式编写一个过程,该过程将对其中一个数据库进行选择并将它们放在格式化文件中