Solr更新压缩请求



如果已经有答案,我提前道歉,但我还没有找到。。。

我在玩Solr实例,我索引了数百万个文档,这些文档被拆分为json文件,每个文件有500K个文档,大约60MB。当压缩时,收缩到只有6MB。所以我想知道是否有一种方法可以发送压缩文件,即6M而不是60MB,在收到文件后,在处理它之前解压缩/放气。

我浏览了solwiki,但solr插件是"高级的,不推荐使用"

经过思考,我得出结论,创建一个处理压缩的REST端点,然后将数据本地传递给Solr会更简单,如下所示:

// Grab compressed data and uncompress
$data = file_get_contents('php://input');
$data = gzinflate(substr($data, 10, -8));
// Send to Solr
$ch = curl_init('http://localhost:8983/solr/update/json?commit=true&');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type:application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);

所以我不需要破解Solr

最新更新