每秒解析数GB的JSON


前言

JSON是Web上普遍存在的一种数据交换格式。由于庞大的数据量,摄取JSON文档可能成为性能瓶颈。尽管JSON解析的问题已经很成熟了,但研究者们展示了有可能实现实质性的加速。他们提供了第一个标准兼容的JSON解析器,它可以使用普通处理器在单个核上每秒处理千兆字节的数据。与最先进的引用解析器(如RapidJSON)相比,simdjson可以使用四分之一或更少的指令。与其他验证解析器不同,simdjson广泛使用了单指令、多数据(SIMD)指令。simdjson是在自由许可下免费提供的开源软件。


提示:以下是本篇文章正文内容,下面案例可供参考

一、simdjson与其他JSON解析器对比

解析速度必然依赖于JSON文档的内容。为了进行公正的评估,研究者选择了大量的文件。最后的第二列(struct.)是结构字符和伪结构字符的数量。最后一列是总字节数与结构和伪结构字符数之比。
在Skylake架构下 simdjson解析速度领先其他解释器在这里插入图片描述
在Cannon Lake架构下,解析速度也是领先
在这里插入图片描述
研究者又在SkyLake架构下把simdjson和其他更多的解析器作比较,给出了解析器解析文件的速度在这里插入图片描述

二、总结

simdjson库使用常用的SIMD指令和微并行算法来解析JSON,比RapidJSON快4倍,比JSON for Modern C++快25倍。

开源地址
引用的论文地址

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值