Naming Rules
following are the rules
- Names must be encoded using UTF-8, and are case-sensitive.
- Table names and index names must be between 3 and 255 characters long, and can contain only: alphanumeric characters, underscore, dash, and dot
- These characters have special meaning in DynamoDB: # (hash) and : (colon)
Data Types
Data types for attributes can be categorized as follows
- Scalar Types: can represent exactly one value. The scalar types are number, string, binary, Boolean, and null.
- Document Types: can represent a complex structure with nested attributes. The document types are list and map.
- Set Types: can represent multiple scalar values. The set types are string set, number set, and binary set.
// While creating a table or a secondary index, you must specify the
names and data types of each primary key attribute (partition key and
sort key). Furthermore, each primary key attribute must be defined as
type string, number, or binary.
// DynamoDB is a NoSQL database and is schemaless ie other than the primary key attributes, you don't have to define any attributes or data types when you create tables.
// All numbers are sent across the network to DynamoDB as strings, to maximize compatibility across languages and libraries. However, DynamoDB treats them as number type attributes for mathematical operations.
// If number precision is important, you should pass numbers to DynamoDB using strings that you convert from the number type.
// DynamoDB collates and compares strings using the bytes of the underlying UTF-8 string encoding.
// A list is similar to a JSON array. There are no restrictions on the data types that can be stored in a list element, and the elements in a list element do not have to be of the same type.
// A map is similar to a JSON object. There are no restrictions on the data types that can be stored in a map element, and the elements in a map do not have to be of the same type.
// Each value within a set must be unique. The order of the values within a set is not preserved.
// DynamoDB is a NoSQL database and is schemaless ie other than the primary key attributes, you don't have to define any attributes or data types when you create tables.
// All numbers are sent across the network to DynamoDB as strings, to maximize compatibility across languages and libraries. However, DynamoDB treats them as number type attributes for mathematical operations.
// If number precision is important, you should pass numbers to DynamoDB using strings that you convert from the number type.
// DynamoDB collates and compares strings using the bytes of the underlying UTF-8 string encoding.
// A list is similar to a JSON array. There are no restrictions on the data types that can be stored in a list element, and the elements in a list element do not have to be of the same type.
// A map is similar to a JSON object. There are no restrictions on the data types that can be stored in a map element, and the elements in a map do not have to be of the same type.
// Each value within a set must be unique. The order of the values within a set is not preserved.