laurent.laffont at gmail.com
Thu Feb 18 16:59:03 EST 2010
Thank you very much Mariano.
Now I can choose because Pharo is still a hobby for me ;) I've started
learning Magma, it's fun, so easy ....
2010/2/18 Mariano Martinez Peck <marianopeck at gmail.com>
> Hi Laurent.
> I agree with you. From my point of view, there are a lot of persistence
> strategies and possibilities. But the problem I faced most of the time is
> that you are not able to choose. It is not common you can choose the
> database and even more the database. At least in real business or company
> applications. Thee are a LOT of reason, logical and not logical. If you want
> I can share with you the reasons I found so far.
> If you can choose, I would probably use a OO database. Magma or GLASS are
> the better solutions for me. There is also GOODS but I heard bad comments
> from a friends that are using it at their work.
> Then you have all those "non traditional" databases like Toyko, CouchDB,
> MongoDB, etc. You can give them a try.
> You have also serializers like SIXX, ImageSegments, SmartRefStream, save in
> the image, etc. This can be a solution for very limited for my opinion
> (small apps). However, they are very useful when starting a project or even
> for prototyping.
> Finally, you may HAVE or you want to use relational database. First, which
> database? most of the time, you cannot choose. For Pharo, there seems to be
> native drivers for PostgreSQL and MySQL. The first one is working on Pharo.
> The second one I don't know. SQLite driver I think it is not native (maybe I
> am wrong...). We did SqueakDBX where you can talk with Oracle, MSSQL, MySQL,
> PostgreSQL, Sqlite3, Firebird (only windows) and ODBC in all OS (Linux, Mac
> Os and Windows).
> After the "driver layer" then you have Glorp and SqueakSave mostly. Glorp
> is much powerful and complete. But, the Pharo/Squeak version is quite old as
> Glorp is developed in VW. The "problem" with Glorp is that you have to write
> all the queries by hand. If you want to use other that PostgreSQL with Glorp
> in Pharo then you need to install GlorpDBX. You can SandstoneDB if you want
> and then you also have Glorp-ActiveRecord, but only VW (as it is new, it is
> not ported to squeak or pharo). In those approaches, the time of developing
> is less as you don't have to write all the mappings.
> Finally, with SqueakSave you can automatically persist. It takes care of
> writing everything. You don't need to write the mappings. Of course, you
> need to follow certain conventions in the names. SqueakSave supports MySQL
> and PostgreSQL only althought they wanted to interface with SqueakDBX to
> support all databases. I don't know neither if it works on Pharo. Of
> course, it seems to be a less slower than Glorp as the queries are not the
> If I were you, for the screencast, I would really like to see the following
> scenario: you have a domain model and then you persists:
> 1) Image based / serializers (sixx, ImageSegments, SmartRefStream, etc)
> 2) OO database -> magma or GLASS
> 3) Relational database -> Glorp, SqueakSave, etc
> Each item can be a different post and for each item you show the advantages
> or disadvantages and of course, in each item, the domain model is the same.
> Of course this may require a lot of time and effort :)
> Uffff now I realized this is almost the same Torsted said. Sorry.
> 2010/2/17 laurent laffont <laurent.laffont at gmail.com>
>> I would like to learn on Pharo + databases. I've seen there's several
>> solutions in both object and relational databases.
>> - Which (open source) object database should I start with (most used) ?
>> - Which object database can be accessed from Smalltalk AND Ruby or Python
>> ? How ?
>> - I want to try MySQL too.
>> Is there up to date small applications on squeaksource which show this
>> stuff quite well ?
>> Thanks for help !
>> Laurent Laffont
>> Pharo-project mailing list
>> Pharo-project at lists.gforge.inria.fr
> Pharo-project mailing list
> Pharo-project at lists.gforge.inria.fr
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Pharo-dev