数据库 – 存储许多日志文件

我有一个通过http(> 10k生产者,每天10个日志,每个约100行文本)从不同地方接收日志文件的系统.

我想存储它们以便能够计算杂项.每晚统计,出口(按抵达日期或一线内容排序)…

我的问题是:存储它们的最好方法是什么?

>平面文本文件(具有正确的锁定),每个上传文件一个文件,每天/生产者一个目录
>平面文本文件,每个一个(大)文件为所有生产者(这里的问题将索引和锁定)
>数据库表与文本(MySQL是首选内部原因)(pb与DB清除作为删除可以很长!)
>数据库表,每行文本有一条记录
>分片数据库(每天一个表),允许简单的数据清除. (这是分区,但是我有权访问的版本(即内部支持)不支持它)
>基于文档的DBàla couchdb或mongodb(问题可能是索引/成熟度/摄入速度)

任何建议 ?

解决方法

我会选择第一个解决方案.

我不明白为什么你需要DB.好像所有你需要的是扫描数据.将日志保持在最“原始”状态,然后处理它,然后每天创建一个压缩包.

聚合的唯一原因是减少文件数量.在某些文件系统上,如果将多个N个文件放在目录中,则性能会迅速下降.检查您的文件系统,如果是这样,请组织一个简单的2级层次结构,比如使用生产者ID的前2位作为第一级目录名.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...