How can I access Amazon DynamoDB via Python?

27,628

Solution 1

You can use boto3: https://github.com/boto/boto3

docs: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/dynamodb.html

api reference: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb.html

Solution 2

Another alternative is PynamoDB. PynamoDB provides an ORM like interface to DynamoDB and supports both Python 2 and Python 3. The entire DynamoDB API is supported by PynamoDB - including global and local secondary indexes, batch operations, binary attributes, queries, scans, etc.

Disclaimer: I wrote PynamoDB.

Solution 3

Disclaimer: I'm the current maintainer

You can use Dynamodb-mapper Python library. It's a simple/tiny abstraction layer that allows you to map plain Python object to DynamoDB. It also features a transaction engine.

For advanced tasks such as table management it is still better to directly use Boto (which we rely on, anyway).

Solution 4

This question has been years so I believe your problem was already resolved. Just want to mention that you could use boto3 to access DynamoDB as well nowadays.

Solution 5

I'm the author of Lucid-Dynamodb, a minimalist wrapper to AWS DynamoDB. It covers all the Dynamodb operations.

Reference: https://github.com/dineshsonachalam/Lucid-Dynamodb

Share:
27,628
Lostsoul
Author by

Lostsoul

Never stopped being a student.

Updated on May 31, 2021

Comments

  • Lostsoul
    Lostsoul almost 3 years

    I'm currently using hbase with my Python apps and wanted to try out Amazon DynamoDB. Is there a way to use Python to read, write and query data?

  • Agustín Lado
    Agustín Lado over 5 years
    As of the time of this comment DAX isn't supported by PynamoDB. Hopefully the pull requests that adds support for it will be added at some point, but right now I'm having to use boto3 and make all the queries by hand with amazon-dax-client.
  • ᴊᴇsᴘᴇʀᴋ.ᴇᴛʜ
    ᴊᴇsᴘᴇʀᴋ.ᴇᴛʜ almost 4 years
    Wow - PynamoDB is awesome!