Hi Dave, I fully agree with you.
Thomas 2011/1/5 Dave Cowden <dave.cow...@gmail.com> > Hi, thomas: > > Yes, I had a look at cassandra and the java apis. I think that using > that database or some other one would be fine, but would not be a > substitute for having a repository architected to specifically serve > the needs of this project. I think the repository interface comes > first, then a suitable storage mechanism can be selected. > > In the end I think a server of some kind exposing http methods for > storage and retieval, as well as repository proxying is needed to get > internet scale and commercial adoption > > On 1/5/11, Thomas Paviot <tpav...@gmail.com> wrote: > > Hi Dave, > > > > I tried to ask this question to the cassandra users ml, but unfortunately > I > > can't send any message (the antispam system doesn't like me!). > > > > All I know is that Cassandra uses the TCP Port 7000 for communication > > between nodes, port 9160 for clients (pycassa for instance) and 8080 for > > JMX. > > > > Thomas > > > > 2010/12/30 Cowdens <dave.cow...@gmail.com> > > > >> I have not experimented with it. Though i know little about it, my > main > >> question would be around its replication: does it use http protocols for > >> replication, such that the replication wouldnt have problems getting > >> through > >> firewalls? > >> > >> ------------------------------ > >> *From:* pythonocc-users-boun...@gna.org [mailto: > >> pythonocc-users-boun...@gna.org] *On Behalf Of *Thomas Paviot > >> *Sent:* Thursday, December 30, 2010 7:43 AM > >> *To:* pythonOCC users mailing list. > >> *Subject:* Re: [Pythonocc-users] writing OCC data to a db > >> > >> One more information: there are 2 high level clients for > Cassandra/Thrift > >> : > >> Pycassa (http://github.com/pycassa/pycassa) and Telephus ( > >> http://github.com/driftx/Telephus). > >> > >> > >> 2010/12/30 Thomas Paviot <tpav...@gmail.com> > >> > >>> A few months ago, I had a look to the Apache Cassandra project ( > >>> http://cassandra.apache.org/), contributed by Facebook, and the Thrift > >>> API (http://thrift.apache.org/). It seems to be an interesting way to > >>> design and deploy distributed databases seamlessly accessible from > >>> python. > >>> Do anyone have experimented it? > >>> > >>> 2010/12/29 Dave Cowden <dave.cow...@gmail.com> > >>> > >>> I think that a distributed repository infrastructure is what's needed > >>>> for robust sharing of objects and model data. For sure, such > >>>> repositories would likely be based on a database-- but the repo would > >>>> need to expose crud ( create read update delete) functions via http, > >>>> so it is firwall and internet friendly. > >>>> > >>>> On 12/29/10, jelle feringa <jelleferi...@gmail.com> wrote: > >>>> > Hi, > >>>> > > >>>> > Recently I had enough of storing OCC's cad as files. > >>>> > Sometimes all you need is a database. > >>>> > Turns out that its really easy to do so. Perhaps its worth sharing > how > >>>> this > >>>> > can be done... > >>>> > Though this might be pretty trivial technically speaking, it can > open > >>>> up > >>>> > interesting ways of collaborating on projects. > >>>> > > >>>> > -jelle > >>>> > > >>>> > > >>>> > ================================================ > >>>> > from OCC.Utils.Topology import Topo > >>>> > > >>>> > __author__ = 'jdf' > >>>> > > >>>> > > >>>> > from sqlalchemy import * > >>>> > from sqlalchemy.ext.declarative import declarative_base > >>>> > from sqlalchemy.orm import sessionmaker, scoped_session > >>>> > > >>>> > from OCC.Utils.Construct import make_cube > >>>> > #from OCC.TopoDS import TopoDS_Shape > >>>> > # > >>>> > #TopoDS_Shape.__eq__ = lambda x: TopoDS_Shape.IsEqual(x) > >>>> > > >>>> > cube = make_cube(1,1,1) > >>>> > > >>>> > engine = create_engine('sqlite:///jelle.db') > >>>> > Base = declarative_base(bind=engine) > >>>> > Session = scoped_session(sessionmaker(engine)) > >>>> > > >>>> > def comp_brep(brepA, brepB): > >>>> > import ipdb; ipdb.set_trace() > >>>> > print 'jajajaj',brepB, brepA > >>>> > return brepA.IsEqual(brepB) > >>>> > > >>>> > class Individual(Base): > >>>> > '''used to store data about an individual > >>>> > a row forms a generation > >>>> > ''' > >>>> > __tablename__ = 'individual' > >>>> > > >>>> > id = Column(Integer, primary_key=True) > >>>> > #name = Column(String) > >>>> > #fullname = Column(String) > >>>> > #password = Column(String) > >>>> > generation = Column(Integer) > >>>> > ancestor_a = Column(PickleType()) > >>>> > ancestor_b = Column(PickleType()) > >>>> > brep = Column(PickleType(mutable=False)) #comparator=comp_brep)) > >>>> > #) > >>>> ) > >>>> > fitness = Column(Float) > >>>> > > >>>> > Base.metadata.create_all() > >>>> > > >>>> > > >>>> > indy = Individual() > >>>> > indy.ancestor_a = 'parent_a' > >>>> > indy.fitness = 12. > >>>> > indy.ancestor_b = 'parent_a' > >>>> > indy.generation = 1 > >>>> > #indy.id = 0 > >>>> > indy.brep = cube > >>>> > > >>>> > ''' > >>>> > to INSERT many rows very quickly, use the "executemany" style of > >>>> > insertion: > >>>> > > >>>> > > >>>> > connection.execute(table.insert(), [{'foo':'row1'}, {'foo':'row2'}, > >>>> > {'foo':'row3'}, ...]) > >>>> > ''' > >>>> > > >>>> > s = Session() > >>>> > # s.begin() > >>>> > s.add(indy) > >>>> > s.commit() > >>>> > s.close() > >>>> > > >>>> > print('closed the previous db session\nlet\'s see if we can read > back > >>>> the > >>>> > objects, that be cool...') > >>>> > > >>>> > engine = create_engine('sqlite:///jelle.db', echo=True) > >>>> > Base = declarative_base(bind=engine) > >>>> > Session = scoped_session(sessionmaker(engine)) > >>>> > s = Session() > >>>> > > >>>> > from OCC.BRep import BRep_Tool > >>>> > bt = BRep_Tool().Pnt > >>>> > > >>>> > for indy in s.query(Individual): > >>>> > print indy.id > >>>> > for i in Topo(indy.brep).vertices(): > >>>> > print bt(i).Coord() > >>>> > ================================================ > >>>> > > >>>> > >>>> -- > >>>> Sent from my mobile device > >>>> > >>>> _______________________________________________ > >>>> Pythonocc-users mailing list > >>>> Pythonocc-users@gna.org > >>>> https://mail.gna.org/listinfo/pythonocc-users > >>>> > >>> > >>> > >> > >> _______________________________________________ > >> Pythonocc-users mailing list > >> Pythonocc-users@gna.org > >> https://mail.gna.org/listinfo/pythonocc-users > >> > >> > > > > -- > Sent from my mobile device > > _______________________________________________ > Pythonocc-users mailing list > Pythonocc-users@gna.org > https://mail.gna.org/listinfo/pythonocc-users >
_______________________________________________ Pythonocc-users mailing list Pythonocc-users@gna.org https://mail.gna.org/listinfo/pythonocc-users