Oracle's new cloud service isn't meant for the same crowd as Amazon's AWS, where a developer can whip out a credit card and get started. Rather, it's for Oracle's existing enterprise customers who want to lift and shift existing workloads to the cloud.
That said, OSCS (Oracle Storage Cloud Service) is one of the first Oracle cloud services patterned after Amazon's public cloud, elastic consumption mode. It's also one of the few Oracle services someone can sign up for right now. That compelled us to take a closer look.
Spinning up, loading up
Getting access to OSCS requires time for provisioning, as you might expect with any major cloud service. After creating an Oracle account and purchasing the service -- it took several minutes for the processing to go through -- I had to set up the cloud account and a credential to access it. It took several more minutes for the service to be initialized and to get a service URL endpoint. I also had to select a data center (only Chicago or Ashburn was available for me).
The service wasn't very reliable at first. Several times, the dashboard took more than a minute to load. It sometimes returned only a blank page, and at one point, the services were entirely unavailable for several hours. Mercifully, this cleared up after a day or so.
OSCS abstracts storage into containers -- Amazon S3 buckets, essentially. Files uploaded are replicated across all three nodes in OSCS and are eventually consistent, but sometimes requests to retrieve a newly created container aren't immediately honored. You can also apply simple key-value metadata to objects. No single file can be larger than 5GB, but the user can get around this by chaining together multiple files by way of a manifest.
Container objects can also be made publicly accessible by changing an ACL on the container, but Oracle doesn't provide a CDN to handle large volumes of traffic; customers have to bring their own.
Containers can be either regular or archive containers. The latter, reminiscent of S3's Infrequent Access Storage or Glacier tiers, cost much less than the former but have limitations: no bulk actions, no chained objects, and so on.
OSCS appears to be built on top of OpenStack Swift; at the very least, it uses the same RESTful API as the Swift API. Creating, writing, and accessing objects can be done with simple REST commands, so I was able to use a simple Python script to talk to OSCS. Also available is -- what else? -- a Java library API, essentially a wrapper for the REST API.
The Java library offers one advantage over the REST APIs: It provides encryption for data at rest and in transit, and it allows provisions for encrypting data client-side. Uploading by secure FTP is also supported, and Oracle autocreates an SFTP account with its own credentials.
Cheaper by the dozen
In terms of raw cost, OSCS is somewhat cheaper than Amazon S3. Prices start at 3 cents per gigabyte; Oracle starts at 2.4 cents per gigabyte. Archive storage is also cheaper: 0.1 cent per gigabyte/month, versus S3's 1.25 cents per gigabyte for Infrequent Access or 0.7 cent per gigabyte for Glacier.
Like Amazon, all inbound data with OSCS is free, as is the first gigabyte outbound for the month. Everything after that starts at 12 cents per gigabyte/month and goes down, versus Amazon's 9 cents per gigabyte, and likewise there are fees on the number of requests: 0.5 cents per 1,000 requests for standard storage, versus S3's 1 cent. Delete requests cost nothing on both services.
Oracle also provides an unmetered version of the service. For $30 per terabyte per month, the user can store unlimited numbers of objects, a plan for which Amazon doesn't have a real equivalent.
Amazon isn't banking on price alone to remain competitive, though. Its position as an incumbent and the rich culture of solutions built around it are hard to displace. Plus, cloud services routinely one-down each other with rounds of price cuts on nearly every service they offer, so Oracle's edge in pricing has a time limit. And while Oracle using OpenStack's APIs is a good idea, Amazon counters with well-documented, widely used, and thoroughly understood APIs.
OSCS mainly provides an OpenStack-compatible API for cloud storage used by Oracle customers as they move their apps to Oracle's infrastructure. It's unlikely to steal any of Amazon's thunder, unless Oracle has more in mind than rock-bottom pricing as a draw.