Close icon

Stream Data, Build Models, Deploy Apps

Wrangle your streaming data, build sophisticated models you can query in real-time and develop applications you never thought possible, faster than you can imagine.

How it Works

Unlock insights from your streaming data

Connect to your streaming
service in minutes

Connect to your streaming infrastructures like Apache Kafka or import data from sources like MySQL, CSV or JSON.

Copy
import mgp
import json
@mgp.transformation
def rating(messages: mgp.Messages) -> mgp.Record(query=str, parameters=mgp.Nullable[mgp.Map]):
   result_queries = []    

   for i in range(messages.total_messages()):
       message = messages.message_at(i)
       movie_dict = json.loads(message.payload().decode('utf8'))
       result_queries.append(
           mgp.Record(
               query=("MERGE (u:User {id: $userId}) "
                      "MERGE (m:Movie {id: $movieId, title: $title}) "
                       "WITH u, m "
                       "UNWIND $genres as genre "
                       "MERGE (m)-[:OF_GENRE]->(:Genre {name: genre}) "
                       "MERGE (u)-[r:RATED {rating: ToFloat($rating), timestamp: $timestamp}]->(m)"),
               parameters={
                   "userId": movie_dict["userId"],
                   "movieId": movie_dict["movie"]["movieId"],
                   "title": movie_dict["movie"]["title"],
                   "genres": movie_dict["movie"]["genres"],
                   "rating": movie_dict["rating"],
                   "timestamp": movie_dict["timestamp"]}))    return result_queries

Transform your streams into
a graph and model your data

Intuitively map complex data problems and enrich your data model by adding attributes and labels to your nodes and relationships, including timestamps, geospatial data types, and many more.

Copy
CALL pagerank.get()
YIELD *
WITH node, rank
WHERE node:Movie
SET node.rank = rank
RETURN node
ORDER BY rank DESC
LIMIT 50;

Run queries, algorithms, & custom procedures using Cypher or Python

Use a standard Cypher interface to query your data and benefit from dozens of built-in graph algorithms available to you.

Visualise and analyse

Memgraph provides a standard Cypher interface to query your data. Cypher is a widely-used and declarative query language that is easy to write, understand and optimize for performance.

Memgraph DB

In-memory database with built-in streaming connectors. Supports on-disk storage when needed. Memgraph directly connects to your streaming infrastructure and reduces the complexity of your data analysis pipelines.

Learn more
Arrow icon

Memgraph Lab

Visualize graphs, execute ad hoc queries, and optimize performance on data stored in Memgraph. Memgraph Lab is a visual user interface that helps you explore and manipulate the data stored in Memgraph.

Learn more
Arrow icon

MAGE

An open-source library that contains graph algorithms in the form of query modules you can use right away with Memgraph.

Learn more
Arrow icon

GQLAlchemy

Query graph data with Python by using GQLAlchemy, an object graph mapper and Memgraph client that integrates into your existing Python infrastructure.

Learn more
Arrow icon
Build & Grow browser

Memgraph Community

The only graph data platform created for analyzing streams. All the tools you need in a single, open-source platform.

download memgraph

Memgraph Cloud

The easiest way to run graph algorithms on streaming data. Hosted and fully-managed service. No admin.

try memgraph cloud