English |  Español |  Français |  Italiano |  Português |  Русский |  Shqip

Big Data Dictionary

Amazon SimpleDB

SimpleDB is a commercial Amazon web service (AWS) which is designed for providing structured data storage in the cloud and backed by clusters of Amazonmanaged database servers. It is a highly available and exible non-relational data store that ooads the work of database administration. Storing data in SimpleDB does not require any pre-de fined schema information. Developers simply store and query data items via web services requests and Amazon SimpleDB does the rest. There is no rule that forces every data item (data record) to have the same elds. However, the lack of schema means also that there are no data types as all data values are treated as variable length character data. Hence, the drawbacks of a schema-less data storage also include the lack of automatic integrity checking in the database (no foreign keys) and an increased burden on the application to handle formatting and type conversions. In compatible with the AWS pricing philosophy of pay-as-you-go, SimpleDB has a pricing structure that includes charges for data storage, data transfer, and processor usage. There are no base fees and there are no minimums. 

SimpleDB provides a simple API interface which follows the rules and the principles for both of REST and SOAP protocols where the user sends a message with a request to carry out a speci c operation. The SimpleDB server completes the operations, unless there is an error, and responds with a success code and response data. The response data is an HTTP response packet, which has headers, storing metadata, and some payload, which is in XML format.

The top level abstract element of data storage in SimpleDB is the domain. A domain is roughly analogous to a database table where you can create and  delete domains as needed. There are no design or confi guration options to create a domain. The only parameter you can set is the domain name. All the data stored in a SimpleDB domain takes the form of key-value attribute pairs. Each attribute pair is associated with an item which plays the role of a table row. The attribute name is similar to a database column name. However di fferent items (rows) can contain di fferent attribute names which give you the freedom to store di fferent attributes in some items without changing the layout of other items that do not have the same attributes. This flexibility allows the painless addition of new data fi elds in the very commons situation of schema changing or schema evolution. In addition, it is possible for each attribute to have not just one value (multi-valued attributes) but an array of values. In this case, you just need to do is add another attribute to an item and use the same attribute name but with a di erent value. Each value is automatically indexed as you add it. However, there are no explicit indexes to maintain. Therefore, you have no index maintenance work of any kind to do. On the other side, you do not have any direct control over the created indices. SimpleDB also provides a query language which is similar to the SQL Select statement. Therefore, this query language makes SimpleDB Selects very familiar and with a gentle learning curve for its user. However, it should be noted that the language supports issuing queries only over the scope of a single domain (no joins, multi-domain or sub-select queries).

SimpleDB is implemented with complex replication and failover mechanisms behind the scenes. Therefore, when you use SimpleDB, you get a high availability guarantee with your data replicated to di erent locations automatically. Hence, a user does not need to do any extra e ort or become an expert on high availability or the details of replication techniques to achieve the high availability goal. SimpleDB supports two options of for each user read request: eventual consistency or strong consistency. In general, using the option of a consistent read eliminates the consistency window for the request. The results of a consistent read are guaranteed to return the most up-to-date values. In most cases, a consistent read is no slower than an eventually consistent read. However, it is possible for consistent read requests to show higher latency and lower bandwidth on some occasions (e.g. high workloads). SimpleDB does not o ffer any guarantees about the eventual consistency window but it is frequently less than one second.

There are quite a few limitations which you need, as a user, to consider while using the simpleDB service such as: the maximum storage size per domain is 10GB, the maximum attribute values per domain is 1 billion, the maximum attribute values per item is 256, the maximum length of item name, attribute name, or value is 1024 bytes, the maximum query execution time is 5 seconds, the max query results is 2500 and the maximum query response size is 1MB.

There has been error in communication with Booktype server. Not sure right now where is the problem.

You should refresh this page.