Copyright © 2010 Caringo, Inc.
All rights reserved
iii
Version 5.0
December 2010
Table of Contents
1. Introduction to DX Storage Objects
.......................................................................................
1
1.1. Introducing Named Objects
.......................................................................................
1
1.2. Summary of Named Objects and Unnamed Objects
....................................................
2
1.3. Common Named Object Terminology
.........................................................................
2
1.4. About DX Storage Object Types
................................................................................
3
1.5. Bucket and Object Naming Rules
..............................................................................
3
1.6. Simple Examples of Creating Buckets and Named Objects
..........................................
3
1.7. Universal Resource Identifiers (URIs)
.........................................................................
4
1.8. About Objects and Security
.......................................................................................
5
1.8.1. The Basics of DX Storage Security
.................................................................
5
1.8.2. Commonly Used Security Terminology
............................................................
6
1.8.3. Basic Security Guidelines
...............................................................................
6
1.9. Concepts for Unnamed Objects
.................................................................................
6
1.9.1. Universally Unique Identifiers (UUIDs)
.............................................................
6
1.9.2. About Immutable Objects
................................................................................
7
1.9.3. About Anchor Streams
...................................................................................
7
1.10. Document Typographical Conventions
......................................................................
8
2. Connecting to a DX Storage Cluster
.....................................................................................
9
2.1. About the Primary Access Node (PAN)
......................................................................
9
2.2. Requirements for Node Accessibility
..........................................................................
9
2.2.1. Using the DX Storage Software Development Kit (SDK)
....................................
9
2.2.2. Using Multicast-DNS (mDNS)
........................................................................
10
2.2.3. Using DNS Round Robin
..............................................................................
10
2.2.4. Using a Pool of Static IP Addresses
..............................................................
11
2.2.5. Using a Single Static IP Address
...................................................................
11
3. Application Best Practices
..................................................................................................
12
3.1. Using the Software Development Kit (SDK)
..............................................................
12
3.2. Dynamically Locating DX Storage Nodes
..................................................................
12
3.3. Optimizing Bucket and Domain Operations
...............................................................
12
3.4. Using HTTP Client Libraries
....................................................................................
12
3.5. Handling Redirects
..................................................................................................
13
3.6. Using Range Headers
.............................................................................................
13
3.7. Multi-Threading
.......................................................................................................
14
3.8. Using Persistent Connections
.................................................................................
14
4. Introduction to the Simple Content Storage Protocol (SCSP)
................................................
15
4.1. Mapping SCSP Operations to HTTP Methods
...........................................................
15
4.2. HTTP Overview
......................................................................................................
16
4.3. Requests and Responses
........................................................................................
16
4.3.1. HTTP Response Codes
................................................................................
16
4.3.2. Redirect Responses
.....................................................................................
17
4.4. Formatting SCSP Commands for Named and Unnamed Objects
................................
17
4.5. Undefined Responses from DX Storage
...................................................................
18
4.6. Normal Response Headers
......................................................................................
19
5. SCSP READ
.....................................................................................................................
22
5.1. Introduction to READ
..............................................................................................
22
5.1.1. Reading With Content Validation
...................................................................
22
5.1.2. Requestion Node Status and Cluster Capacity
...............................................
22
5.2. Unnamed Object READ Details
...............................................................................
23
5.3. Normal Responses to READ
...................................................................................
23
5.3.1. Normal READ Responses for Named Objects
................................................
23
5.3.2. Normal READ Response for Unnamed Objects
..............................................
24