4 ms·
jsonl is json objects separated by endline characters. Used in Bedrock batch processing.
by uncomplete 1y ago
jsonl is json objects separated by endline characters. Used in Bedrock batch processing.
- markerz 1y agondjson is extremely similar, Splunk uses it for exporting logs as json
- lucb1e 1y agoFrom a quick lookup, aren't "newline-delimited json" and "json lines" identical? Different name for the same thing?
- Izkata 1y agoCame up at work a few weeks ago when a co-worker used "ndjson" which I'd never heard of before, but I knew "jsonl" which he'd never heard of before: As far as I could tell with some searching, they are basically the same thing and have two different names because they came from two different places. "ndjson" was a full-on spec, while "jsonl" was more informal - kind of like an enterprise vs open source, that converged on the same idea. From wikipedia, "ndjson" used to include single-line comments with "//" and needed custom parsers for it, but the spec no longer includes it. So now they are the same.
- yencabulator 1y agondjson has an actual spec (however bitrotted), everything else in that space makes rookie mistakes like not specifying that a newline is a required message terminator -- consider receiving "13\n42", is that truncated or not? https://github.com/ndjson/ndjson.github.io/issues/1#issuecomment-109935996 https://github.com/ndjson/ndjson.github.io/issues/1#issuecom... None of the above is actually good enough to build on, so a thousand little slightly-different ad hoc protocols bloom. For example, is empty line a keepalive or an error? (This might be perfectly fine. They're trivial to program, not like you need a library.)