On Tue, Oct 27, 2009 at 2:34 PM, Jim Kass <[email protected]> wrote:
> Paulo,
>
> If you are asking can couch be used for transactional systems, such as
> banking or payment processing...
>
> The database itself doesn't have any transactional locking mechanism.
> However, as all documents are revisions... You could actually add multiple
> documents with a transaction_state field, and then upon completing the
> transaction update the transaction_state field in that document.
>
Thank you.
>
> Because unlike SQL, there are no joins, foreign key restraints or
> cascading, in order to have a transaction that touches many "tables", you
> would need to rethink your data model to incorporate nested data structures
> in single documents.
>
I think I need to learn how to model data in the CouchDB way...
>
> One current deficiency is that you must retrieve documents in order to
> modify a field. However this is easily abtracted in a library or class such
> that you could use a specified view to extract a subset of documents then
> loop through them to update a specified field, then either use bulk function
> or another loop to save the new version.
>
> A function like this in use in psuedocode:
>
> trans = new CouchTransaction("myTransaction")
> trans.start()
> // do stuff
> trans.add(doc,db)
> trans.add(another_doc,another_db)
> If (condition) {
> trans.commit()
> }
> trans.end()
>
> I'm sure others would have better algorithms for what a CouchTransaction
> class might involve, but this is off the top of my head.
>
> HTH,
> Jim
>
> Sent from my iPhone
>
>
> On Oct 27, 2009, at 8:55 AM, Paulo Cassiano <[email protected]> wrote:
>
> I'm totally newbie in CouchDB, but I belive it could be ready for
>> production
>> use. True. I only was thinking about how could I develop some e-commerce
>> app
>> using it as DB server... Did you think about it before?
>>
>> On Tue, Oct 27, 2009 at 1:50 PM, Elf <[email protected]> wrote:
>>
>> Couchdb is ready for production use.
>>>
>>> 2009/10/27 Paulo Cassiano <[email protected]>:
>>>
>>>> OK, infact, that's could be a much bigger question.
>>>>
>>>> But I think I'm not the only guy to think about this... If YOU were
>>>> asked
>>>>
>>> to
>>>
>>>> do this, how did you do?
>>>>
>>>> On Tue, Oct 27, 2009 at 1:07 PM, Matt Goodall <[email protected]
>>>> wrote:
>>>>
>>>> 2009/10/27 Paulo Cassiano <[email protected]>:
>>>>>
>>>>>> Every e-commerce app shows at least one product's picture, along with
>>>>>> descriptions and other useful information. Does CouchDB supports
>>>>>>
>>>>> images -
>>>
>>>> JPEG, GIF and so on - files?
>>>>>>
>>>>>
>>>>> Each CouchDB doc can have multiple attachments, see
>>>>> http://wiki.apache.org/couchdb/HTTP_Document_API#Attachments.
>>>>>
>>>>> I would say a "product" makes an almost perfect CouchDB document. The
>>>>> document itself could contain whatever data the product needed to
>>>>> describe it (description, options, price, bulk prices, etc, etc) and
>>>>> the images of the product would be its attachments.
>>>>>
>>>>>
>>>>>> How could I use CouchDB in an e-commerce app?
>>>>>>
>>>>>
>>>>> That's a much bigger question ;-).
>>>>>
>>>>> - Matt
>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> ----------------
>>> Best regards
>>> Elf
>>> mailto:[email protected]
>>>
>>>