简体   繁体   English

Django ORM 需要很长时间才能加载

[英]Django ORM taking long time to load

I have this line of code in my views.py file.我的views.py文件中有这行代码。

fund_df = pd.DataFrame(list(FundRolling.objects.filter(code__exact=str(code), rolling=rolling, start_date__gte=start_date, end_date__lte=end_date).values()))

FundRolling is a model created in Django from MYSQL database. FundRolling是在 MYSQL 数据库的 Django 中创建的 model。 This model has nearly 10 million entries.这个 model 有近 1000 万个条目。 This line is taking 20 seconds for execution.该行执行需要 20 秒。 How can I reduce it to milliseconds?我怎样才能将它减少到毫秒?

I think DB index can help you to fetch data faster.我认为数据库索引可以帮助您更快地获取数据。 Try to add this index and don't forget to run migrations.尝试添加此索引,不要忘记运行迁移。 The index may take some time to build.建立索引可能需要一些时间。

class FundRolling(models.Model):
    class Meta:
        index_together = [
            ['code', 'rolling', 'start_date'],
        ]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM