在用pandas读取大型(都几乎是超1G)的csv文件,发生了如下报错:

搜了一下,

  • 第一种发生原因:安装包版本问题。所以解决办法:

    • pip install -U numpy(好一部分朋友表示这个有用)
    • conda install nomkl(少部分朋友表示这个有用)
    • conda update anaconda/ mkl(一部分朋友表示这个有用)

但是这些都不适用掌柜这里,后来又查了一下。

  • 第二种发生原因:容器分配的内存不足导致。 解决办法:修改容器内存配置
docker update -m 4096M 

或者

docker update -m 4096M --memory-swap 4096M your_container_ID

掌柜先去查看了目前运行容器的内存使用情况,使用如下指令:

docker stats your_container_ID

接着出现如下画面:

这是还没运行的时候,然后一运行该容器读取大型csv文件程序的时候,就出现内存飙升直到kernel died:

由于掌柜这里的jupyter notebook是运行在腾讯云服务器的docker容器上面的。于是再次一查


,果真:这里的服务器系统盘是只有1核2G的内存。。。 怪不得会kernel died,还真是内存不足引起的!

参考资料:
Kernel Restarting The kernel appears to have died. It will restart automatically (Jupyter-Tensorflow) #9829
the-kernel-appears-to-have-died-it-will-restart-automatically
The kernel appears to have died. It will restart automatically