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 > >
_______________________________________________ Pythonocc-users mailing list Pythonocc-users@gna.org https://mail.gna.org/listinfo/pythonocc-users