News for hackers. Stuff that matters.
Re:GhostDB – A Fast Distributed Cache by dvirsky on Wednesday July 08, 2020 @11:58PM (#23776805)
Written in Go? I wonder what the GC pressure is going to look like with many small keys. I've written a redis clone in Go a few years ago and the GC pauses when reaching a few GBs of utilization were awful. Granted the Go GC has improved considerably since but it's still going to be noticeable I bet.
Re:GhostDB – A Fast Distributed Cache by jldugger on Thursday July 09, 2020 @02:12AM (#23777429)
> I've written a redis clone in Go a few years ago and the GC pauses when reaching a few GBs of utilization were awful.

Probably managable with a good slab allocator.

Re:GhostDB – A Fast Distributed Cache by dvirsky on Thursday July 09, 2020 @03:16AM (#23777751)
Yeah, I've seen people do that but I've glanced the code, it's certainly not the case here.
Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @06:54AM (#23778815)
We're aware of the issues this could cause and we will be looking into relieving GC pressure
Re:GhostDB – A Fast Distributed Cache by dvirsky on Thursday July 09, 2020 @01:26PM (#23782620)
Great. Good luck. As someone who's worked on the redis codebase, I suggest you take a good look at some of the design decisions and optimizations that project took, e.g. wrt persistence and replication.
Re:GhostDB – A Fast Distributed Cache by mesaframe on Thursday July 09, 2020 @01:22AM (#23777172)
> in-memory, general purpose key-value caching

> GhostDB can provide you with up to a 25x increase in data retrieval speeds when compared to databases such as MongoDB and MySQL.

Isn't it insincere to say your tech is faster than a DBMS which works on a slower hardware.

Re:GhostDB – A Fast Distributed Cache by WJW on Thursday July 09, 2020 @07:00AM (#23778847)
Not associated with the OP, but I don't think so. It really does return your data 25x faster than a disk-based DBMS. The implied reduction in durability from being in-memory is clearly stated up front.
Re:GhostDB – A Fast Distributed Cache by javajosh on Thursday July 09, 2020 @07:10AM (#23778895)
Given that you can configure any DB to use extra RAM as a cache, and many datasets will fit in that cache, if I was a fact checker I'd give the "25x faster" rating at least a "partly false" rating.
Re:GhostDB – A Fast Distributed Cache by mesaframe on Thursday July 09, 2020 @07:14AM (#23778925)
Yeah but it is not something that is cultivated from your effort.
Re:GhostDB – A Fast Distributed Cache by iammru on Wednesday July 08, 2020 @09:00PM (#23775980)
Doesn't Redis already address all of this?
Re:GhostDB – A Fast Distributed Cache by cmckn on Wednesday July 08, 2020 @09:05PM (#23775994)
Yes, probably with superior performance. The clustering model seems to differ, but as far as I can tell, the 'distributed' part of this project isn't really implemented.
Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @07:04AM (#23778870)
Depending on the use case. If this is being used to reduce load on your database, then there are no noticeable differences between performance of GhostDB or redis from the clients end.
Re:GhostDB – A Fast Distributed Cache by totorovirus on Thursday July 09, 2020 @04:27AM (#23778099)
Same question. How is this different from Redis?
Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @07:05AM (#23778872)
Not too different from Redis at the moment, however this is straight out of a university project were we had a tight deadline and had to limit scope considerably but if you check the roadmap on the repo we want to add a lot to it.
Re:GhostDB – A Fast Distributed Cache by boxfire on Thursday July 09, 2020 @12:38AM (#23776984)
How does this compare to Anna, which makes similar claims (and seems to actually deliver), https://github.com/hydro-project/anna (up to date link)
Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @06:55AM (#23778824)
I've never heard of this so I can't say.
Re:GhostDB – A Fast Distributed Cache by trishume on Wednesday July 08, 2020 @10:37PM (#23776447)
“microsecond performance” irks me because you can’t get latencies of a microsecond without very expensive special network cards and APIs which they don’t seem to mention and I doubt they use. So they either mean 10s to hundreds of microseconds or they’re taking the reciprocal of their throughput which would be weird and misleading.

If you’ve made a fast product that’s great! Show us with well-explained benchmarks not the term which sounds best but you can still hand wave as justified, because it’ll make people suspicious.

Re:GhostDB – A Fast Distributed Cache by dallbee on Wednesday July 08, 2020 @11:23PM (#23776654)
Or, perhaps, they're taking the non-networked use case.
Re:GhostDB – A Fast Distributed Cache by 65536 on Wednesday July 08, 2020 @11:58PM (#23776804)
I don’t have a stake in this but the page does say

> delivers microsecond performance at any scale

and then

> a very large hash table that is distributed across multiple machines

So the way that I read it, the network will be involved when they said “at any scale”.

Re:GhostDB – A Fast Distributed Cache by nodesocket on Wednesday July 08, 2020 @08:44PM (#23775877)
Great project. I did not see an explanation on the architecture of a cluster. Is data replicated to all nodes, or is data only stored on a single node (sharded). What happens when a node in the cluster goes down? Does there have to be a consensus (odd number of nodes) for the cluster to be "healthy"?
Re:GhostDB – A Fast Distributed Cache by cmckn on Wednesday July 08, 2020 @08:50PM (#23775922)
> GhostDB provides a very large hash table that is distributed across multiple machines.

Sounds like no replication to me, AKA the memcached model. I can't find how to actually configure a cluster (the `Cluster Configuration` section of the docs doesn't contain anything related to hosts). I also can't find anything client side that would distribute requests to a list of nodes with a consistent hash, for ex. I can't find a client at all, actually.

Still, interesting project, kind of aiming for Redis features and a memcached topology.

Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @07:02AM (#23778862)
The clients are the SDKs. Our docs are getting an update now to better explain how to configure clusters.

The SDKs are in separate repos currently (this is due to how university made us structure the project).

Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @07:00AM (#23778854)
Currently we follow the memcached model so there is no replication however, remember this is straight out of university were we had to limit scope considerably and were on a tight time constraint but we aim to add data replication, consensus etc.
Re:GhostDB – A Fast Distributed Cache by rawoke083600 on Thursday July 09, 2020 @02:40AM (#23777596)
Congrats for getting it out there ! That is more than half the battle. I thing I would like to see also is more Redis-Clones. The redis-parts not the KV parts(lots of options here). I want some alternatives or speed improvements for "Unions" and other set based operations :). PS. GhostDB looks cool !
Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @06:56AM (#23778827)
Adding support for sets is on our roadmap!
Re:GhostDB – A Fast Distributed Cache by Irishsteve on Thursday July 09, 2020 @02:33AM (#23777552)
It’s listed as a college project that they’d like to turn into something generally available for use. Fair play.
Re:GhostDB – A Fast Distributed Cache by forgotmypw17 on Thursday July 09, 2020 @10:03PM (#23787418)
for nojs folk: http://archive.is/U8tTA

OP: fyi, your site fails to load or display anything besides a "loading" spinner which never goes away if js is disabled in browser.

Re:GhostDB – A Fast Distributed Cache by strogonoff on Thursday July 09, 2020 @02:49AM (#23777635)
> at any scale

Would it be feasible to bundle GhostDB with an Electron app, and run it on end-user’s machine?

Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @06:57AM (#23778837)
I don't know much about electron but if it allows you to bundle binaries and execute them then yes!
Re:GhostDB – A Fast Distributed Cache by matt_f on Wednesday July 08, 2020 @11:03PM (#23776555)
Could anyone explain a use case for this? (Distributed KV store)

Genuine question, thanks

Re:GhostDB – A Fast Distributed Cache by mbreese on Wednesday July 08, 2020 @11:47PM (#23776752)
I would imagine instances where you'd use memcached.

Session storage could be one use-case. Another could be caching DB query results for a specified amount of time (1 min, 5 min, etc).

Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @06:58AM (#23778839)
In-memory data lookup

Relational and Non-relational database speedup

Managing spikes in web/mobile apps

Session-store

Token caching

Gaming - Player profiles & leaderboards

Web page caching

Global ID or counter generation

Fast access to any suitable data

Re:GhostDB – A Fast Distributed Cache by AlphaSite on Wednesday July 08, 2020 @10:17PM (#23776365)
Is this similar to geode/gem fire?
Re:GhostDB – A Fast Distributed Cache by GhostDBCache on Thursday July 09, 2020 @07:02AM (#23778864)
I'm not aware of these so I can't say
Re:GhostDB – A Fast Distributed Cache by Neoxy on Thursday July 09, 2020 @06:13AM (#23778609)
Will love to dig deeper