很多数据记录,数据库或文件的架构?

Cod*_*er1 4 python logging mongodb

我正在开发一个Python应用程序,我想要可扩展,以容纳每秒约150次写入.这在大约50种不同来源中分散.

Mongodb是一个很好的候选人吗?我在写入数据库时​​只是分开,或者只是为每个源创建一个日志文件并单独解析它们.

记录大量数据的任何其他建议?

And*_*ich 6

我会说mongodb非常适合日志集合,因为:

  1. Mongodb有惊人的快速写入
  2. 日志不是那么重要,所以在服务器出现故障的情况下可以放松一些日志.因此,您可以运行mongodb 而不使用日记选项来避免写入开销.
  3. 另外,您可以使用分片来提高写入速度,同时您可以将最旧的日志移动到单独的集合或文件系统中.
  4. 您可以轻松地 数据从数据库导出到json/csv.
  5. 一旦您拥有数据库中的所有内容,您就可以查询数据以查找所需的日志.

因此,我认为mongodb非常适合日志这样的东西.您无需在文件系统中管理大量日志文件.Mongodb为你做这件事.

  • +1.我认为5)是最重要的论点:你真的希望能够分析你的日志.在较大的应用程序中,日志文件毫无价值,因为除非您跟踪错误,否则无法读取单个行.我还建议不仅记录文本,还要记录一些有意义的数据(例如用户ID,服务器名称,模块ID等) (3认同)