Skip to content

MacHu-GWU/pynamodb_mate-project

Repository files navigation

Documentation Status

image

image

image

image

image

image

image


image

image

image

image

image

image

image

image

Welcome to pynamodb_mate Documentation

📙 Full Documentation is Here

Overview

pynamodb_mate provides advanced best practice using DynamoDB in python. Built on top of pynamodb python library. It maintain the compatibility to major version of pynamodb library. For example pynamodb_mate>=5.0.0,<6.0.0 is compatible to pynamodb>=5.0.0,<6.0.0.

Disclaimer

Even though the author is a Dynamodb Subject Matter Expert from AWS, but this project is NOT an AWS official project, and it is a personal open source project for the Python community.

Features

Click on the link below to see detailed tutorial and examples.

  • Store Large Object in DynamoDB: This feature allows you to store any Python object and arbitrary big data in DynamoDB that can exceed the 400KB limit.
  • Client Side Encryption: This feature allows you to use your own encryption key to encrypt your data before it is sent to the DynamoDB.
  • Compressed Attribute: This feature can automatically compress the data before it is sent to the DynamoDB.
  • AWS DynamoDB Console Url: This feature can print the AWS DynamoDB console url for the table, items. You can use this in you log to quickly jump to the console to debug.

DynamoDB Patterns

pynamodb_mate also provides some commonly used patterns. It is based on the author's experience providing solutions to many customers from different industries. Click on the link below to see detailed tutorial and examples.

  • 🎉 Cache: This feature gives you a "Redis" liked, serverless, Zero-ops, auto-scaling, high performance, pay-as-you-go cache layer based on DynamoDB.
  • 🎉 Status Tracker: This feature gives you the ability to track status of each task, and error-handling, retry, concurrency control out-of-the-box.

Install

pynamodb_mate is released on PyPI, so all you need is:

$ pip install pynamodb_mate

To upgrade to latest version:

$ pip install --upgrade pynamodb_mate

In order to use the following feature, you need to run pip install pynamodb_mate[encrypt] first:

  • pynamodb_mate.EncryptedNumberAttribute
  • pynamodb_mate.EncryptedUnicodeAttribute
  • pynamodb_mate.EncryptedBinaryAttribute
  • pynamodb_mate.EncryptedJsonDictAttribute

Releases

No releases published

Packages

No packages published

Languages