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

Reply via email to