rapidjson. Поскольку файлы в сжатом состоянии довольно большие (7 ГБ), я написал некоторый код для получения фрагментами распакованного потока строки json из файла gz.
Поскольку фрагменты json потоковые данные основаны на буфере памяти, большинство фрагментов являются недопустимыми json, а элементы могут быть закрыты только через несколько фрагментов в строке, а json глубоко вложен и сложен. Таким образом, простой анализ каждого фрагмента не работает, поскольку должен быть некоторый кеш на случай, если элементы закончатся и т. д.
Есть ли способ справиться с этим с помощью simdjson или RapidJson?
Я ни в коем случае не силен в C++, поэтому буду очень признателен за любую помощь!
Вот код:
#include
#include
#include
#include
#include "simdjson.h"
const int CHUNK_SIZE = 10240;
void decompress(const std::string &filename) {
gzFile gzFile = gzopen(filename.c_str(), "rb");
if (!gzFile) {
std::cerr
Подробнее здесь: [url]https://stackoverflow.com/questions/79344306/parsing-partial-json-chunks-with-simdjson-rapidjson[/url]
У меня есть несколько больших файлов json.gz, и я пытаюсь проанализировать эти файлы с помощью такой библиотеки, как simdjson/[code]rapidjson. Поскольку файлы в сжатом состоянии довольно большие (7 ГБ), я написал некоторый код для получения фрагментами распакованного потока строки json из файла gz. Поскольку фрагменты json потоковые данные основаны на буфере памяти, большинство фрагментов являются недопустимыми json, а элементы могут быть закрыты только через несколько фрагментов в строке, а json глубоко вложен и сложен. Таким образом, простой анализ каждого фрагмента не работает, поскольку должен быть некоторый кеш на случай, если элементы закончатся и т. д. Есть ли способ справиться с этим с помощью simdjson или RapidJson? Я ни в коем случае не силен в C++, поэтому буду очень признателен за любую помощь! Вот код: #include #include #include #include #include "simdjson.h"
У меня есть несколько больших файлов json.gz, и я пытаюсь проанализировать эти файлы с помощью такой библиотеки, как simdjson/ rapidjson. Поскольку файлы в сжатом состоянии довольно большие (7 ГБ), я написал некоторый код для получения фрагментами...
У меня есть рабочий код, время выполнения которого нужно значительно улучшить, и я совершенно растерялся. По сути, я получу zip-папки, содержащие десятки тысяч файлов JSON, каждый из которых содержит примерно 1000 сообщений JSON. В каждом из этих...
У меня есть рабочий код, время выполнения которого нужно значительно улучшить, и я совершенно растерялся. По сути, я получу zip-папки, содержащие десятки тысяч файлов JSON, каждый из которых содержит примерно 1000 сообщений JSON. В каждом из этих...
У меня есть рабочий код, время выполнения которого нужно значительно улучшить, и я совершенно растерялся. По сути, я получу zip-папки, содержащие десятки тысяч файлов JSON, каждый из которых содержит примерно 1000 сообщений JSON. В каждом из этих...