質問

groovyを使用すると、JSONとXMLの読み取りとクエリの速度とメモリオーバーヘッドの点でパフォーマンスの向上が期待できますか?

役に立ちましたか?

解決

JSONはXMLよりも小さくシンプルです。 JSONの解析は高速になると思います。

YAMLはさらに高速になります。

他のヒント

実際に速度が問題になる場合は、Groovyの実装に依存するよりも、javaライブラリを使用して、必要なものを解析します。

同じスキーマと同じ情報の場合、メモリ使用量はほぼ同じになります。パフォーマンスは2つの間で無視できるはずです。

スキーマとデータが同じである場合、プロファイラー以外ではパフォーマンスの違いを検出できないと思います。つまり、間違ったXMLパーサーを使用すると、大きな違いが見られるということです。言い換えれば、SAX実装は、JSON解析と簡単に一致するか、場合によってはそれを上回ることがあります。シンサイダーには多くの外的要因があります。本当の話をしたい場合は、JSONとSAXパーサーの両方を同じデータ/スキーマに追加ロジックなしでスローします。大きな節約は、解析の解釈に使用されるロジックから得られます。必要に応じてDOMまたはプルパーサーを使用する方が簡単かもしれませんが、SAxは非常に複雑な非パフォーマンスソリューションを引き起こします。また、パーサーにも顕著な違いがあります。ファイルサイズの変数を追加すると、実際に測定しているものの範囲がすぐに失われます。別の例として、XMLにDTD記述とエンティティー参照が含まれており、それらをネットワーク経由で解決する必要があり、ネットワーク接続の待ち時間が長い場合、JSONの改善が見られます。すべては、あなたが本当にやろうとしていることに要約されます。

XMLには、山括弧と余分な情報があるため、JSONよりも少しオーバーヘッドが大きくなります。このため、優れたパーサーはXMLよりも速くJSONを解析できるはずです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top