- I'm a little worried about vendor lock in
OpenLink Software (my employer) works very hard to implement open standards and specifications where they exist and are sufficient. We add extensions, and document that we've done so, when necessary -- as with the aggregate and other analytics functions which were not part of SPARQL 1.0, but are part of SPARQL 1.1 and/or will be part of SPARQL 2.0.
If you stick with the published standards, you won't be locked in. If you need the extensions, we think we're not so much locking you in as enabling and empowering you... but your mileage may vary.
- I think it is overkill for my requirements (I want a graph store with half a billion triples)
By all means, consider all the functionality you need when making your decision. But it seems likely to me that you'll be doing more than storing your triples. Queries, reasoning, query optimization, Federated SPARQL (joins against other remote SPARQL endpoints, formerly known as SPARQL-FED), and other functionality may not be so much overkill as simply not-yet-needed.
It's worth noting that Virtuoso can be run in a minimized form (LiteMode=1
) which disables many of the features perceived as "overkill" and makes it much more like an embedded DBMS -- but still hybrid at the core. When Lite mode is on:
- Web services are not initialized, i.e., no web server, DAV, SOAP, POP3, etc.
- replication is stopped
- PL debugging is disabled
- plugins are disabled
- Bonjour/Rendezvous is disabled
- tables relevant to the above are not created
- index tree maps is set to 8 if no other setting is given
- memory reserve is not allocated
- DisableTcpSocket setting is treated as 1, regardless of value in INI file
- I would love to use an open-source and free product instead
Virtuoso has two flavors -- commercial (VCE), and open source (VOS). Commercial includes shared-nothing elastic clustering which brings linear scalability, SPARQL GEO indexing and querying, result transformation to CXML for exploration with PivotViewer, and other features which VOS lacks ... but use the one that makes sense to you.