1 unstable release
0.1.3 | Jun 21, 2024 |
---|---|
0.1.2 |
|
0.1.1 |
|
0.1.0 |
|
#1614 in Database interfaces
162 downloads per month
19KB
215 lines
Mongo Data Exporter
This is a simple tool to export data from a MongoDB database to another MongoDB database instance. It is fully written in Rust.
Dependencies:
[dependencies]
async-trait = "0.1.80"
mongodb = { version = "2.8.2", features = ["bson-chrono-0_4"] }
tokio = { version = "1.38.0", features = ["rt", "rt-multi-thread", "macros"] }
chrono = "0.4.38"
futures = "0.3.30"
Usage:
use mongo_data_exporter::export;
use mongo_data_exporter::operations::{MongoDBConnection, Operation};
#[tokio::main]
async fn main() {
// Source database connection
let source_db_dr = MongoDBConnection::new("mongodb://localhost:27017/test", "test", "test-collection").await;
// Target database connection
let target_db_dr = MongoDBConnection::new("mongodb://localhost2:27017/test", "test", "test-collection").await;
// Create export operation, you can specify the batch size and the limit data to export
let mut export_dr = export::Export::init(source_db_dr, target_db_dr, 10000, None).await;
// Start the export operation
export_dr.start_export().await;
}
License
This project is licensed under either of the following licenses, at your option:
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
Dependencies
~26–38MB
~690K SLoC