Hi all, I have a need to persist a really large and funny object structure in Pharo (a huge Dictionary of Dictionaries) and I would like to be able to query this data from a remote image. Basically what I am looking for is some form of database that would allow me to input elements in to this structure from one image, and read them out in another image with queries like i.e. dictionaryOfDictionaries select: [ :each | (each keys includes: key1) and: [ each keys includes: key2 ] ] It does not have to be strictly an OO database, anything that could enable me to do this fast and easy would be nice. Any suggestions/ideas/comments? Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑÐµÐ²Ð¸Ñ *Research assistant* Software Composition Group <http://scg.unibe.ch> Institute of Computer Science and Applied Mathematics <http://www.iam.unibe.ch> University of Bern <http://www.unibe.ch> email: spasojev@iam.unibe.ch <mailto:spasojev@iam.unibe.ch> office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic
This seems to be a perfect match for a Mongo DB via MongoTalk: http://smalltalkhub.com/#!/~francois/MongoTalk If you already have an object model, Esteban Lorenzano wrote a nice library on top of it called Voyage that is probably useful for you. You can see some details here: http://smalltalkhub.com/#!/~estebanlm/Voyage http://tulipemoutarde.be/2012/05/24/mongodb-with-voyage-in-pharo.html Doru On Tue, May 28, 2013 at 4:11 PM, Boris SpasojeviÄ <spasojev@iam.unibe.ch>wrote:
Hi all,
I have a need to persist a really large and funny object structure in Pharo (a huge Dictionary of Dictionaries) and I would like to be able to query this data from a remote image.
Basically what I am looking for is some form of database that would allow me to input elements in to this structure from one image, and read them out in another image with queries like i.e.
dictionaryOfDictionaries select: [ :each | (each keys includes: key1) and: [ each keys includes: key2 ] ]
It does not have to be strictly an OO database, anything that could enable me to do this fast and easy would be nice.
Any suggestions/ideas/comments?
Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑевиÑ
*Research assistant* Software Composition Group <http://scg.unibe.ch> Institute of Computer Science and Applied Mathematics<http://www.iam.unibe.ch> University of Bern <http://www.unibe.ch>
email: spasojev@iam.unibe.ch office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic
-- www.tudorgirba.com "Every thing has its own flow"
Boris, What is the class/type of the keys in your example? Are the keys simple objects (String, Number, etc.) or complex (Person, Employee, Customer, Student, Product, etc.). With any remote database the challenge will be populating the result into your local image. How deep/complex is the result? That is, if only one dictionary satisfied your sample query, how many objects would be reached and what would be their classes? How large is the "huge" parent dictionary? Millions? Billions? Do you need the client Pharo image(s) to be remote from the database? What sort of network is between them? Naturally, my inclination would be to investigate GemStone/S, but various factors would influence the decision. James Foster On May 28, 2013, at 7:11 AM, Boris SpasojeviÄ <spasojev@iam.unibe.ch> wrote:
Hi all,
I have a need to persist a really large and funny object structure in Pharo (a huge Dictionary of Dictionaries) and I would like to be able to query this data from a remote image.
Basically what I am looking for is some form of database that would allow me to input elements in to this structure from one image, and read them out in another image with queries like i.e.
dictionaryOfDictionaries select: [ :each | (each keys includes: key1) and: [ each keys includes: key2 ] ] It does not have to be strictly an OO database, anything that could enable me to do this fast and easy would be nice.
Any suggestions/ideas/comments?
Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑевиÑ
Research assistant Software Composition Group Institute of Computer Science and Applied Mathematics University of Bern
email: spasojev@iam.unibe.ch office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic
Boris zdravo, Dne 28. 05. 2013 16:11, piÅ¡e Boris SpasojeviÄ :
I have a need to persist a really large and funny object structure in Pharo (a huge Dictionary of Dictionaries) and I would like to be able to query this data from a remote image.
Basically what I am looking for is some form of database that would allow me to input elements in to this structure from one image, and read them out in another image with queries like i.e.
dictionaryOfDictionaries select: [ :each | (each keys includes: key1) and: [ each keys includes: key2 ] ]
It does not have to be strictly an OO database, anything that could enable me to do this fast and easy would be nice.
Any suggestions/ideas/comments?
MongoDb key-value NoSql database could be appropriate for such a case. And it is well supported from Pharo, it is namely used for SmalltalkHub. Lep pozdrav Janko
Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑевиÑ
*Research assistant* Software Composition Group <http://scg.unibe.ch> Institute of Computer Science and Applied Mathematics <http://www.iam.unibe.ch> University of Bern <http://www.unibe.ch>
email: spasojev@iam.unibe.ch <mailto:spasojev@iam.unibe.ch> office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic
-- Janko Mivšek Aida/Web Smalltalk Web Application Server http://www.aidaweb.si
If you need only queries around big static dictionary image persistence can be sufficient. Just load all data to image, save it and you will have in memory readonly database (without transactions) . 2013/5/28 Boris SpasojeviÄ <spasojev@iam.unibe.ch>
Hi all,
I have a need to persist a really large and funny object structure in Pharo (a huge Dictionary of Dictionaries) and I would like to be able to query this data from a remote image.
Basically what I am looking for is some form of database that would allow me to input elements in to this structure from one image, and read them out in another image with queries like i.e.
dictionaryOfDictionaries select: [ :each | (each keys includes: key1) and: [ each keys includes: key2 ] ]
It does not have to be strictly an OO database, anything that could enable me to do this fast and easy would be nice.
Any suggestions/ideas/comments?
Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑевиÑ
*Research assistant* Software Composition Group <http://scg.unibe.ch> Institute of Computer Science and Applied Mathematics<http://www.iam.unibe.ch> University of Bern <http://www.unibe.ch>
email: spasojev@iam.unibe.ch office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic
Thanks all, I will look in to MongoDB (with and without Voyage) and GemStone, and report problems or lack there of :) all the best, Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑÐµÐ²Ð¸Ñ *Research assistant* Software Composition Group <http://scg.unibe.ch> Institute of Computer Science and Applied Mathematics <http://www.iam.unibe.ch> University of Bern <http://www.unibe.ch> email: spasojev@iam.unibe.ch <mailto:spasojev@iam.unibe.ch> office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic On 28/5/13 4:11 PM, Boris SpasojeviÄ wrote:
Hi all,
I have a need to persist a really large and funny object structure in Pharo (a huge Dictionary of Dictionaries) and I would like to be able to query this data from a remote image.
Basically what I am looking for is some form of database that would allow me to input elements in to this structure from one image, and read them out in another image with queries like i.e.
dictionaryOfDictionaries select: [ :each | (each keys includes: key1) and: [ each keys includes: key2 ] ]
It does not have to be strictly an OO database, anything that could enable me to do this fast and easy would be nice.
Any suggestions/ideas/comments?
Boris SpasojeviÄ - ÐоÑÐ¸Ñ Ð¡Ð¿Ð°ÑоÑевиÑ
*Research assistant* Software Composition Group <http://scg.unibe.ch> Institute of Computer Science and Applied Mathematics <http://www.iam.unibe.ch> University of Bern <http://www.unibe.ch>
email: spasojev@iam.unibe.ch <mailto:spasojev@iam.unibe.ch> office phone: +41 (0)31 511 7636 mobile: +41 (0)76 66 88 175 webpage: http://scg.unibe.ch/staff/Boris-Spasojevic
participants (5)
-
Boris SpasojeviÄ -
Denis Kudriashov -
James Foster -
Janko Mivšek -
Tudor Girba