使用kintone API以及CSV文件大批量更新记录时的注意事项

aki发表于:2020年12月04日 13:44:53更新于:2020年12月17日 14:17:28

Index

概要

kintone不仅可以在页面上对记录逐条更改,也可以通过API以及CSV文件对记录进行更新。

对于kintone的记录更新功能,根据实际需求应用于多方面,用途特别广泛,是一个非常便利的功能。

例如,可以从kintone内的其他应用或者外部服务获取数据,定期批量更新记录。

相信有不少用户也希望充分利用API以及CSV文件来进行数据更新。

而在这之前,希望大家知保留历史记录和磁盘空间使用量的关系。

那是怎么一回事呢?让我们一起来看看吧。

关于保留历史记录

kintone中的“历史记录”功能,可以查看字段的更改历史,如果不小心错误更新了记录也可以恢复到前版本,在实际工作中发挥着重大作用。

在默认情况下,“历史记录”功能处于有效状态,每次更新记录时会自定保存更改历史记录。

cybozu.cn共通管理的“使用情况”中显示的磁盘使用空间里,有附件保存空间、监控日志保存空间、数据库保存空间,而记录的更改历史就保存在数据库保存空间里。

对!也就是说kintone数据库内也会保存记录的更改历史,其使用量会被计算到总使用量里。

认为kintone数据库内只是保存当前记录信息的同学们,需要注意啦!

▼cybozu.cn帮助:查看使用情况
https://help.cybozu.cn/general/zh/admin/list_service/usage.html

更新记录时kintone数据库内部的处理

那么,更新记录时,kintone数据库内部是如何工作的呢?

更新记录时kintone数据库内部的工作原理

0015fd1c2027ed6f4d667cfdcf82814

不仅是当前的记录信息,连前一个版本的记录信息也保存在kintone数据库内。

每次更新记录时,kintone数据库都会保存旧的信息,这样各版本的信息不断叠加。

通过执行API或者导入CSV文件进行大批量记录更新时…

也就是说,通过API或者通过导入CSV文件来批量更新多条数据时,

kintone数据库内部是如下处理的。

大批量更新数据时DB内部的处理

0015fd304f490cb724dc814c5dee99e


怎么样!?

相比大家已经明白了,大批量更新数据时,随之产生的是相应数据量的历史记录被保存到数据库。

特别是使用API或CSV文件进行批量更新数据的时候,会比您想象得更加消耗磁盘容量,有可能会超过您购买的磁盘容量,需要特别注意。

(当然,使用命令行工具cli-kintone进行操作时也一样!!)

▼kintone命令行工具的使用方法(日语)
https://developer.cybozu.io/hc/ja/articles/202957070

大批量更新记录时记得关闭历史记录功能!

如果有些应用在日常不太用到历史记录,建议关闭这些应用的历史记录功能这样可以节省磁盘容量。

在kintone内部,保存记录信息所需要的处理减少了,也可以提高记录操作的速度。

从各方面考虑,才望子建议使用API进行定期更新记录时,关闭历史记录功能。

关于关闭历史记录功能的方法,请参考以下帮助。

▼kintone帮助:禁用保留历史记录的功能
https://help.cybozu.cn/k/zh/user/app_collectdata/history/disable_changehistory.html

最后

重要事情说三遍:平时不怎么用历史记录的话,建议您关闭历史记录功能!

启用历史记录功能的状态下,更新记录时会对磁盘容量产生压力,可能超过您购买的磁盘容量。

另外,关闭历史记录功能之外,如您还想知道有没有其他办法减少磁盘使用量,请参考以下帮助。

▼kintone帮助:如何减少磁盘使用空间?
https://help.cybozu.cn/k/zh/trouble_shooting/disk_data/disk_size.html

此Tips在2019年10月版的 kintone中确认过。


    注意:贴代码时请注意格式并使用"代码语言",与本文无关的问题请至“讨论社区”提问。