Файл JSON-ом не передать. А способ хранения выбирается исходя из того, сколько таких вводов будет, каков предполагаемый размер файла и что дальше требуется со всем этим делать.
Я обычно на клиентской стороне бью файл на части, копирую на ftp. А там специальный скрипт с GET-параметром, в котором стоит счётчик, читает сначала первую часть, даёт редирект на вторую; вторая на третью - и так до конца заливки.