Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
eliasdejong
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
4 ms
·
31.
▲
by
eliasdejong
10mo ago
Author here, First of all, hello Hacker News :) Many of the comments seem to address the design of key hashing. The reason for using hashed keys inside B-tree nodes instead of the string keys directly is threefold: 1) The implementation is
32.
▲
by
eliasdejong
10mo ago
When overwriting fixed-sized values like integers or floats, the old value can simply be overwritten. Holes are only left if the overriding values do not fit in the old location (strings, byte arrays). To clean up unused space, you start an
33.
▲
by
eliasdejong
10mo ago
Lite³: a binary format encoding JSON documents as a serialized B-tree, making it possible to construct iterators on them directly and query internal fields at indexed speeds. It is still a serialized document (possible to send over a networ
34.
▲
by
eliasdejong
10mo ago
In general jq maps very well to any hierarchical datastructure. One of the maintainers has made 'fq' which supports BSON, MsgPack, Protobuf, CBOR and even media files png, jpg, mp4 etc. SQLite when compiled for size is 590 kB. But
35.
▲
by
eliasdejong
10mo ago
The main difference between Lite³ and JSONB is that JSONB is not a standalone portable format, and therefore is not suitable for external interchange. Its purpose is to be an indexable representation of JSON inside a Postgres database. But
36.
▲
by
eliasdejong
10mo ago
Yes, in fact the name Lite³ was chosen because it is lighter than SQLite. I thought about implementing something like jq or JSON query, and this is very possible. It is like sending a mini-database that can be queried at speeds thousands of
37.
▲
by
eliasdejong
10mo ago
Thank you. Having a native bytes type is non-negotiable for any performance intensive application that cannot afford the overhead of base64 encoding. And yes, Rkyv also implements this idea of indexing serialized data. The main differences
38.
▲
by
eliasdejong
10mo ago
It is also possible to encode JSON documents directly as a serialized B-tree. Then you can construct iterators on it directly, and query internal fields at indexed speeds. It is still a serialized document (possible to send over a network),
39.
▲
by
eliasdejong
10mo ago
Check out Lite³, a schemaless binary format: https://github.com/fastserial/lite3 Supports 64 bit ints, raw byte datatype, zero-copy parsing, does not require schema and can be converted to JSON for readability while re
40.
▲
Show HN: Lite³ – A JSON-Compatible Zero-Copy Serialization Format in 9.3 kB of C
(github.com)
4 points
by
eliasdejong
11mo ago
|
0 comments