[python] MR输出单条信息不全的问题-python输出缓冲
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[python] MR输出单条信息不全的问题-python输出缓冲,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含628字,纯文字阅读大概需要1分钟。
内容图文
![[python] MR输出单条信息不全的问题-python输出缓冲](/upload/InfoBanner/zyjiaocheng/625/54c1f1c06f1845cd81888a04167e1c9c.jpg)
问题
在写MR代码输出query对应embedding向量时,出现了每个part中最后一个query对应的embedding维度输出不全的问题,但是part中其他embedding维度都是全的,在本地测试也没有问题。
原因分析
以上说明预测embedding的代码本身是没有问题的,MR框架本身也没有问题。
问题原因在于,用户进程和MR框架通过管道连接,如果用户进程没有吐完数据就退出,那么会最后产出的数据不全。
为什么用户进行没有吐完数据呢?
这是python2 print标准输出时,会先输出到stdout的缓冲中,等缓冲满了再一次性输出,如果没有满可能就不会输出。
所以以上提到的最后一个embedding维度不全的问题,可能是缓冲未满未输出造成的。
解决方法
python -u 可以使得python2.7的stdout不经过缓冲直接输出。
内容总结
以上是互联网集市为您收集整理的[python] MR输出单条信息不全的问题-python输出缓冲全部内容,希望文章能够帮你解决[python] MR输出单条信息不全的问题-python输出缓冲所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。