migrate
A module that contains procedures describing graphs on a meta-level.
| Trait | Value |
|---|---|
| Module type | util |
| Implementation | Python |
| Parallelism | sequential |
Procedures
mysql()
With the migrate.mysql() procedure you can access MySQL and migrate your data to Memgraph.
The result table is converted into a stream, and the returned rows can be used
to create graph structures. The value of the config parameter must be at least
an empty map. If config_path is passed, every key-value pair from JSON file
will overwrite any values in config file.
Input:
table_or_sql: str➡ Table name or an SQL query. When the table name is specified, the module will migrate all the rows from the table. In the case that a SQL query is provided, the module will migrate the rows returned from the queries.config: mgp.Map➡ Connection configuration parameters (as inmysql.connector.connect).config_path➡ Path to a JSON file containing configuration parameters (as inmysql.connector.connect).params: mgp.Nullable[mgp.Any] (default=None)➡ Optionally, queries can be parameterized. In that case,paramsprovides parameter values.
Output:
row: mgp.Map: The result table as a stream of rows.
Usage:
To inspect a sample of rows, use the following query:
CALL migrate.mysql('example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
RETURN row;
LIMIT 5000;In the case you want to migrate specific results from a SQL query, it is enough to modify the first argument of the query module call, and continue to use the Cypher query language to shape your results:
CALL migrate.mysql('SELECT * FROM example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
WITH row
WHERE row.age >= 30
RETURN row;sql_server()
With the migrate.sql_server() procedure you can access SQL Server and migrate your data
to Memgraph. The result table is converted into a stream, and the returned rows can
be used to create graph structures. The value of the config parameter must be
at least an empty map. If config_path is passed, every key-value pair from
JSON file will overwrite any values in config file.
Input:
table_or_sql: str➡ Table name or an SQL query. When the table name is specified, the module will migrate all the rows from the table. In the case that a SQL query is provided, the module will migrate the rows returned from the queries.config: mgp.Map➡ Connection configuration parameters (as inpyodbc.connect).config_path➡ Path to the JSON file containing configuration parameters (as inpyodbc.connect).params: mgp.Nullable[mgp.Any] (default=None)➡ Optionally, queries can be parameterized. In that case,paramsprovides parameter values.
Output:
row: mgp.Map: The result table as a stream of rows.
Usage:
To inspect the first 5000 rows from a database, use the following query:
CALL migrate.sql_server('example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
RETURN row
LIMIT 5000;In the case you want to migrate specific results from a SQL query, it is enough to modify the first argument of the query module call, and continue to use the Cypher query language to shape your results:
CALL migrate.sql_server('SELECT * FROM example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
WITH row
WHERE row.age >= 30
RETURN row;oracle_db()
With the migrate.oracle_db you can access Oracle DB and migrate your data to Memgraph.
The result table is converted into a stream, and the returned rows can be used to
create graph structures. The value of the config parameter must be at least an
empty map. If config_path is passed, every key-value pair from JSON file will
overwrite any values in config file.
Input:
table_or_sql: str➡ Table name or an SQL query. When the table name is specified, the module will migrate all the rows from the table. In the case that a SQL query is provided, the module will migrate the rows returned from the queries.config: mgp.Map➡ Connection configuration parameters (as inoracledb.connect).config_path➡ Path to the JSON file containing configuration parameters (as inoracledb.connect).params: mgp.Nullable[mgp.Any] (default=None)➡ Optionally, queries may be parameterized. In that case,paramsprovides parameter values.
Output:
row: mgp.Map: The result table as a stream of rows.
Usage:
To inspect the first 5000 rows from a database, use the following query:
CALL migrate.oracle_db('example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
RETURN row
LIMIT 5000;In the case you want to migrate specific results from a SQL query, it is enough to modify the first argument of the query module call, and continue to use the Cypher query language to shape your results:
CALL migrate.oracle_db('SELECT * FROM example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
WITH row
WHERE row.age >= 30
RETURN row;postgresql()
With the migrate.postgresql you can access PostgreSQL and migrate your data to Memgraph.
The result table is converted into a stream, and the returned rows can be used to
create graph structures. The value of the config parameter must be at least an
empty map. If config_path is passed, every key-value pair from JSON file will
overwrite any values in config file.
Input:
table_or_sql: str➡ Table name or an SQL query. When the table name is specified, the module will migrate all the rows from the table. In the case that a SQL query is provided, the module will migrate the rows returned from the queries.config: mgp.Map➡ Connection configuration parameters (as inpsycopg2.connect).config_path➡ Path to the JSON file containing configuration parameters (as inpsycopg2.connect).params: mgp.Nullable[mgp.Any] (default=None)➡ Optionally, queries may be parameterized. In that case,paramsprovides parameter values.
Output:
row: mgp.Map: The result table as a stream of rows.
Usage:
To inspect the first 5000 rows from a database, use the following query:
CALL migrate.postgresql('example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
RETURN row
LIMIT 5000;In the case you want to migrate specific results from a SQL query, it is enough to modify the first argument of the query module call, and continue to use the Cypher query language to shape your results:
CALL migrate.postgresql('SELECT * FROM example_table', {user:'memgraph',
password:'password',
host:'localhost',
database:'demo_db'} )
YIELD row
WITH row
WHERE row.age >= 30
RETURN row;