返回
Blaze: Compiling JSON Schema for 10× Faster Validation
DOI:10.14778/3773749.3773764.png)
摘要
En 中文
JSON Schema为Web API开发者提供了有用的约束条件,以确保客户端提供的半结构化JSON输入与预定义结构匹配。这既有助于确保输入数据的正确性,也能避免因未正确验证输入而引发潜在的安全问题。然而,该验证过程可能耗时且会增加每个请求的开销。JSON Schema规范中的不同关键字之间存在复杂的相互作用,从而增加了验证时间。由于热门API可能每秒处理数千个请求且模式很少更改,我们发现可以预先解决部分复杂性以实现更快的验证。我们的JSON Schema验证器Blaze能在秒级到分钟级将复杂模式编译为高效表示,并在构建时增加最小的开销。Blaze通过引入多项独特优化,在多种数据集上将验证时间平均减少了约10倍,相比现有验证器。在某些情况下,Blaze的验证时间比次快的验证器快多个数量级。我们还证明,多个流行的验证器在某些情况下会产生不正确的结果,而Blaze则严格遵循JSON Schema规范。
Keyword:
JSON Schema
validation
optimization
compilation
performance
期刊
P
IF:
3.3
论文数:
563
被引数:
1.2W

