Archive for the ‘Stardog’ Category

Stardog 2.1 Hits Scalability Breakthrough

Thursday, January 23rd, 2014

Stardog 2.1 Hits Scalability Breakthrough

From the post:

The new release (2.1) of Stardog, a leading RDF database, hits new scalability heights with a 50-fold increase over previous versions. Using commodity server hardware at the $10,000 price point, Stardog can manage, query, search, and reason over datasets as large as 50B RDF triples.

The new scalability increases put Stardog into contention for the largest semantic technology, linked data, and other graph data enterprise projects. Stardog’s unique feature set, including reasoning and integrity constraint validation, at large scale means it will increasingly serve as the basis for complex software projects.

A 50-fold increase in performance! That’s impressive!

The post points to Kendall Clark’s blog for the details.

As you may be guessing, better hashing and memory usage were some of the major keys to the speedup.

Stardog 1.1 Release

Thursday, November 15th, 2012

Stardog 1.1 Release

From the webpage:

Stardog is a fast, commercial RDF database: SPARQL for queries; OWL for reasoning; pure Java for the Enterprise.

Stardog 1.1 supports SPARQL 1.1.

I first saw this in a tweet from Kendall Clark.

Stardog Quick Start

Sunday, July 22nd, 2012

After downloading Stardog and a license key, I turned to the “Stardog Quick Start” page at: {install directory}/stardog-1.0.2/docs/manual/quick-start/index.html.

What follows is an annotated version of that page that reports “dumb” and perhaps not so “dumb” mistakes I made to get the server running and the first database loaded. (I have also included what output to expect if you are successful at each step.)

First, tell Stardog where its home directory (where databases and other files will be stored) is:If you’re using some weird Unix shell that doesn’t create environment variables in this way, adjust accordingly. Stardog requires STARDOG_HOME to be defined.

$ export STARDOG_HOME=/data/stardog

I edited my .bashrc file to insert this statement.

Be sure to remember to open another shell so that the variable gets set for that window. (Yes, I forgot the first time around.)

Second, copy the stardog-license-key.binYou’ll get this either with an evaluation copy of Stardog or with a licensed copy. into place:

$ cp stardog-license-key.bin $STARDOG_HOME

Of course stardog-license-key.bin has to be readable by the Stardog process.

Mine defaulted to 664 but it is a good idea to check.

Third, start the Stardog server. By default the server will expose SNARL and HTTP interfaces—on ports 5820 and 5822, respectively.

$ ./stardog-admin server start

If successful, you will see:

Starting Stardog server in background, see /home/patrick/working/stardog-1.0.2/stardog.log for more information.

************************************************************
This copy of Stardog is licensed to Patrick Durusau (patrick@durusau.net), Patrick Durusau
This is a Community license
This license does not expire.
************************************************************

                                                             :;   
                                      ;;                   `;`:   
  `'+',    ::                        `++                    `;:`  
 +###++,  ,#+                        `++                    .     
 ##+.,',  '#+                         ++                     +    
,##      ####++  ####+:   ##,++` .###+++   .####+    ####++++#    
`##+     ####+'  ##+#++   ###++``###'+++  `###'+++  ###`,++,:     
 ####+    ##+        ++.  ##:   ###  `++  ###  `++` ##`  ++:      
  ###++,  ##+        ++,  ##`   ##;  `++  ##:   ++; ##,  ++:      
    ;+++  ##+    ####++,  ##`   ##:  `++  ##:   ++' ;##'#++       
     ;++  ##+   ###  ++,  ##`   ##'  `++  ##;   ++:  ####+        
,.   +++  ##+   ##:  ++,  ##`   ###  `++  ###  .++  '#;           
,####++'  +##++ ###+#+++` ##`   :####+++  `####++'  ;####++`      
`####+;    ##++  ###+,++` ##`    ;###:++   `###+;   `###++++      
                                                    ##   `++      
                                                   .##   ;++      
                                                    #####++`      
                                                     `;;;.        

************************************************************
Stardog server 1.0.2 started on Sun Jul 22 16:54:01 EDT 2012.

SNARL server running on snarl://localhost:5820/
HTTP server running on http://localhost:5822/.
Stardog documentation accessible at http://localhost:5822/docs
SNARL & HTTP servers listening on all interfaces

STARDOG_HOME=/home/patrick/working/stardog-1.0.2 

Fourth, create a database with an input file; use the –server parameter to specify which server:

$ ./stardog-admin create -n myDB -t D -u admin -p admin –server snarl://localhost:5820/ examples/data/University0_0.owl

Gotcha! Would you believe that UniversityO_O.owl has two 0 digits in the name?

Violent disagreement notwithstanding, it is always bad practice to use easily confused letter and digits in files names. Always.

If you are successful you will see:

Bulk loading data to new database.
Data load complete. Loaded 8,521 triples in 00:00:01 @ 8.1K triples/sec.
Successfully created database 'myDB'.

Fifth, optionally, admire the pure RDF bulk loading power…woof!

OK. 😉

Sixth, query the database:

$ ./stardog query -c http://localhost:5822/myDB -q “SELECT DISTINCT ?s WHERE { ?s ?p ?o } LIMIT 10”

If successful, you will see:

Executing Query:

SELECT DISTINCT ?s WHERE { ?s ?p ?o } LIMIT 10

+--------------------------------------------------------+
|                           s                            |
+--------------------------------------------------------+
| http://api.stardog.com                                 |
| http://www.University0.edu                             |
| http://www.Department0.University0.edu                 |
| http://www.Department0.University0.edu/FullProfessor0  |
| http://www.Department0.University0.edu/Course0         |
| http://www.Department0.University0.edu/GraduateCourse0 |
| http://www.Department0.University0.edu/GraduateCourse1 |
| http://www.University84.edu                            |
| http://www.University875.edu                           |
| http://www.University241.edu                           |
+--------------------------------------------------------+

Query returned 10 results in 00:00:00.093

If you happen to make any mistakes, you may want to be aware of:

./stardog-admin drop -n myDB

😉

Your performance will vary but these notes may save you a few minutes and some annoyance in getting Stardog up and running.

Stardog 1.0.2 Released

Saturday, July 21st, 2012

Stardog 1.0.2 Released: NoSQL Graph Database Leading Innovation in Semantic Technologies

From the post:

C&P LLC, the company behind Stardog, today announced the release of Stardog 1.0.2. Stardog is a NoSQL graph database based on W3C semantic web standards: SPARQL, RDF, and OWL. Stardog is a key component in Linked Data-based information integration at Fortune 500 enterprises and governments around the world.

The new release follows closely on last month’s launch of Stardog 1.0. The 1.0.2 release includes Stardog Community, a free version of Stardog for community use in academia, non-profit, and related sectors. Stardog is being used by customers in the areas of government, aerospace, financial, intelligence, defense, and at consumer-oriented startups.

“We are pleased with the technical progress made on Stardog since the 1.0 launch,” said Dr Evren Sirin, CTO, C&P LLC. “Today’s release begins our support for SPARQL 1.1, a crucial standard in enterprise information integration and semantic technologies. It also introduces Stardog Community to a new user base in linked open data, open government data, and related fields.”

I’m not real sure I would want to tie Linked Data or SPARQL to the tail of my product.

Still, there is a fair amount of it and the sheer inertia of government systems will result in more of it and it will always be around as a legacy format. So there isn’t any harm in supporting it, so long as you don’t get tunnel vision from it.