The Complete Guide to Building Cloud Computing Solutions with Amazon SimpleDB Using SimpleDB, any organization can leverage Amazon Web Services (AWS), Amazon’s powerful cloud-based computing platform–and dramatically reduce the cost and resources associated with application infrastructure. Now,
A Developer's Guide to Amazon SimpleDB
✍ Scribed by Mocky Habeeb
- Publisher
- Addison-Wesley Professional
- Year
- 2010
- Tongue
- English
- Leaves
- 289
- Series
- Developer's Library
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
The Complete Guide to Building Cloud Computing Solutions with Amazon SimpleDB
Using SimpleDB, any organization can leverage Amazon Web Services (AWS), Amazon’s powerful cloud-based computing platform–and dramatically reduce the cost and resources associated with application infrastructure. Now, for the first time, there’s a complete developer’s guide to building production solutions with Amazon SimpleDB.
Pioneering SimpleDB developer Mocky Habeeb brings together all the hard-to-find information you need to succeed. Mocky tours the SimpleDB platform and APIs, explains their essential characteristics and tradeoffs, and helps you determine whether your applications are appropriate for SimpleDB. Next, he walks you through all aspects of writing, deploying, querying, optimizing, and securing Amazon SimpleDB applications–from the basics through advanced techniques.
Throughout, Mocky draws on his unsurpassed experience supporting developers on SimpleDB’s official Web forums. He offers practical tips and answers that can’t be found anywhere else, and presents extensive working sample code–from snippets to complete applications.
With A Developer’s Guide to Amazon SimpleDB you will be able to
- Evaluate whether a project is suited for Amazon SimpleDB
- Write SimpleDB applications that take full advantage of SimpleDB’s availability, scalability, and flexibility
- Effectively manage the entire SimpleDB application lifecycle
- Deploy cloud computing applications faster and more easily
- Work with SELECT and bulk data operations
- Fine tune queries to optimize performance
- Integrate SimpleDB security into existing organizational security plans
- Write and enhance runtime SimpleDB clients
- Build complete applications using AJAX and SimpleDB
- Understand low-level issues involved in writing clients and frameworks
- Solve common SimpleDB usage problems and avoid hidden pitfalls
This book will be an indispensable resource for every IT professional evaluating or using SimpleDB to build cloud-computing applications, clients, or frameworks.
✦ Table of Contents
Contents......Page 8
Preface......Page 17
Acknowledgments......Page 19
What SimpleDB Is Not......Page 20
Stored Securely in the Cloud......Page 21
Multi-Valued Attributes......Page 22
High Availability......Page 23
Database Consistency......Page 24
Benefits of Using SimpleDB......Page 25
Higher-Level Framework Functionality......Page 26
Abandoning the Relational Model?......Page 27
A Database Without a Schema......Page 28
Areas Where Relational Databases Struggle......Page 29
Avoiding the SimpleDB Hype......Page 30
Putting the DBA Out of Work......Page 31
Dodging Copies of C.J. Date......Page 32
Storing Large Objects with Amazon S3......Page 33
Windows Azure Platform......Page 34
Apache CouchDB......Page 36
Web Services for Connected Systems......Page 37
Dynamic Data Application......Page 38
Existing AWS Customers......Page 39
Summary......Page 40
Creating an AWS Account......Page 42
Finding a Client for SimpleDB......Page 43
Key Storage......Page 44
Implementing the Base Application......Page 45
Adding Domain Creation......Page 47
Listing Domain Metadata......Page 48
Building a User Authentication Service......Page 50
Representing User Data......Page 51
Fetching User Data with SimpleDBUserService......Page 53
Salting and Encoding Passwords......Page 55
Creating a User Update Tool......Page 56
Summary......Page 58
Selecting a SimpleDB Client......Page 60
Typica Setup in Java......Page 61
C# Library for Amazon SimpleDB Setup......Page 62
SimpleDB Endpoints......Page 64
Common Response Elements......Page 66
CreateDomain......Page 67
CreateDomain Snippet in Java......Page 68
CreateDomain Snippet in PHP......Page 69
ListDomains Response Data......Page 70
ListDomains Snippet in C#......Page 71
ListDomains Snippet in PHP......Page 72
DeleteDomain Response Data......Page 73
DeleteDomain Snippet in PHP......Page 74
DomainMetadata Response Data......Page 75
DomainMetadata Snippet in Java......Page 76
DomainMetadata Snippet in PHP......Page 77
PutAttributes......Page 78
PutAttributes Parameters......Page 79
PutAttributes Response Data......Page 81
PutAttributes Snippet in Java......Page 82
PutAttributes Snippet in C#......Page 83
GetAttributes Parameters......Page 84
GetAttributes Response Data......Page 85
GetAttributes Snippet in Java......Page 86
GetAttributes Snippet in C#......Page 87
GetAttributes Snippet in PHP......Page 88
DeleteAttributes Parameters......Page 89
DeleteAttributes Response Data......Page 90
DeleteAttributes Snippet in C#......Page 91
BatchPutAttributes......Page 92
BatchPutAttributes Parameters......Page 93
BatchPutAttributes Response Data......Page 94
BatchPutAttributes Snippet in Java......Page 95
BatchPutAttributes Snippet in C#......Page 96
BatchPutAttributes Snippet in PHP......Page 97
Select Parameters......Page 98
Select Response Data......Page 99
Select Snippet in Java......Page 100
Select Snippet in C#......Page 102
Select Snippet in PHP......Page 104
Summary......Page 105
Select Syntax......Page 106
Select Quoting Rule for Names......Page 107
Output Selection Clause......Page 108
Select Quoting Rules for Values......Page 109
Sort Clause......Page 110
LIMIT Clause......Page 111
Formatting Attribute Data for Select......Page 112
Integer Formatting......Page 113
Date and Time Formatting......Page 114
Expressions and Predicates......Page 116
Range Operators......Page 117
Prefix Queries with LIKE and NOT LIKE......Page 118
Multi-Valued Attribute Queries......Page 119
Multiple Predicate Queries with the INTERSECTION Operator......Page 120
Query Results with the Same Item Multiple Times......Page 121
Attribute Indexes......Page 122
Composite Attributes......Page 123
Judicious Use of LIKE......Page 124
Skipping Pages with count() and LIMIT......Page 125
Measuring Select Performance......Page 126
Automating Performance Measurements......Page 128
Summary......Page 129
5 Bulk Data Operations......Page 130
Mapping the Import File to SimpleDB Attributes......Page 131
Reporting Import Progress......Page 132
Managing Concurrency......Page 133
Verifying Progress and Completion......Page 134
Backup and Data Export......Page 135
Using Third-Party Backup Services......Page 136
Writing Your Own Backup Tool......Page 137
Summary......Page 138
Availability: The Final Frontier......Page 140
Item-Level Atomicity......Page 142
Looking into the Eventual Consistency Window......Page 143
Implementing a Consistent View......Page 144
Storing Text in S3......Page 147
Storing Overflow in Different Attributes......Page 148
Storing Overflow as a Multi-Valued Attribute......Page 149
Paging to Arbitrary Query Depth......Page 150
Exact Counting Without Locks or Transactions......Page 152
Using One Item Per Count......Page 153
Storing the Count in a Multi-Valued Attribute......Page 155
Designing for Testability......Page 157
Summary......Page 158
Estimating Initial Costs......Page 160
Keeping Tabs on SimpleDB Usage with AWS Usage Reports......Page 161
Creating More Finely Detailed Usage Reports......Page 164
Storage Requirements......Page 165
Understanding the Cost of Slack Space......Page 166
Scalability: Increasing the Load......Page 167
Using Read-Repair to Apply Formatting Changes......Page 169
Using a Batch Process to Apply Updates......Page 171
Summary......Page 172
Managing Access Within the Organization......Page 174
Limiting Amazon Access from AWS Credentials......Page 176
Boosting Security with Multi-Factor Authentication......Page 177
Key Management......Page 178
Secret Key Rotation......Page 179
Storing Clean Data......Page 180
SSL and Data in Transmission......Page 181
Data Storage and Encryption......Page 183
Summary......Page 184
Targeting Moderate Performance in Small Projects......Page 186
Exploiting Advanced Features in Small Projects......Page 187
Accessing SimpleDB from EC2......Page 188
Caching......Page 189
Concurrency......Page 191
Keeping Requests and Responses Small......Page 192
Optimizing GetAttributes......Page 193
Optimizing PutAttributes......Page 197
Optimizing BatchPutAttributes......Page 198
Optimizing Select......Page 199
Multiplexing Queries......Page 200
Working Around Latency......Page 201
Summary......Page 202
Client Design Overview......Page 204
Public Interface......Page 205
Attribute Class......Page 207
Item Class......Page 209
High-Level Design Issues......Page 210
Operation-Specific Considerations......Page 212
Safe Handling of the Secret Key......Page 215
Implementing the Constructor......Page 216
Implementing the Remaining Methods......Page 217
Making Requests......Page 219
Computing the Signature......Page 227
Making the Connections......Page 229
Parsing the Response......Page 233
Summary......Page 235
Convenient Count Methods......Page 236
Custom Metadata and Building a Smarter Client......Page 238
Justifying a Schema for Numeric Data......Page 239
Storing Custom Metadata within SimpleDB......Page 240
Automatically Optimizing for Box Usage Cost......Page 241
The Exponential Cost of Write Operations......Page 242
QueryTimeout: The Most Expensive Way to Get Nothing......Page 244
Put/Get Delete Routing......Page 247
Query Multiplexing......Page 250
Summary......Page 251
Requirements......Page 252
The Data Model......Page 253
Implementing User Authentication......Page 254
Implementing a Task Workspace......Page 257
Implementing a Task Service......Page 260
Adding the Login Servlet......Page 263
Displaying the Tasks......Page 268
Deployment......Page 271
Summary......Page 273
A......Page 274
B......Page 275
C......Page 276
D......Page 278
G......Page 279
J......Page 280
M......Page 281
P......Page 282
Q......Page 283
R......Page 284
S......Page 285
U......Page 287
X......Page 288
📜 SIMILAR VOLUMES
The Complete Guide to Building Cloud Computing Solutions with Amazon SimpleDB Using SimpleDB, any organization can leverage Amazon Web Services (AWS), Amazon s powerful cloud-based computing platform and dramatically reduce the cost and resources associated with application infrastructure. Now, for
<P>Scale your application's database on the cloud using Amazon SimpleDB <ul> <li>Offload the time, effort, and capital associated with architecting and operating a simple, flexible, and scalable web database</li> <li>A complete guide that covers everything from installation to advanced features
This book is a practical real-world tutorial covering everything you need to know about Amazon SimpleDB. You will come across examples in three languages: Java, PHP, and Python. This book is aimed at transforming you from a beginner to an advanced developer. If you are a developer wanting to build s
<span><div><p>Blockchain technology has certainly been hyped over the past few years, but when you strip all of that away, what can actually do with it? This book is a collection of articles that provide an introduction to Ethereum, an open source platform that's based based on blockchain. It enable