Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
refset
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
60 ms
·
481.
▲
by
refset
7y ago
> we switched our production JVM to GraalVM, which opened a new possibility since it comes with GraalJS, a JavaScript engine which aims to compete with today's faster JavaScript engines like V8 and JavaScriptCore on performance. It
482.
▲
by
refset
7y ago
Since stepping into a new role in the world of full-time Clojure earlier this year I have been almost entirely focussed on launching an ambitious new open source graph database that uses Kafka as the "unbundled" transaction log an
483.
▲
by
refset
7y ago
It's the other covering indexes (i.e. AVE, AEV, VAE) that make it interesting because they allow the query engine to perform efficient ad-hoc graph traversals.
484.
▲
by
refset
7y ago
Definitely CP. With Eva and Datomic, transactions are serialised through a single transactor node at a time. The transaction log design is a fundamental design tradeoff that Eva/Datomic/Crux share, which means system throughput is
485.
▲
by
refset
7y ago
I think to be really useful an event sourcing data store needs `as at` support in addition to `as of` (i.e. bitemporality) to cope with retroactive and proactive events and corrections. There are a couple of references for this in the Crux
486.
▲
by
refset
7y ago
Well, Eva overlaps very closely with Datomic so I would recommend taking a look at the FAQ entry I wrote on the Crux/Datomic comparison (with 8 sections covering the major differences!): https://juxt.pro/crux/docs&
487.
▲
by
refset
7y ago
I don't know for sure, but I suspect there is a significant usability difference between an "EAV pattern" and something engineered from the ground up to make EAV practical.
488.
▲
by
refset
7y ago
Interesting, I was fairly confident you were going to write about Datalog and about the flexibility of having such a minimal and evolvable schema :) One of the motivations for Crux was that `as-of` queries still weren't powerful enough
489.
▲
by
refset
7y ago
> time as a first class citizen It's worth noting that time now has two levels of meaning in this context - transaction time and valid time. Disclosure: working on Crux
490.
▲
by
refset
7y ago
To be specific, the picture I am thinking about in particular is described in a slide titled "Local consistency points in the absence of Global Consistency" (from this talk: https://youtu.be/VYOMmwkdSig?t=1817 ), w
491.
▲
by
refset
7y ago
I agree, the Confluent team paint a very clear big picture. You may be interested to take a look at Crux [0], a general purpose document database with bitemporal graph queries, implemented as an ES/CQRS system directly on top of Kafka
492.
▲
by
refset
7y ago
Offering Manager for Crux here - all feedback is very welcome! Another cool thing we haven't highlighted or documented anywhere yet is GraalVM support for the "standalone" deployment mode...which is mostly just for anyone who
493.
▲
by
refset
7y ago
Clojure is very pleasant to work with and is exceptionally useful for rapid development. My colleagues at JUXT certainly would not have been able to build our new bitemporal Datalog database [0] without it! [0] https://juxt.pro&#
494.
▲
Show HN: Crux, an open-source bitemporal Datalog database
(juxt.pro)
18 points
by
refset
7y ago
|
1 comments
495.
▲
by
refset
7y ago
This is really neat - great work! It took me less than 10m to figure out how to copy a Crux tutorial into Nextjournal using the Clojure template: https://nextjournal.com/crux/a-bitemporal-tale The only issue I encounte
496.
▲
by
refset
7y ago
Cool, thanks for the summary! The user-defined indexes sound particularly intriguing. The documentation page alludes to payroll, audit and decision support applications -- have you implemented one or more of those already? I have been compi
497.
▲
by
refset
7y ago
It would be interesting to hear about the use-cases that prompted the creation of Sirix. For example, we were inspired to build Crux[0], another bitemporal document database (although we opted for Datalog rather that XQuery), following our
498.
▲
by
refset
7y ago
"some functionality is lacking before Beam could be used as a critical production data store, including deletion of facts" It sounds like this needs a second central log to enable eviction of sensitive data before it can be seriou
499.
▲
by
refset
7y ago
As the product manager for Crux I must point out that we are not currently optimised for time series queries, as there is no columnar compression in the core bitemporal indexes. It is certainly something we have thought about however. For i
500.
▲
by
refset
7y ago
Take a look at Scuttlebutt [0] which works on very similar principles of authenticated log replication. Also note that Lotus Notes [1] has been doing all this replicated encrypted app platform stuff since the early 90s. I am working on a lo
501.
▲
by
refset
7y ago
For me it was the draw of Datomic and DataScript. Clojure is a neat language, but I feel like how we store, retrieve and transmit data is vastly more important.
502.
▲
by
refset
7y ago
My mind immediately jumps to thinking about branching valid time timelines, but having thought about this a _lot_ over the last few months I think actually all other kinds of timelines can be implemented using valid time + additional indexi
503.
▲
by
refset
7y ago
A huge practical challenge when implementing bitemporality is how to deal with schema migrations efficiently whilst supporting arbitrary time-travel queries. When we were building Crux, which is referenced at the end of the post, we took th
504.
▲
by
refset
7y ago
> Do you store all revisions in one huge LSM- tree indexed by the transactional start- and end-times Specifically, RocksDB uses an LSM tree whilst LMDB uses a B+ tree. You can get a feel for how Crux maintains its indexes here: https:&#
505.
▲
by
refset
8y ago
Isn't that what Pulsar Functions are designed for? https://streaml.io/blog/pulsar-functions This presentation compares the Pulsar Function approach against Kafka's 2PC: https://www.slideshare.net&#
506.
▲
by
refset
8y ago
That conversation is absolutely brilliant and, in combination with the Going Home documentary, is what got me probing deeper into Ram Dass' message: https://www.youtube.com/watch?v=9Ih4Fg6P730
507.
▲
by
refset
8y ago
> I would agree that you could indeed hold it to be an axiom. Challenge accepted, I will play your language game :) > You might believe that it is beneficial for humans to hold this axiom to be true and act accordingly, but this is st
508.
▲
by
refset
8y ago
I think that the statement "all the universe is love" is the ultimate example of a "Darwinian Truth" (I hesitate to reference Jordan Peterson here, but it's another useful definition: https://www.youtube.
509.
▲
by
refset
8y ago
It feels important to emphasise that Ram Dass is not a guru by his own definition: Unity of God, guru, and Self is the higher truth, and if your veil of attachment is very thin, you may be able, like Ramana, to penetrate directly to that e
510.
▲
by
refset
8y ago
Partially homomorphic encryption can be used for vote tallying, see: https://heliosvoting.org/faq (which uses ElGamal)
More ›