收集关系数据并使用Python定期添加到数据库

时间:2017-07-30 20:12:04

标签: django python-2.7 postgresql orm

我有一个项目:

  • 从活动目录中提取数据
  • 基于活动目录数据从不同服务获取数据
  • 汇总数据
  • 每15分钟必须将大约50000行添加到数据库中

我使用Postgresql作为数据库,django作为ORM工具。但我不确定django是否适合此类项目。我必须删除并添加50000行数据,我担心性能。 还有另一种方法可以做这样的过程吗?

3 个答案:

答案 0 :(得分:1)

50k行/15m无需担心。

但是我确保使用bulk_create来避免50k次往返数据库,这可能是一个问题,具体取决于您的数据库网络设置。

答案 1 :(得分:0)

您可以为此目的编写自定义Django管理命令,然后将其称为

if len(data) > 1 {
  var req StratumReq
  err = json.Unmarshal(data, &req)
  if err != nil {
    s.policy.ApplyMalformedPolicy(cs.ip)
    log.Printf("Malformed stratum request from %s: %v", cs.ip, err)
    return err
  }
}

Here is the documentation link

答案 2 :(得分:0)

当然,还有其他方法,如果这就是你所要求的。但是Django ORM整体上非常灵活,如果你仔细编写查询,就不会有明显的开销。 15分钟内50000行不够大。我正在使用Django ORM和PostgreSQL来处理每天数百万条记录。