• Creative Corner
  • Tips
  • Blog
06 August, 2018

DynamoDB – An Overview

9series | 0Comment(s)

Dynamo DB - An Overview | 9series Solutions

Amazon DynamoDB is a nonrelational database that delivers reliable performance at any scale. It’s a fully managed, multi-region, multi-master database that provides consistent single-digit millisecond latency, and offers built-in security, backup and restore, and in-memory caching.

Services:
~
 Automated data duplication over three availability-zones in a sole region.
~ A provisioned-throughput model where you can easily adjust the read and write units at any given time formed on the authentic application usage.
~ Data can be backed up to S3.
~ Pay-per-use model – you only pay for what you use, you don’t have to pay for any hardware or service that you haven’t used.
~ With the help of Amazon’s IAM Service you can apply security and access control.

Database Structure
In DynamoDB, all the tables, items, and attributes are the main elements that you actually work with. A table is generally a group of items, and each item is a group of attributes. DynamoDB uses the main keys to remarkably recognize each item in the table and alternate indexes to support more querying flexibility.

The basic DynamoDB components:
~ Tables
~ Items
~ Attributes

  • Tables
    Like other database systems, DynamoDB stores the data in tables. A table is a group of data. For example, see the example table called People that you could use to store personal contact information about friends, family, or anyone else of interest. You could also have a Cars table to store information about vehicles that people drive.
  • Items
    Each table consists of zero or more items. An item is a collection of attributes that is remarkably recognized among the other items. In a People table, each item represents a person. For a Cars table, each item depicts a vehicle. Items in DynamoDB are alike in numerous ways to the rows, records, or tuples in other database systems. In DynamoDB, there is no limit to the number of items you can store in a table.
  • Attributes
    Each item is composed of one or more attributes. An attribute is a fundamental data element, that does not have to be broken any further. For example, an item in a People table contains elements called PersonID, LastName, FirstName, and so on. In the Department table, the item may have some attributes like DepartmentID, Name, Manager, and so on. Attributes in DynamoDB are similar in many ways to fields or columns in other database systems.

Index
Items are accessed using their primary key, but you can also use indexes. Indexes give a substitute (and performant) way of retrieving the data. Each index has its own main key and this key is used when they perform index lookups.

DynamoDB supports 2 types of index
1. Local secondary index
2. Global secondary index

  • Local secondary index:
    An index that uses the table’s Hash Key, but can use an alternate range key. Using these indexes consumes throughput capacity from the table.
  • Global secondary index:
    An index that uses a Hash and Range Key that can be different from the table’s. These indexes have their own throughput capacity, separate from the table’s.

A global secondary indexes is called global because it applies to the entire table, and secondary because the first real index is the primary hash key. In contrast, local secondary indexes are said to be local to a specific hash key. In that case you could have multiple items with the same hash key, but different range keys, and you could access those items using only the hash key.

Operations supports 
Query level: create, update, delete, list, describe
Item/attribute level: add, update, delete
Query: query a table with hash key and range key. Result limit 1 MB
Scan: reads all items from table
Support pagination

Supported Languages
~ Java
~ JavaScript
~ Swift
~ Node.js
~ .NET
~ PHP
~ Python

  • Widely used:
    DynamoDB has gained its popularity in the gaming industry and IoT industry. If you’re already making use of the AWS stack and need a NoSQL database system, then DynamoDB is a sure thing. Remember that you can’t have fixed data structures like that with MongoDB.
  • Amazon DynamoDB data types:
    Scalar – Number, String, Binary, Boolean, and Null.
    Multi-valued – String Set, Number Set, and Binary Set.
    Document – List and Map.
  • Amazon DynamoDB partitions:
    In DynamoDB, data is separated automatically by its hash key. Hence, you will need to select a hash key if you’re applying a GSI. The partitioning reasoning depends entirely on two things: table size and throughput.Dynamo DB - An Overview | 9series

Moving Forward
Amazon DynamoDB has gained a lot of popularity in gaming & IoT industry. We have experienced developers who provide you the best Amazon Web Services. If you have a project and need our help then you can get in touch with our team.

Sources:
https://aws.amazon.com/dynamodb/
https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSI.html

Recent Posts

  • Revolutionary ChatGPT

  • Fascinating Flutter

  • Handpicked Top Laravel 10 Features

  • Why to Choose Kotlin in 2023 to Build Mobile Apps Faster?

  • A Brief Guide about Docker for Developer in 2023

Categories

  • .Net MVC (3)
  • AI Solutions (2)
  • Amazon DynamoDB (1)
  • Android (25)
  • Android App Developers (3)
  • Android app development (8)
  • Angularjs Development (4)
  • Apple (25)
  • Artificial Intelligence (2)
  • Artificial Intelligence Solutions (3)
  • Beacon Technology (4)
  • Best Christmas Offer (2)
  • Blockchain Technology (2)
  • ChatGPT (1)
  • Cloud Service (3)
  • Clutch (1)
  • Collaboration (1)
  • custom mobile app development services (4)
  • DevOps (2)
  • Digital Marketing (9)
  • Django (2)
  • Docker (12)
  • E-Learning Technology (3)
  • Ecommerce (1)
  • Events (4)
  • Flutter app development (3)
  • GDPR (1)
  • Google I/O (1)
  • Graphic Design (12)
  • html5 developers (2)
  • Human Resource (5)
  • Infographics (33)
  • iOS (21)
  • Laravel Development (2)
  • machine development companies in India (1)
  • Machine Learning (4)
  • machine learning development services (1)
  • Marketing (9)
  • mean stack development (1)
  • Microsoft (11)
  • Mobile App Design (3)
  • Mobile App Development (53)
  • Moodle Development (1)
  • next-generation technology (6)
  • Node.js (2)
  • Online Marketing (1)
  • Open Source (11)
  • open source Javascript framework (1)
  • Opening Ceremony (1)
  • Python (3)
  • Python Development (4)
  • Responsive Website Development (9)
  • SaaS App Development (2)
  • Search Engine Optimization (4)
  • Social Media Marketing (2)
  • Software Development Company (2)
  • Technology (44)
  • Testing (11)
  • Top Laravel Development (2)
  • Travel and Hospitality Technology Solution (4)
  • Typescript (1)
  • UI Design Company India (1)
  • UI Design Services (1)
  • UI/UX Design (10)
  • Uncategorized (11)
  • VueJS (3)
  • Web Application Development (9)
  • Website Design (2)
  • Website Development Company (8)

Archives