DEV Community

Brian King for Couchbase

Posted on • Originally published at couchbase.com on

Easily Migrate From DynamoDB To Couchbase With CLI And IDE Plugins

Trying Couchbase just got even easier, even if you want to migrate from DynamoDB. You can now import your DynamoDB data and indexes into Couchbase seamlessly. Whether you prefer working directly from the command line or within your favorite IDE, our new offerings – cbmigrate CLI, Couchbase VSCode Extension, and Couchbase JetBrains Plugin – provide flexible, efficient, and easy-to-use solutions for migrating your data.

Tools to help migrate DynamoDB to Couchbase

Our toolkit includes three core components, each tailored to different development environments and user preferences.

CLI Tool (cbmigrate)

For those who prefer the command line, cbmigrate offers a robust and efficient way to migrate from DynamoDB to Couchbase. The cbmigrate tool comes packed with features such as custom key generation (exclusive to the CLI), batch processing, and secure SSL connections.

Key Features

    • Custom key generation : Generate unique keys for your Couchbase documents using static text, field values, and patterns like UUIDs (CLI-exclusive).
    • Secure migration : Supports SSL encryption and client certificate authentication for secure data transfer.
    • Flexibility : Offers detailed command flags to tailor the migration process to your specific needs.

Usage

To begin with the CLI, here’s a basic command template:

sh
cbmigrate dynamodb --dynamodb-table-name DYNAMODB_TABLE_NAME [--aws-profile AWS_PROFILE] [--aws-region AWS_REGION] [--aws-endpoint-url AWS_ENDPOINT_URL] [--aws-no-verify-ssl] [--aws-ca-bundle AWS_CA_BUNDLE] --cb-cluster CB_CLUSTER (--cb-username CB_USERNAME --cb-password CB_PASSWORD | --cb-client-cert CB_CLIENT_CERT [--cb-client-cert-password CB_CLIENT_CERT_PASSWORD] [--cb-client-key CB_CLIENT_KEY] [--cb-client-key-password CB_CLIENT_KEY_PASSWORD]) [--cb-cacert CB_CACERT] [--cb-no-ssl-verify CB_NO_SSL_VERIFY] [--cb-bucket CB_BUCKET] [--cb-scope CB_SCOPE] [--cb-collection CB_COLLECTION] [--cb-batch-size CB_BATCH_SIZE] [--debug] [--cb-generate-key CB_GENERATE_KEY] [--copy-indexes] [--buffer-size BUFFER_SIZE] [--help HELP]
Enter fullscreen mode Exit fullscreen mode

Basic Migration Command

sh
cbmigrate dynamodb --dynamodb-table-name your_table --cb-cluster your_cluster --cb-username your_username --cb-password your_password --cb-bucket your_bucket --cb-scope your_scope --cb-collection your_collection_name --cb-generate-key key::#UUID#
Enter fullscreen mode Exit fullscreen mode

For more information, see the cbmigrate GitHub repository.

Couchbase VSCode Extension

If you’re a fan of coding in VSCode, our Couchbase extension allows you to initiate and manage your database migrations without leaving your IDE.

Key Features

    • Integrated migration : Perform migrations directly within VSCode, streamlining your development workflow.
    • User-friendly interface : Utilize the graphical interface to configure and monitor your data migration processes easily.

Couchbase VSCode extension

For more information, refer to the Couchbase VSCode plugin repository.

JetBrains IDE Plugin

JetBrains users aren’t left out—our plugin for JetBrains IDEs provides a seamless migration experience with the robustness you expect from JetBrains tools.

Key Features

    • Seamless integration : Migrate your DynamoDB data to Couchbase directly within your preferred JetBrains IDE.
    • Efficient workflow : Access all necessary migration functionalities within the familiar JetBrains interface.

Couchbase JetBrains IDE plugin

For more information, see the Couchbase JetBrains plugin repository.

By leveraging these tools, you can ensure a smooth and efficient transition from DynamoDB to Couchbase, regardless of your preferred development environment. Start migrating your data today and take advantage of the powerful features offered by Couchbase.

Next Steps

The post Easily Migrate From DynamoDB To Couchbase With CLI And IDE Plugins appeared first on The Couchbase Blog.

Top comments (0)