我们有一个大型Filemaker数据库,并编写了一个工具,可将所有必需的信息导出到XML / JSON中。
我们已经使用Django REST框架创建了一个Django应用程序并且适当地设置了我们的模型,但现在对将所有XML / JSON数据导入网站的最佳方式感到困惑。
最初,我们修改了Filemaker输出以匹配dumpdata
的结构,并认为夹具与loaddata
结合将是理想的但是我读的越多,似乎不可能由于最终的大小文件和内存问题(我们目前正在heroku dev实例上托管我们的应用程序。)
有人可以推荐将这个数据集加载到我们的Django应用程序中的最佳方法吗? (我们也可以编写一个脚本,通过API逐个插入所有内容,但这看起来也非常低效。)
如果重要的是,我们的JSON结构如下:
[
{
"model": "archive.archiveobject",
"pk": 1,
"fields": {
"title": "Example Title",
"description": "Example Description",
"date_begin": "2014-03-12",
"date_end": "2014-03-12",
"created": "2014-04-01T14:04:53.496Z",
"owner": 1
}
}
]
答案 0 :(得分:0)
你应该考虑的其他一些事情:
我的建议是将作业划分为块(可能是100个对象并从那里上升)并创建一个批量加载API调用,您可以使用它来加载这些块。一个快速而肮脏的解决方案可能是将块放入单独的文件(chunk-0000001.json)并在完成时重命名(loaded-chunk-0000001.json)。对这些文件进行文件级锁定可以让您同时运行该作业。