# Neo4j vs MySQL - Data streaming with Python

**URL:** <https://community.neo4j.com/t/neo4j-vs-mysql-data-streaming-with-python/38776>\
**Category:** Projects & Collaboration\
**Tags:** mysql, py2neo, cluster, data-integration\
**Created:** [May 24, 2021, 1:58pm UTC](https://community.neo4j.com/t/neo4j-vs-mysql-data-streaming-with-python/38776 "2021-05-24T13:58:08Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![thanhquancp23](https://sea1.discourse-cdn.com/flex021/user_avatar/community.neo4j.com/thanhquancp23/32/18366_2.png) [@thanhquancp23](https://community.neo4j.com/u/thanhquancp23)\
**Post date:** [May 24, 2021, 1:58pm UTC](https://community.neo4j.com/t/neo4j-vs-mysql-data-streaming-with-python/38776/1 "2021-05-24T13:58:09Z")

</div>

As the first project in the Neo4j is streaming data from MySQL to the graph in real-time as soon as possible. The solution that I decided to implement the project is using Python libraries including PyMySQL Replication and PyNeo.

 ![pyNeo](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/5/7/571283e40612456dc616556605dd9820579763a7.png)

1. PyMySQL Replication is to stream the binlog data from the MySQL master then do some normalized data before loading it into the DTO models via the PyNeo library.
2. PyNeo is to convert the DTO model into the Graph models by the cypher query integration.
3. Setting up Neo4j Clustering with Docker
4. Setting up Neo4j Monitoring

 ![graNeo](https://us1.discourse-cdn.com/flex021/uploads/neo4jcommunity/original/3X/d/9/d9415db239f57d0a50c6a8a425e10f26b18588fa.png)

To be continued in detail ...  
Thanks to those who care.
