Metadata-Version: 2.1
Name: mongo2arango
Version: 0.2.2
Summary: A tool to migrate data from MongoDB to ArangoDB.
License: MIT
Keywords: mongodb,arangodb,migration
Author: tadeasf
Author-email: taddy.fort@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: arango-orm (>=0.7.2,<0.8.0)
Requires-Dist: click (>=8.1.6,<9.0.0)
Requires-Dist: ijson (>=3.2.3,<4.0.0)
Requires-Dist: pymongo (>=4.4.1,<5.0.0)
Requires-Dist: python-arango (==7.1.0)
Requires-Dist: python-dotenv (>=1.0.0,<2.0.0)
Requires-Dist: simplejson (>=3.19.1,<4.0.0)
Requires-Dist: six (>=1.16.0,<2.0.0)
Requires-Dist: tqdm (>=4.66.1,<5.0.0)
Description-Content-Type: text/markdown

<!-- @format -->

# mongo2arango

mongo2arango is a CLI tool designed to facilitate the migration of data from
MongoDB to ArangoDB. It provides an efficient and user-friendly way to transfer
your data between these two databases.

## Why mongo2arango?

    Seamless Migration: Easily migrate your data from MongoDB to ArangoDB without the hassle.
    Multi-threading Support: Optimize the migration process with multi-threaded data processing.
    Real-time Progress Tracking: Stay informed with a real-time progress bar during the migration.

## Prerequisites

    Ensure you have exported your MongoDB data using mongoexport. Note: Declarative types from Studio 3T export will not work with this tool. We require standard .json data.

## Why simplejson and ijson?

    simplejson: We use simplejson for its speed in encoding and decoding JSON data. It's especially beneficial when dealing with large datasets, ensuring the migration process is as fast as possible.

    ijson: ijson is utilized for its ability to parse large JSON files iteratively, without loading the entire file into memory. This means even if you have a massive MongoDB export, mongo2arango can handle it without consuming all of your system's memory.

## How to Use

Installation:

    ``` bash
    pip install mongo2arango
    ```

Setting Up ArangoDB Credentials: Before migrating data, you need to set up your
ArangoDB credentials. Run:

    ``` bash
    mongo2arango login
    ```

You will be prompted to enter your ArangoDB host, user, and password. These
credentials will be stored securely for future migrations.

Migrating Data: To migrate data, use the migrate command. You can specify
options like the target database, collection, input JSON file, and more. For
example:

    ``` bash
    mongo2arango migrate --db mydatabase --col mycollection --input /path/to/exported_data.json
    ```

If you don't specify the options, the tool will prompt you for the necessary
information.

Feel free to modify or expand upon this draft to better suit your needs.

