Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jgit-dev] Using jGit and database as a backend - it is possible?

On Wed, Feb 4, 2015 at 6:48 AM, Maurizio Vitale <mrz.vtl@xxxxxxxxx> wrote:
Look for things like Git on Cassandra: https://docs.google.com/presentation/d/1xyQwl7LolfuqSpIs0hExFPoKwW8icef8NN06EijLJGI/present?slide=id.i0. You'll find other things by googling for 'git and nosql' (or mercurial, Facebook did some work)
Keep in mind that Shawn Pearce reached the conclusion that a distributed key-value store is not the right solution and moved to a DFS implementation. I suspect this is due to his specific design requirements and would be less true if a complete in-the-cloud development infrastructure was available.

The "design requirement" that Cassandra didn't work for was being able to serve a clone of the Linux repository in time anywhere near a local disk repository. The throughput was too low and the CPU usage too high.

That was in the days before bitmaps, so the relatively high latency during counting objects phase would not be as much of a concern. But throughput and CPU overhead due to so many RPC calls would still be problematic.
 
You can google for his post in some mailing list, I don't have the link.

As for your indexing problem, I think it is better addressed by applying lucene, elasticsearch or similar for indexing all blobs (and maybe all commit descriptions)

On Wed, Feb 4, 2015 at 3:39 AM, Smet, Mateusz <Mateusz.Smet@xxxxxxxx> wrote:

Hello,
I have a question about extending jGit (expecially Repository and ReppositoryBuilder  and few classes more), to create my own implementation of backend, using database (for example with libgit2 library which don’t have good Java bindings). It is possible in effective way (I would like using most of git functionality + something like fast searching for files in all branches)? Do you know about someone, who tried it with success? I don’t know, how much of your API I could use. I read about of porcelain functions – it is like wrapping  git functions and I have to override them with database equivalent, I’m right?
If it possible I have to use git-like structure strictly (data and references tables) or implement git-like columns in my tables, yea?  I’m looking forward for your reply.

Best wishes,
Mateusz


_______________________________________________
jgit-dev mailing list
jgit-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jgit-dev


_______________________________________________
jgit-dev mailing list
jgit-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jgit-dev


Back to the top