AllegroGraph - DBGroup

pityknockInternet και Εφαρμογές Web

2 Φεβ 2013 (πριν από 4 χρόνια και 7 μήνες)

329 εμφανίσεις



AllegroGraph

AllegroGraph is a persistent RDF graph database.

AllegroGraph uses disk
-
based storage, enabling it to scale to billions of triples while maintaining
superior performance. AllegroGraph supports SPARQL, RDFS++, and Prolog reasoning from Java

applications.

AllegroGraph is a database and application framework for building Semantic Web applications. It
can store data and meta
-
data as triples; query these triples through various query APIs like
SPARQL (the proposed standard W3C query language) an
d Prolog; and apply RDFS++ reasoning
with its built
-
in reasoner. If more powerful reasoning is required, AllegroGraph can integrate with
Racer

and its full description logic. Another alternative is to connect A
llegroGraph to the ontology
builder TopBraid Composer and do reasoning with this GUI based tool. AllegroGraph 3.0 provides
a number of new exciting features: Federation, Social Network Analysis, Geospatial capabilities
and Temporal reasoning.

In RDF
-
land,

an assertion is a statement that
subject predicate object (in the context of graph)

The bulk of an AllegroGraph triple
-
store is composed of
assertions
. Though called
triples

for
historical reasons, each assertion has five fields:



subject (s)



predicate

(p)



object (o)



graph (g)



triple
-
id (i)

All of s, p, o, and g are strings of arbitrary size. Of course, it would be very inefficient to store all of
the duplicated strings directly so we associate a special number (called a Unique Part Identifier or
UP
I) with each unique string. The
string dictionary

manages these strings and UPIs and prevents
duplication.

To speed queries, AllegroGraph creates
indices

which contain the assertions plus additional
information.

AllegroGraph can also perform freetext sea
rching in the assertions using its
freetext indices

and
Finally, AllegroGraph keeps track of
deleted triples


Triple
-
data generally comes into AllegroGraph as strings either from pure RDF/XML (see example)
or as the more verbose but simpler N
-
Triple format

(see example). The programmer API also makes
it easy to import data from RDBMSs, CSV or any other custom data format

For many applications, graph databases can be both more flexible and faster than RDBMSs because



You add new predicates without changing
any schema



One
-
to
-
many relations are directly encoded without the indirection of tables



You never think about what to index because
everything

is indexed

AllegroGraph has the ability to encode values directly into its triples (thus bypassing the string
dictionary completely). This allows for both more efficient data retrieval and extremely efficient
range queries. We take advantage of this data representation in the add
-
on libraries for geospatial
reasoning, temporal reasoning and social network analysis
.

AllegroGraph has facilities to bulk load from both
N
-
Triples
, and
RDF/XML

files.
1

You can create
freetext
-
indices while loading triples by specifying which predicates should be indexed.
Additionally, AllegroGraph supports a wide array of
encoded data
-
types

such as numbers, dates,
and geospatial coordinates. Using these data
-
types not only shrinks the size of your triple
-
store
(because the string data need not be saved) but also provides for both super
-
fast range queries and
geospatial queries.

Of course, you can also load triples
into AllegroGraph programmatically. This can be used to
import custom data formats, or to build a triple
-
store incrementally. Triples can be added using
RDF syntax or AllegroGraph's special encoded data
-
types. Programmatically added triples can also
make u
se of the AllegroGraph's triple
-
id to perform super
-
efficient reification.

More detailed information available at
http://www.iterasi.net/openviewer.aspx?sqrlitid=g2phy2
vjr0kvgrnzi67q1a

Architecture of
AllegroGraph

There are various client options when worki
ng with the AllegroGraph Server.

The
AllegroGraph RDFStore Server Edition

includes the Java, Jena and Se
same clients in the
provided download. Additional clients are available below:



Python
-

Now part of the current release of AllegroGraph. View a presentation
here




C#
-

Please contact
sales@franz.com




Ruby
-

Part of the Active RDF project. Here is a
demo
, and a
preliminary tutorial




Lisp

-

Requires the AllegroGraph Lisp Edition, see below


Browser for
AllegroGraph

Gruff
is a
graph
-
based browser for

AllegroGraph

Gruff is a triple
-
store brow
ser that displays visual graphs of subsets of a store's resources and their
links. By selecting particular resources and predicates, you can build a visual graph that displays a
variety of the relationships in a triple
-
store. Gruff can also display tables
of all properties of selected
resources or generate tables with SPARQL queries, and resources in the tables can be added to the
visual graph.

Gruff allows different views:

-

The graph view

-

The table view

-

The query view

-

A Graph of Types of Graphs

-

A Graph of
Parker Posey


Free Downloads



AllegroGraph RDFStore Free Edition

-

The AllegroGraph RDFStore server and multiple
client options: Java, Python, Lisp, Sesame, Jena, Ruby (the Server Edition).



AllegroGraph RDFStore Free Lisp Edition

-

Requires downloading and installing Allegro
Common Lisp Express Edition, instructions are provided.



Gruff

-

A Grapher
-
Based Triple
-
Store Browser for AllegroGraph RDFStore.



TopBraid Composer

-

Integrated Development Environment for Semantic Web applications.



RacerPro

-

OWL Reasoner and Inference Server for the Semantic Web.