# Local DynamoDB

# Introduction

DynamoDB Local is a downloadable version of `Amazon DynamoDB` designed for local development and testing environments. It allows developers to build and test applications that interact with DynamoDB without incurring costs or requiring an internet connection.

# Key features and benefits of DynamoDB Local:

-   **Offline Development:**

    Enables development and testing of DynamoDB-dependent applications without an active internet connection.

-   **Cost-Free:**

    Eliminates costs associated with provisioned throughput, data storage, and data transfer typically incurred with the cloud-based DynamoDB service.

-   **API Compatibility:**

    Works with existing DynamoDB API calls, ensuring a smooth transition when deploying to the cloud.

-   **Platform Support:**

    Available for macOS, Linux, and Windows.

-   **Docker Integration:**

    A Docker image is available, simplifying setup and integration into containerized development workflows and CI/CD pipelines.

-   **Local Data Storage:**

    Stores data locally, typically in a SQLite database file, within the development environment.

# How to use DynamoDB Local:

-   **Download:**

    Obtain the DynamoDB Local executable JAR file or use the official Docker image (`amazon/dynamodb-local`).

-   **Run:**

    -   **JAR:** Execute the JAR file using Java, specifying the desired port if different from the default (8000).
    -   **Docker:** Run the Docker image, mapping the default port (8000) or a custom port.

-   **Configure Application:**

    When connecting your application to DynamoDB Local, ensure the DynamoDB client is configured to use the local endpoint, typically `http://localhost:8000`.

Note: DynamoDB Local is intended for development and testing purposes only and is not recommended for production deployments due to its limitations compared to the fully managed cloud service.

# Conclusion

The local DynamoDB is an excellent choice when you need to test functionalities involving DynamoDB in your local development environment.


