Hot answers tagged graph
I think you are making a fairly common mistake here by selecting NoSQL technologies in order to be "future-proof" without understandng the tradeoffs. If in doubt start with PostgreSQL and figure you can always set up a graph db or other NoSQL db on the side as you need it. Also you can do graph traversal in PostgreSQL but keep in mind you are working with ...
The tuples would have to be ordered by from_id, to_id in such a way that when from_id or to_id changes, it would fall under a different grouping. I was thinking of writing this as a Stored Procedure, but I thought of something much more intriguing (I just got the idea from my answering this question Update ranking on table about 3 hours ago) I'll do it in ...
You mean something like SQL Power Architect? The open source version can be found here.
I think a lot of these items are very much on the horizon (or beyond). SPARQL, for instance, is something that I don't see databases incorporating any time soon. The closest I've seen is SDB, an interface that processes SPARQL and sends it off to a standard database. Also, using GPUs as generic processors is still kind of a revolutionary thing. It ...
While not a Graph or RDBMS based solution, let me suggest a NoSQL database. IMO all of your criteria seem like they could be met with a Cassandra/Solr implementation. We use Cassandra at work for storing large amounts of data, and we serve it to various applications with a JBoss service layer. Cassandra integrates right in with the Apache Solr search ...
Take a look at SchemaSpy. It creates quite nice reports and diagrams: http://schemaspy.sourceforge.net/
A useful little protip - Visio is quite widely available within corporate I.T. suites and Visio Pro or higher can be used to reverse engineer and document a database. Visio professional has a database reverse engineering tool that will read a database schema and create E-R models from it. Both PostgreSQL and MySQL support ODBC INFORMATION_SCHEMA tables so ...
MySQL Workbench will do this for MySQL databases.
Well you could use IBM DB2 LUW (Linux,Unix, Windows) Express-C edition. It is free and has community support. It is the same engine/binaries as DB2 Enterprise Edition, it just has certain features "turned off" and has memory and CPU caps, but for what you are describing, it may suit your needs. If you do find you need more memory/CPU you could always ...
I don't see any better hope of answering this, but you can use Neo4J from Erlang... see https://github.com/nerlo/nerlo/wiki/howto-use-neo4j-from-erlang
even that the way to distribute data in graph databases is not that easy as in key-value stores, where the keys are distributed by ranges, there are techniques to distribute a graph. InfiniteGraph (made by Objectivity) for instance is a highly distributed graph database. It uses a P2P technology to increase read and write performance by growing the ...
You could use a graph database, or a plain old relational one: /* set parent_id for child tasks */ create table task ( id serial primary key, parent_id integer null references task(id), subject text not null, body text null, due_at date null ); create table task_role_type( id smallint primary key, name text not null ); insert into ...
Sounds on the surface like a graph database problem. If you're going to be walking the edges between users, neo4j or such like may be the one for you. You might be able to do more generic processing using a document db where every user has an _id of user_id and an array of followers _ids. Perhaps you could output to MongoDb, then use Neo4j for creating ...
Neo4j is a database that sounds a fit for your needs. It is graph based database, there are many drivers for it in many languages and it is built in Java. In this database, you would specify the relationships within each node, rather than creating tables for joins, like in mySQL.
Only top voted, non community-wiki answers of a minimum length are eligible