# Graph Providers

The Graph Writer has support for the writing of RDF data to all Semantic Knowledge Graphs, as well as a wide selection of Property Graphs (with more being continuously added).

## Semantic Graphs

As previously stated, Graph Build and its Writer support writing to all Semantic Knowledge Graph databases. This includes, but is not exclusive to Stardog, GraphDB, BlazeGraph, AllegroGraph, MarkLogic, RDFox, and Amazon Neptune.

### Amazon Neptune

[Amazon Neptune](https://aws.amazon.com/neptune/) is a fast, reliable, fully-managed graph database service that makes it easy to build and run applications that work with highly connected datasets. To import data into your Neptune database you must set your `GRAPH_DATABASE_TYPE` to `neptune``-sparql` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `https://example.xyz123.us-east-1.neptune.amazonaws.com:8182`. This endpoint will be provided to you by AWS when setting up your Neptune instance. Please ensure, that this resides in the same region as the rest of your AWS services.

### RDFox

[RDFox](https://www.oxfordsemantic.tech/product), is the first market-ready high-performance knowledge graph designed from ground up with semantic reasoning in mind. To import data into your RDFox you must set your `GRAPH_DATABASE_TYPE` to `rdfox` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `http://rdfox.example.com:8090/datastores/test/sparql`

### Stardog

[Stardog](https://www.stardog.com/) has an Enterprise Knowledge Graph platform as well as a feature-rich IDE for querying and visualising your data. To import data into your Stardog graph you must set your `GRAPH_DATABASE_TYPE` to `stardog` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `https://stardog.example.com:443/test`.

### GraphDB

[GraphDB](https://www.ontotext.com/products/graphdb/) is an enterprise-ready Semantic Graph Database, compliant with W3C Standards. To import data into your GraphDB graph you must set your `GRAPH_DATABASE_TYPE` to `graphdb` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `https://graphdb.example.com/repositories/test`.

### Blazegraph

[Blazegraph](https://blazegraph.com/) DB is an ultra-high-performance graph database supporting Blueprints and RDF/SPARQL APIs. To import data into your Blazegraph you must set your `GRAPH_DATABASE_TYPE` to `blazegraph` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `https://blazegraph.example.com/blazegraph/namespace/test`.

### AllegroGraph

[AllegroGraph](https://allegrograph.com/) is a modern, high-performance, persistent graph database with efficient memory utilisation. To import data into your AllegroGraph you must leave your `GRAPH_DATABASE_TYPE` to the default `sparql` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `http://allegrograph.example.com:10035/repositories/test`.

### And More...

With support for all Knowledge graphs, your Knowledge Graph of choice may note have been listed. If so, it is recommended to leave the `GRAPH_DATABASE_TYPE` to the default `sparql` and set your `GRAPH_DATABASE_ENDPOINT` to what has been specified in your graph’s user docs. For help and assistance, [contact us](http://data-lens.com/).

## Property Graphs

A Property Graph is a directed, vertex-labelled, edge-labelled multigraph with self-edges, where edges have their own identity. In the Property Graph paradigm, the term node is used to denote a vertex, and relationship to denote an edge. Semantic Graphs and Knowledge graphs differ in their implementation and technologies, therefore importing into this type differs slightly. Fortunately, the Writer makes this as simple as with Semantic Graph, requiring the same process of setting your Graph Database as before. Instead of RDF, the source files for ingesting data into your Property Graph are CSV Nodes and Edges files, these can be produced in the Writer by configuring it to be in Property Graph Mode.

### Neo4j

[Neo4j](https://neo4j.com/) is a Property Graph database management system with native graph storage and processing. To import data into your Neo4j Graph, set your `GRAPH_DATABASE_TYPE` to `neo4j` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `bolt://example.com:7687`, with optionally a table name appended to the URL after a forward slash, e.g. `bolt://example.com:7687/test`. Once imported, using the [Cypher query language](https://neo4j.com/cypher-graph-query-language/), you can query your data using Neo4j’s products and tools.

### Amazon Neptune (Gremlin or Cypher)

As well as SPARQL, Amazon Neptune also support Open Cypher and Gremlin. To import your data in these format, please set your `GRAPH_DATABASE_TYPE` to `neptune-cypher` and `neptune-gremlin` respectively. And your `GRAPH_DATABASE_ENDPOINT` as before.

### Gremlin Tinkerpop Server

[Apache TinkerPop](https://tinkerpop.apache.org/) is a graph computing framework for both graph databases (OLTP) and graph analytic systems (OLAP). To import data into your TinkerPop Graph, set your `GRAPH_DATABASE_TYPE` to `gremlin` and your `GRAPH_DATABASE_ENDPOINT` to the structure of `http://example.com:8182`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.graph.build/EGeX4aTAJLlpg9Hh8kfl/graph-writer/graph-providers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
