R Ограничение размера файла (памяти): несоответствие между OSX / Ubuntu - PullRequest
0 голосов
/ 28 февраля 2019

Аппаратное обеспечение:

  1. MacBook Air 2013, 4 ГБ 1600 МГц DDR3, 1,3 ГГц Intel Core i5.Yosemite 10.10.5.

  2. Удаленный облачный сервер, 6 ГБ ОЗУ, 2 ЦП.Ubuntu 16.04 LTS / RStudio Server.

У меня большой набор данных (32 500 000 x 88), который мне удалось скомпилировать из .csv в .RDS в RStudio на моем 5-летнем MacBook Air,Учитывая, что у ноутбука нет аппаратного обеспечения для прогнозирующего моделирования набора данных, я загрузил базу данных .RDS объемом 2,6 ГБ на свой облачный сервер.

Моя проблема: при попытке readRDS () база данных в моем удаленном стеке Ubuntu через RStudio Server или ssh / терминал R, я получаю пресловутую Ошибка: не удается выделить вектор размером 123,9 МБ ошибка.Та же ситуация возникает для .fst версии БД в сочетании с read.fst () .

Я не могу понять, что как удаленный сервер не можетдаже загружать набор данных, когда мой ноутбук может сделать это за 3-4 минуты?

MacBook Air SessionInfo ():

R version 3.3.3 (2017-03-06)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X Yosemite 10.10.5

locale:
[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

Удаленный сервер sessionInfo ():

R version 3.4.4 (2018-03-15)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.5 LTS

Matrix products: default
BLAS: /usr/lib/libblas/libblas.so.3.6.0
LAPACK: /usr/lib/lapack/liblapack.so.3.6.0

locale:
 [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8    
 [5] LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_GB.UTF-8   
 [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base 

MacBook Air Ulimit -a

core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 256
pipe size            (512 bytes, -p) 1
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 709
virtual memory          (kbytes, -v) unlimited
Jacobs-MacBook-Air:~ JacobGrapendal$ 

Удаленный сервер Ulimit -a

core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 23796
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 23796
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

Размер объекта загружен .RDS на моем ноутбуке:

object.size(core)
20021819880 bytes

Следовательно, удаленный сервер работает под управлением 64-разрядного R и использует неограниченную виртуальную память.Тем не менее, он не может сделать то, что может сделать мой 5-летний MacBook Air.Почему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...