Hi all,
For anyone interested in experimenting with Amazon's SimpleDB and EOF...
I've attached a very simple Java thread I've been using to copy EOs from RDBMS database tables into SimpleDB. Eventually, an ideal solution would be an EOF adaptor for SimpleDB. The attached code, which I manually edited for this e-mail to remove some dependencies (so it might not compile), relies on my own Timer class and Typica which can be found in Google Code:
I have been testing out Amazon's SimpleDB as an off site backup for local database rows that don't change (i.e. history events). This week, Amazon made SimpleDB tinkering even more appealing when they lowered the price to: 1. Free for the first 25 machine hours 2. Free for the first GB of transfer in and out 3. Free for the first GB of storage. Prior to this month, my bills for SimpleDB have been less than $3/month for more than 1 million monthly database transactions.
If you're not familiar with SimpleDB then the simplest analogy between SimpleDB, which is not a RDMS, and a RDBMS is: RDBMS SimpleDB Table Domain Row Item Column Attribute
They key difference between SimpleDB and a RDBMS is that SimpleDB does not have an ER model. Details about SimpleDB can be found here:
In Practice In my environment, it takes about a 400 ms to write an Item to SimpleDB with a dozen Attributes. Your time will vary depending on your upstream bandwidth. Since this network latency is a significant amount of time for a single database transaction, the attached Java class was designed to run in its own thread.
The following code snippet copies all of a table's columns to SimpleDB: EOEnterpriseObject transaction; CopyEOAttributesToSimpleDBThread copyEOToSimpleDBThread = new CopyEOAttributesToSimpleDBThread(transaction, false); copyHitToSimpleDBThread.start();
Your feedback is welcomed, Joe
|