• 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

  • 7 Reasons Why Businesses Need Python Web Development Services

  • Quality & On-time Delivery: Key Moto of 9series | Read Our Client Testimonials

  • How to Improve Your Fashion Store Business?

  • Why are Vue.Js Framework & Developer Demand Increased?

  • Tips for Developing an E-Commerce Mobile App & Website

Categories

  • .Net MVC (3)
  • AI Solutions (2)
  • Amazon DynamoDB (1)
  • Android (24)
  • Android App Developers (2)
  • Android app development (7)
  • Angularjs Development (4)
  • Apple (25)
  • Artificial Intelligence (1)
  • Artificial Intelligence Solutions (3)
  • Beacon Technology (4)
  • Best Christmas Offer (2)
  • Blockchain Technology (2)
  • Cloud Service (2)
  • custom mobile app development services (4)
  • Digital Marketing (9)
  • Django (2)
  • Docker (2)
  • E-Learning Technology (2)
  • Ecommerce (1)
  • Events (4)
  • Flutter app development (1)
  • 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)
  • Marketing (5)
  • mean stack development (1)
  • Microsoft (11)
  • Mobile App Design (3)
  • Mobile App Development (44)
  • 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 (1)
  • Python Development (3)
  • Responsive Website Development (9)
  • SaaS App Development (2)
  • Search Engine Optimization (4)
  • Social Media Marketing (2)
  • Software Development Company (2)
  • Technology (43)
  • Testing (11)
  • Top Laravel Development (1)
  • Travel and Hospitality Technology Solution (4)
  • Typescript (1)
  • UI Design Company India (1)
  • UI Design Services (1)
  • UI/UX Design (10)
  • Uncategorized (9)
  • VueJS (3)
  • Web Application Development (8)
  • Website Design (2)
  • Website Development Company (7)

Archives

  • December 2020  (1)
  • November 2020  (2)
  • October 2020  (2)
  • September 2020  (1)
  • August 2020  (3)
  • July 2020  (2)
  • June 2020  (4)
  • May 2020  (3)
  • April 2020  (4)
  • March 2020  (4)
  • February 2020  (3)
  • January 2020  (2)
  • December 2019  (6)
  • November 2019  (1)
  • October 2019  (4)
  • September 2019  (4)
  • August 2019  (5)
  • July 2019  (3)
  • June 2019  (5)
  • May 2019  (2)
  • April 2019  (2)
  • February 2019  (5)
  • January 2019  (2)
  • December 2018  (2)
  • November 2018  (3)
  • October 2018  (6)
  • September 2018  (6)
  • August 2018  (7)
  • July 2018  (5)
  • June 2018  (5)
  • May 2018  (6)
  • April 2018  (8)
  • March 2018  (2)
  • November 2017  (1)
  • October 2017  (1)
  • September 2017  (3)
  • August 2017  (2)
  • July 2017  (3)
  • June 2017  (5)
  • May 2017  (4)
  • April 2017  (6)
  • March 2017  (8)
  • February 2017  (6)
  • January 2017  (4)
  • December 2016  (3)
  • November 2016  (4)
  • October 2016  (2)
  • September 2016  (3)
  • August 2016  (3)
  • July 2016  (2)
  • June 2016  (3)
  • May 2016  (3)
  • April 2016  (2)
  • March 2016  (3)
  • February 2016  (3)
  • January 2016  (4)
  • December 2015  (3)
  • November 2015  (4)
  • October 2015  (4)
  • September 2015  (5)
  • August 2015  (2)
  • July 2015  (2)
  • June 2015  (5)
  • May 2015  (3)
  • March 2015  (3)
  • October 2014  (4)
  • September 2014  (9)
  • August 2014  (4)
  • July 2014  (6)
  • June 2014  (1)
  • May 2014  (3)
  • April 2014  (2)
  • January 2014  (1)