python – 是否可以使用Google Cloud Datastore批量插入
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 是否可以使用Google Cloud Datastore批量插入,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1626字,纯文字阅读大概需要3分钟。
内容图文
![python – 是否可以使用Google Cloud Datastore批量插入](/upload/InfoBanner/zyjiaocheng/805/d2af5db4713f4a4c923cfe9b74ca9de7.jpg)
我们正在从生产数据库迁移一些数据,并希望将大部分数据存档在Cloud Datastore中.
最终我们会将所有数据移到那里,但最初将重点放在存档数据上作为测试.
我们选择的语言是Python,并且能够逐行将数据从mysql传输到数据存储区.
我们有大约1.2亿行要传输,一次一行的方法需要很长时间.
有没有人找到一些关于如何使用python将数据批量插入云数据存储区的文档或示例?
任何评论,建议表示赞赏,谢谢你提前.
解决方法:
我今天所知道的云数据存储没有“批量加载”功能,所以如果您期望“上传包含所有数据的文件并且它将出现在数据存储中”,我认为您不会找到任何东西.
您总是可以使用并行化工作的本地队列编写快速脚本.
基本要点是:
>排队脚本将数据从MySQL实例中拉出并将其放入队列中.
>(很多)工作人员从这个队列中拉出来,并尝试将该项目写入数据存储区.
>失败时,将项目推回队列.
数据存储是可大规模并行化的,因此如果您可以编写一个每秒发送数千个写入的脚本,它应该可以正常工作.此外,这里的大瓶颈将是网络IO(在发送请求之后,您必须等待一段时间才能获得响应),因此许多线程应该获得相当不错的整体写入速率.但是,您应该确保在这些线程中正确地分割工作.
现在,您应该调查Cloud Datastore是否适合您的数据和持久性/可用性需求.如果您正在占用120万行并将其加载到Cloud Datastore中以进行键值样式查询(也就是说,您有一个键和一个未编入索引的值属性,这只是JSON数据),那么这可能有意义,但加载数据会花费你?在这种情况下是70美元(120m * $0.06 / 100k).
如果您有属性(默认情况下将被编入索引),则此成本会大幅上升.
操作成本为每100k 0.06美元,但单个“写入”可能包含几个“操作”.例如,假设您在一个包含5列的表中有120米的行(相当于一个具有5个属性的Kind).
单个“新实体写入”相当于:
> 2(每个新实体1 x 2写操作固定成本)
> 10(每个索引属性5 x 2写操作)
> =每个实体12个“操作”.
因此,加载此数据的实际成本是:
120m实体* 12 ops / entity *($0.06 / 100k ops)= $864.00
内容总结
以上是互联网集市为您收集整理的python – 是否可以使用Google Cloud Datastore批量插入全部内容,希望文章能够帮你解决python – 是否可以使用Google Cloud Datastore批量插入所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。