Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / json 114ГБ / 17 сообщений из 17, страница 1 из 1
19.05.2020, 08:21
    #39959237
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Чертовски хочется вытянуть что-нибудь интересное для анализа из файлика JSON размером 114 ГИГ...
Наверное, тут старый-добрый FOX бессилен?
...
Рейтинг: 0 / 0
19.05.2020, 08:27
    #39959239
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Можно попробовать парсить как обычный файл fopen()/fread().
В переменную целиком не влезет, там 16 Мб потолок.
...
Рейтинг: 0 / 0
19.05.2020, 08:33
    #39959241
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Dima T,

ну да... это первым делом...
только FOPEN матерится - invalid seek offset

1 ГИГ - без проблем
5 ГИГ - выдает "-1"
9 ГИГ и выше - invalid seek offset
:(
...
Рейтинг: 0 / 0
19.05.2020, 09:13
    #39959252
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Точно, забыл что там 32 бита, 2 Гб потолок. Можно попробовать через WINAPI CreateFile()/SetFilePointer()/ReadFile()

У SetFilePointer() есть дополнительный параметр PLONG lpDistanceToMoveHigh я так понимаю это старшие 32 бита смещения.
...
Рейтинг: 0 / 0
19.05.2020, 09:21
    #39959255
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Как вариант: FSEEK() может смещаться относительно текущей позиции - попробуй сделать несколько FSEEK() по 1 Гб.
...
Рейтинг: 0 / 0
19.05.2020, 09:33
    #39959259
crutchmaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Redrik,

Что там за структура? Залей в любую нормальную субд.
...
Рейтинг: 0 / 0
19.05.2020, 09:42
    #39959263
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Dima T,

FSEEK? Дык я ж его FOPENом нимагу асилить! :)

Только WINAPI остается... Сразу за это и думал, да решил попробовать самим фоксом поизвращаться...
Будем посмотреть!
...
Рейтинг: 0 / 0
19.05.2020, 10:16
    #39959279
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Redrik
Dima T,

FSEEK? Дык я ж его FOPENом нимагу асилить! :)

Только WINAPI остается... Сразу за это и думал, да решил попробовать самим фоксом поизвращаться...
Будем посмотреть!

Потестил, FOPENом не открывается 6.3 Гб. Я думал что ему без разницы на размер и в хэлпе ничего про ограничения. Тогда получается что штатными средствами никак.
...
Рейтинг: 0 / 0
19.05.2020, 10:26
    #39959288
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
crutchmaster,

5 миллионов деклараций всяких проходимцев
структура - убиться можно!
просто залить - нет смысла, т.к. куча ненужного
потому, перед заливкой надо "вырезать" именно самое интересненькое... ;)
...
Рейтинг: 0 / 0
19.05.2020, 10:27
    #39959289
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Dima TПотестил, FOPENом не открывается 6.3 Гб. Я думал что ему без разницы на размер и в хэлпе ничего про ограничения. Тогда получается что штатными средствами никак.
таки да
...
Рейтинг: 0 / 0
19.05.2020, 10:45
    #39959292
crutchmaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Redrik,

mongodb попробуй. Она, вроде, как раз для всяких json'ов.
...
Рейтинг: 0 / 0
19.05.2020, 11:16
    #39959314
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
crutchmaster,

хм... ну это уж слишком сурово для такой задачи! :)
...
Рейтинг: 0 / 0
19.05.2020, 11:50
    #39959344
crutchmaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Redrik,

Попробуй еще jq. Вроде как он должен быть потоковым и 120гб прожевать.
https://stackoverflow.com/questions/32182087/processing-huge-json-array-files-with-jq
...
Рейтинг: 0 / 0
19.05.2020, 12:16
    #39959369
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Redrik
5 миллионов деклараций всяких проходимцев

Может сначала порубить чем-нибудь на файлики помельче? Например 114 файлов по 1 Гб
...
Рейтинг: 0 / 0
19.05.2020, 13:49
    #39959454
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Dima T
Redrik
5 миллионов деклараций всяких проходимцев

Может сначала порубить чем-нибудь на файлики помельче? Например 114 файлов по 1 Гб


Запустил "GSplit" - сказал ему нарубить по 2 Гб...
Посмотрим! )))
...
Рейтинг: 0 / 0
19.05.2020, 15:22
    #39959537
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
Прекрасно покромсало! )))
58 файлов...

57 по 2`000`000`000
58-ой - 453`383`321

Вот теперь можно и поковыряться!
...
Рейтинг: 0 / 0
20.05.2020, 14:19
    #39959856
Redrik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
json 114ГБ
crutchmaster
Попробуй еще jq. Вроде как он должен быть потоковым и 120гб прожевать

Спасибо, гляну!
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / json 114ГБ / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]