[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: sqlite3
From: |
Alexandre Garreau |
Subject: |
Re: sqlite3 |
Date: |
Wed, 15 Dec 2021 03:09:21 +0100 |
Le mardo, 14-a de decembro 2021, 9-a horo kaj 57:51 CET Lars Ingebrigtsen
a écrit :
> Lars Ingebrigtsen <larsi@gnus.org> writes:
>
>
> > I think it'd be good to bring that into core, and then write a small
> > wrapper library (well, a trivial ORM) for the rest of Emacs to use, so
> > that we don't have to write SQL all over the place. That is:
> >
> > (setf (persistent-data :namespace "emoji" :key "favorites")
> > emoji--favorites)
> >
> > I.e., what Emacs needs is a persistent key/value store, and this would
> > give us that.
>
> This is now implemented under the name of `multisession-value' (but not
> merged to the trunk yet; I'll probably do that later today, unless
> somebody comes up with a better name).
>
> As for the sqlite part of this: My initial benchmarking of this was
> wrong. I thought sqlite3 was going to be a real advantage for this
> thing, since I'd benchmarked excellent performance (more than 50K
> updates per second, for instance). But that's only when not committing
> after every transaction, which we want to do here, really.
>
> But it turns out that sqlite3 is actually slower for this particular use
> case than just writing the data to a file (i.e., using the file system
> as the database; one file per value). So multisession.el now offers
> two backends (`files' and `sqlite'), and defaults to `files'.
What about having an intermediary abstraction for persistent stores in
general, and on top of that multisession variables?
What about a all-variables-in-one-file very trivial backend? a gdbm
backend? would that be possible/allowable if gdbm is only integrated as a
module?
What fs did you benchmark with? did you try with an old-linked-list-like
ext4, or a modern btree btrfs? I think the later might (unportably,
though) display some advantages that sqlite (portably) provides.
gdbm might provide some others. I would find benchmarking of all these
relevant and interesting (and why not of qiantan’s incremental’s store as
well, if he integrates it)
- Re: sqlite3, (continued)
- Re: sqlite3, dick, 2021/12/14
- Re: sqlite3, Eli Zaretskii, 2021/12/14
- Re: sqlite3, Teemu Likonen, 2021/12/14
- Re: sqlite3, Qiantan Hong, 2021/12/14
- Re: sqlite3, Teemu Likonen, 2021/12/14
- Re: sqlite3, Tomas Hlavaty, 2021/12/14
Re: sqlite3,
Alexandre Garreau <=
- Re: sqlite3, Qiantan Hong, 2021/12/14
- Re: sqlite3, Alexandre Garreau, 2021/12/14
- Re: sqlite3, Qiantan Hong, 2021/12/14
- Re: sqlite3, Qiantan Hong, 2021/12/15
- Re: sqlite3, Lars Ingebrigtsen, 2021/12/15
- Re: sqlite3, Alexandre Garreau, 2021/12/16
- Re: sqlite3, Qiantan Hong, 2021/12/16
- Re: sqlite3, Alexandre Garreau, 2021/12/16
Re: sqlite3, Richard Stallman, 2021/12/15
Re: sqlite3, Po Lu, 2021/12/15