如果我们要存一个很大的Image怎么办?

最近面试碰到这个2个 follow up问题:

  1. 如果image内存存不下怎么办?
  2. 如果再大,disk都存不下怎么办?

我说的回答是 但是不知道对不对, 请老师指教:

  1. 可以开启swap memory 把 多余的内存的数据存到disk (swap 会用类似lru 的方法,把老的数据放进disk)
  2. 可以用distributed file system 类似做法 把文件分成很多chunk 传到不同的机器中间,然后把metadata 存到master服务器

请问照片存不下是指一张照片还是一组照片,照片在逻辑上能够分成更小的部分吗?比如地球整个的球面航拍照片,可以根据 Geohash 来切分。
总的来说,内存不够可以放硬盘或者分布式内存 (Redis, Memcached),硬盘不够存分布式文件系统 (GFS)。需要考虑根据什么规则去做 Partition。