You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cayenne.apache.org by Malcolm Edgar <me...@apache.org> on 2012/08/14 14:00:10 UTC
NuoDB Cayenne Adaptor
Hi All,
I am interested in developing a Cayenne Adaptor for the NuoDB database
https://www.nuodb.com/
Its a very interesting database technology for developing scale out / high
availability solutions. The stuff that relational databases struggle with.
Presumably to get started I would need to create a NuoDBAdaptor extending *
org.apache.cayenne.dba.JdbcAdapter*. Is this the best place to start, does
anyone have any recommendations, or would like to be involved ?
regards Malcolm Edgar
Re: NuoDB Cayenne Adaptor
Posted by Malcolm Edgar <ma...@gmail.com>.
Hi Tore,
Thanks for that. I have started and it doesn't look to bad so far. The
Cayenne build system is pretty wild however, there is a lot of stuff in
there.
I wrote a simple persistence framework of DynamoDB recently, happy to share
if you are interested. I loved the database as a service concept.
regards
On Thu, Aug 16, 2012 at 11:13 PM, Tore Halset <ha...@pvv.ntnu.no> wrote:
> Hello.
>
> I did some work on a AWS SimpleDB adapter once using a jdbc driver made by
> someone else than AWS. No, DynamoDB is the cool thing and I got bored.
>
> Start with the jdbc driver, a plain NuoDBAdaptor and the cayenne junit
> tests[1]. Cayenne uses lots of jdbc metadata that some of the less mature
> jdbc drivers lack full support of, so my guess is that you will have to
> work on that first.
>
> Good luck and keep us up to date! :)
>
> Btw, anyone done something similar with OrientDB or Cassandra (CQL)?
>
> Regards,
> Tore Halset.
> [1] http://cayenne.apache.org/running-unit-tests.html
>
> On 14. aug. 2012, at 14:00, Malcolm Edgar wrote:
>
> > Hi All,
> >
> > I am interested in developing a Cayenne Adaptor for the NuoDB database
> > https://www.nuodb.com/
> >
> > Its a very interesting database technology for developing scale out /
> high
> > availability solutions. The stuff that relational databases struggle
> with.
> >
> > Presumably to get started I would need to create a NuoDBAdaptor
> extending *
> > org.apache.cayenne.dba.JdbcAdapter*. Is this the best place to start,
> does
> > anyone have any recommendations, or would like to be involved ?
> >
> > regards Malcolm Edgar
>
>
Re: NuoDB Cayenne Adaptor
Posted by Tore Halset <ha...@pvv.ntnu.no>.
Hello.
I did some work on a AWS SimpleDB adapter once using a jdbc driver made by someone else than AWS. No, DynamoDB is the cool thing and I got bored.
Start with the jdbc driver, a plain NuoDBAdaptor and the cayenne junit tests[1]. Cayenne uses lots of jdbc metadata that some of the less mature jdbc drivers lack full support of, so my guess is that you will have to work on that first.
Good luck and keep us up to date! :)
Btw, anyone done something similar with OrientDB or Cassandra (CQL)?
Regards,
Tore Halset.
[1] http://cayenne.apache.org/running-unit-tests.html
On 14. aug. 2012, at 14:00, Malcolm Edgar wrote:
> Hi All,
>
> I am interested in developing a Cayenne Adaptor for the NuoDB database
> https://www.nuodb.com/
>
> Its a very interesting database technology for developing scale out / high
> availability solutions. The stuff that relational databases struggle with.
>
> Presumably to get started I would need to create a NuoDBAdaptor extending *
> org.apache.cayenne.dba.JdbcAdapter*. Is this the best place to start, does
> anyone have any recommendations, or would like to be involved ?
>
> regards Malcolm Edgar
RE: NuoDB Cayenne Adaptor
Posted by "Durchholz, Joachim" <Jo...@hennig-fahrzeugteile.de>.
> Interesting. Their website is full of marketing speak,
> but very light on what makes this database so "revolutionary".
Same impression here.
Seems like they have built a clustered DB engine from scratch.
That's good for throwing out the legacy cruft that all RDBMSes stagger under, but bad for maturing the query optimizer and the management tools.
Possibly they're also doing something new on the clustering front, along the lines of decentralizing query and storage optimization.
Case in point, the current beta lists as one of its achievements:
"The system now uses heuristics to intelligently pick optimal index."
Now the optimization fun begins for them :-)
And this one:
"More complete support for the top ORM tools, such as Hibernate for Java and Active Record for Ruby on Rails."
Which I translate to "they're still ramping up the metadata".
Beta 7: "Up to 50 nodes". Ouch. So much for scalability.
Or they are still working on fine tuning, and 50 nodes is what they've got covered.
Hm. Actually I'd say that 50 nodes is beyond what you're do out-of-the-box already. Today's clusters start to require very much special attention beyond a dozen or so machines. 50 EC2 nodes (i.e. no hand tuning for intra-cluster communication with 10-gigabit ethernet and such) is pretty large already.
They say they're currently backed by 10 millions of investment money.
That's proof-of-concept stage, and a candidate to burn experimentation time/money on.
It would be interesting to hear who's backing Malcolm's efforts here: Nuo, Apache Foundation, Malcom himself out of personal interest, somebody else?
RE: NuoDB Cayenne Adaptor
Posted by "Durchholz, Joachim" <Jo...@hennig-fahrzeugteile.de>.
> which suggests that about 90% of the SQL standard is implemented. I guess the real question is which 90%?
Let me complete that: 90% of which revision?
The nice thing about standards is that you have so many to choose from :-)
For SQL, these are:
SQL1 (1986)
SQL-92
SQL:1999
SQL:2003
SQL/XML:2006
SQL:2008
Re: NuoDB Cayenne Adaptor
Posted by Andrus Adamchik <an...@objectstyle.org>.
Re: casting chars to numbers.
IMO NuoDB driver does it right and others are doing it wrong ;) With John's type-safe properties available on trunk per CAY-1724 it will be easier for the users to ensure the correct expression argument type:
// since AGE is Property<Integer>, a user can't pass a String here
Expression e = Artist.NAME.eq("Pablo").andExp(Artist.AGE.gt(40));
Re: branches
Yeah, you can develop this on trunk and/or some of the STABLE branches. I guess STABLE-3.1 is a tricky one, as it is in Beta and presumably in feature freeze. So according to our own convention, new features can only appear as 3.1.1 (but not 3.1-final). If that's an issue for you, we can fork 3.1 into "STABLE" and "BETA". Let's continue this discussion on dev if you have more questions.
Andrus
On Aug 23, 2012, at 10:41 AM, Malcolm Edgar wrote:
> Hi Andrus,
>
> Its going pretty well so far. I have a smallish Cayenne web application
> running on it with 30 odd tables. The NuoDB JDBC driver is a picky with
> types, e.g. if you pass a numeric string value "6418" into a Cayenne query
> as the PK, Cayenne will set this in the PreparedStatement as
> setObject(index, value), however if the underlying database type is a
> BIGINT the driver will complain internally about casting a java.lang.String
> to java.lang.Long. I can fix this with the Cayenne CharType
> method setJdbcObject() by marshalling the value into a java.lang.Long and
> performing PreparedStatement#setLong(). However I am not sure if this is
> what I should be doing from a Cayenne perspective.
>
> Other JDBC drivers I use (MySQL, Oracle, SQL Server) don't complain doing
> this data marshaling internally.
>
> On the topic of Cayenne branches, I am currently working against is:
>
> - https://svn.apache.org/repos/asf/cayenne/main/branches/STABLE-3.0/<https://svn.apache.org/repos/asf/cayenne/main/branches/STABLE-3.0/f>
> - https://svn.apache.org/repos/asf/cayenne/main/trunk/
>
> Is this the correct approach. The reason I am using Cayenne 3.0.x, is so I
> can perform testing against our applications, which I think is a good way
> of verifying this code.
>
> I can't really comment about how they implement ACID, there is the issue of
> latency and the speed of light! I think their use of MVCC helps with this
> type of problem, which then becomes an application problem.
>
> The applications I develop don't have a lot of contention, my main concern
> is about availability. I haven't figured out how to do automatic fail over
> yet, beyond loosing a connection to a Transaction Engine (TE) and then
> going back to a Broker to establish a new connection to a (TE). My concern
> is if you loose a TE and Broker, then I have to write the code to reconnect
> to another Broker.
>
> MongoDB do a good job with this in their Java drivers from what I
> understand, if the primary DB is lost, and a secondary is elected to
> primary the driver will automatically fail over to the new primary.
>
> regards
>
> On Thu, Aug 23, 2012 at 5:44 AM, Andrus Adamchik <an...@objectstyle.org>wrote:
>
>> Hi Malcolm,
>>
>> Certainly interested to see how this project goes.
>>
>> I watched the webinar and I am sure this thing can't be nowhere near ACID.
>> But as long as it supports joins, has a JDBC driver, and can store more
>> than a few gigabytes of data, it'll be good enough for many applications :)
>>
>> Good luck,
>> Andrus
>>
>>
>> On Aug 15, 2012, at 3:01 PM, Malcolm Edgar wrote:
>>> Hi Guys,
>>>
>>> Thanks for the feedback.
>>>
>>> In terms of my interest, I have no relationship with NuoDB at all.
>>>
>>> The company I work for Avoka Technologies provide a forms hosting
>> platform
>>> for large government and corporates. We use/love Cayenne and support
>>> Oracle, SQL Server, MySQL databases. Generally Oracle and SQL Server are
>>> used for on-premise installations and we use MySQL for a cloud offering
>>> (Amazon RDS).
>>>
>>> For us we have no performance problems with relational databases. By
>> using
>>> Cayenne caching intelligently we can handle very high loads. However
>> when
>>> it comes to providing a High Availability solution across multiple data
>>> centers things become much harder.
>>>
>>> The database vendors have different approaches to this problem, but
>>> generally use a primary active database in data center 1 and a standby
>>> database in data center 2. Microsoft provides a new capability to
>> support
>>> this in SQL Server 2012 AlwaysOn, for MySQL there is Continuent, for
>> Oracle
>>> there is RAC with Data Guard.
>>>
>>> All these HA approaches are inherently complex to setup and administer.
>>>
>>> NuoDB offers fresh approach at this problem. The video below gives a good
>>> overview:
>>>
>>> http://vimeo.com/33785505
>>>
>>> I looked at early beta's of NuoDB about 8 months ago, and it was too
>>> unstable at this point. Whether NuoDB becomes a viable player in the
>> market
>>> is open to question. Building SQL databases is hard, but they do have
>>> people like Jim Starkey on board and some serious Venture Captial backing
>>>
>>> I don't think adding NuoDB support to Cayenne would be trivial, as they
>>> have their own DDL and SQL dialect as does every database vendor. I
>> wished
>>> they had a MySQL emulation mode.
>>>
>>> Again I have no direct commercial interest in this, and would look at
>>> contributing/developing this code in the Cayenne project if people were
>>> interested.
>>>
>>> regards Malcolm Edgar
>>>
>>> On Wed, Aug 15, 2012 at 9:15 AM, Aristedes Maniatis <ari@maniatis.org
>>> wrote:
>>>
>>>> On 14/08/12 11:32pm, Aristedes Maniatis wrote:
>>>>
>>>>> On 14/08/12 10:00pm, Malcolm Edgar wrote:
>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>> I am interested in developing a Cayenne Adaptor for the NuoDB database
>>>>>> https://www.nuodb.com/
>>>>>>
>>>>>> Its a very interesting database technology for developing scale out /
>>>>>> high
>>>>>> availability solutions. The stuff that relational databases struggle
>>>>>> with.
>>>>>>
>>>>>> Presumably to get started I would need to create a NuoDBAdaptor
>>>>>> extending *
>>>>>> org.apache.cayenne.dba.**JdbcAdapter*. Is this the best place to
>>>>>> start, does
>>>>>> anyone have any recommendations, or would like to be involved ?
>>>>>>
>>>>>> regards Malcolm Edgar
>>>>>>
>>>>>
>>>>>
>>>>> Interesting. Their website is full of marketing speak, but very light
>> on
>>>>> what makes this database so "revolutionary". What is that attracts you
>> to
>>>>> it over the choice of existing open source databases?
>>>>>
>>>>> If it supports the basic SQL specification, there is probably very
>> little
>>>>> code to implement in the Cayenne dba package.
>>>>>
>>>>> Ari
>>>>>
>>>>
>>>> Just to be clear Malcolm, I'm not being critical of your effort at all.
>>>> The more databases Cayenne supports the better. But I've never come
>> across
>>>> Nuo before and I'm curious about what it offers. Certainly mysql's
>>>> master/master clustering capabilities leave a bit to be desired, but as
>> a
>>>> basic SQL/storage engine I wonder how easy it would be for anyone to
>>>> surpass postgresql/mysql after all the years of bug fixing and tuning.
>>>>
>>>> I've not been able to Google any benchmarks or other third party
>> reviews.
>>>> The best I found was this:
>>>>
>>>> http://sqlandsiva.blogspot.**com.au/2011/11/nuodb-acid-**
>>>> compliant-scalable-cloud_02.**html<
>> http://sqlandsiva.blogspot.com.au/2011/11/nuodb-acid-compliant-scalable-cloud_02.html
>>>
>>>>
>>>> which suggests that about 90% of the SQL standard is implemented. I
>> guess
>>>> the real question is which 90%?
>>>>
>>>>
>>>>
>>>>
>>>> Ari
>>>>
>>>>
>>>> --
>>>> -------------------------->
>>>> Aristedes Maniatis
>>>> GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A
>>>>
>>
>>
Re: NuoDB Cayenne Adaptor
Posted by Aristedes Maniatis <ar...@maniatis.org>.
On 23/08/12 5:41pm, Malcolm Edgar wrote:
> Is this the correct approach. The reason I am using Cayenne 3.0.x, is so I
> can perform testing against our applications, which I think is a good way
> of verifying this code.
I don't recall seeing much change in the bits of code you are touching from 3.0 to the current trunk. But Andrus will know.
> I can't really comment about how they implement ACID, there is the issue of
> latency and the speed of light! I think their use of MVCC helps with this
> type of problem, which then becomes an application problem.
I watched their video. Very interesting. Like Andrus, I also don't see how they can accomplish ACID and have asynchronous communication between nodes. Seems like a layer of magic is missing somewhere, but I guess we'll all know more when they release their product and specs.
> The applications I develop don't have a lot of contention, my main concern
> is about availability. I haven't figured out how to do automatic fail over
> yet, beyond loosing a connection to a Transaction Engine (TE) and then
> going back to a Broker to establish a new connection to a (TE). My concern
> is if you loose a TE and Broker, then I have to write the code to reconnect
> to another Broker.
For mysql you just use this in the JDBC connection
jdbc:mysql:replication
http://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-replication-connection.html
But of course, mysql master-master replication sucks. And promoting a slave to master requires scripting outside of mysql itself. At least the failover part in JDBC is easy.
Cheers
Ari
--
-------------------------->
Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A
Re: NuoDB Cayenne Adaptor
Posted by Malcolm Edgar <ma...@gmail.com>.
Hi Andrus,
Its going pretty well so far. I have a smallish Cayenne web application
running on it with 30 odd tables. The NuoDB JDBC driver is a picky with
types, e.g. if you pass a numeric string value "6418" into a Cayenne query
as the PK, Cayenne will set this in the PreparedStatement as
setObject(index, value), however if the underlying database type is a
BIGINT the driver will complain internally about casting a java.lang.String
to java.lang.Long. I can fix this with the Cayenne CharType
method setJdbcObject() by marshalling the value into a java.lang.Long and
performing PreparedStatement#setLong(). However I am not sure if this is
what I should be doing from a Cayenne perspective.
Other JDBC drivers I use (MySQL, Oracle, SQL Server) don't complain doing
this data marshaling internally.
On the topic of Cayenne branches, I am currently working against is:
- https://svn.apache.org/repos/asf/cayenne/main/branches/STABLE-3.0/<https://svn.apache.org/repos/asf/cayenne/main/branches/STABLE-3.0/f>
- https://svn.apache.org/repos/asf/cayenne/main/trunk/
Is this the correct approach. The reason I am using Cayenne 3.0.x, is so I
can perform testing against our applications, which I think is a good way
of verifying this code.
I can't really comment about how they implement ACID, there is the issue of
latency and the speed of light! I think their use of MVCC helps with this
type of problem, which then becomes an application problem.
The applications I develop don't have a lot of contention, my main concern
is about availability. I haven't figured out how to do automatic fail over
yet, beyond loosing a connection to a Transaction Engine (TE) and then
going back to a Broker to establish a new connection to a (TE). My concern
is if you loose a TE and Broker, then I have to write the code to reconnect
to another Broker.
MongoDB do a good job with this in their Java drivers from what I
understand, if the primary DB is lost, and a secondary is elected to
primary the driver will automatically fail over to the new primary.
regards
On Thu, Aug 23, 2012 at 5:44 AM, Andrus Adamchik <an...@objectstyle.org>wrote:
> Hi Malcolm,
>
> Certainly interested to see how this project goes.
>
> I watched the webinar and I am sure this thing can't be nowhere near ACID.
> But as long as it supports joins, has a JDBC driver, and can store more
> than a few gigabytes of data, it'll be good enough for many applications :)
>
> Good luck,
> Andrus
>
>
> On Aug 15, 2012, at 3:01 PM, Malcolm Edgar wrote:
> > Hi Guys,
> >
> > Thanks for the feedback.
> >
> > In terms of my interest, I have no relationship with NuoDB at all.
> >
> > The company I work for Avoka Technologies provide a forms hosting
> platform
> > for large government and corporates. We use/love Cayenne and support
> > Oracle, SQL Server, MySQL databases. Generally Oracle and SQL Server are
> > used for on-premise installations and we use MySQL for a cloud offering
> > (Amazon RDS).
> >
> > For us we have no performance problems with relational databases. By
> using
> > Cayenne caching intelligently we can handle very high loads. However
> when
> > it comes to providing a High Availability solution across multiple data
> > centers things become much harder.
> >
> > The database vendors have different approaches to this problem, but
> > generally use a primary active database in data center 1 and a standby
> > database in data center 2. Microsoft provides a new capability to
> support
> > this in SQL Server 2012 AlwaysOn, for MySQL there is Continuent, for
> Oracle
> > there is RAC with Data Guard.
> >
> > All these HA approaches are inherently complex to setup and administer.
> >
> > NuoDB offers fresh approach at this problem. The video below gives a good
> > overview:
> >
> > http://vimeo.com/33785505
> >
> > I looked at early beta's of NuoDB about 8 months ago, and it was too
> > unstable at this point. Whether NuoDB becomes a viable player in the
> market
> > is open to question. Building SQL databases is hard, but they do have
> > people like Jim Starkey on board and some serious Venture Captial backing
> >
> > I don't think adding NuoDB support to Cayenne would be trivial, as they
> > have their own DDL and SQL dialect as does every database vendor. I
> wished
> > they had a MySQL emulation mode.
> >
> > Again I have no direct commercial interest in this, and would look at
> > contributing/developing this code in the Cayenne project if people were
> > interested.
> >
> > regards Malcolm Edgar
> >
> > On Wed, Aug 15, 2012 at 9:15 AM, Aristedes Maniatis <ari@maniatis.org
> >wrote:
> >
> >> On 14/08/12 11:32pm, Aristedes Maniatis wrote:
> >>
> >>> On 14/08/12 10:00pm, Malcolm Edgar wrote:
> >>>
> >>>> Hi All,
> >>>>
> >>>> I am interested in developing a Cayenne Adaptor for the NuoDB database
> >>>> https://www.nuodb.com/
> >>>>
> >>>> Its a very interesting database technology for developing scale out /
> >>>> high
> >>>> availability solutions. The stuff that relational databases struggle
> >>>> with.
> >>>>
> >>>> Presumably to get started I would need to create a NuoDBAdaptor
> >>>> extending *
> >>>> org.apache.cayenne.dba.**JdbcAdapter*. Is this the best place to
> >>>> start, does
> >>>> anyone have any recommendations, or would like to be involved ?
> >>>>
> >>>> regards Malcolm Edgar
> >>>>
> >>>
> >>>
> >>> Interesting. Their website is full of marketing speak, but very light
> on
> >>> what makes this database so "revolutionary". What is that attracts you
> to
> >>> it over the choice of existing open source databases?
> >>>
> >>> If it supports the basic SQL specification, there is probably very
> little
> >>> code to implement in the Cayenne dba package.
> >>>
> >>> Ari
> >>>
> >>
> >> Just to be clear Malcolm, I'm not being critical of your effort at all.
> >> The more databases Cayenne supports the better. But I've never come
> across
> >> Nuo before and I'm curious about what it offers. Certainly mysql's
> >> master/master clustering capabilities leave a bit to be desired, but as
> a
> >> basic SQL/storage engine I wonder how easy it would be for anyone to
> >> surpass postgresql/mysql after all the years of bug fixing and tuning.
> >>
> >> I've not been able to Google any benchmarks or other third party
> reviews.
> >> The best I found was this:
> >>
> >> http://sqlandsiva.blogspot.**com.au/2011/11/nuodb-acid-**
> >> compliant-scalable-cloud_02.**html<
> http://sqlandsiva.blogspot.com.au/2011/11/nuodb-acid-compliant-scalable-cloud_02.html
> >
> >>
> >> which suggests that about 90% of the SQL standard is implemented. I
> guess
> >> the real question is which 90%?
> >>
> >>
> >>
> >>
> >> Ari
> >>
> >>
> >> --
> >> -------------------------->
> >> Aristedes Maniatis
> >> GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A
> >>
>
>
Re: NuoDB Cayenne Adaptor
Posted by Andrus Adamchik <an...@objectstyle.org>.
Hi Malcolm,
Certainly interested to see how this project goes.
I watched the webinar and I am sure this thing can't be nowhere near ACID. But as long as it supports joins, has a JDBC driver, and can store more than a few gigabytes of data, it'll be good enough for many applications :)
Good luck,
Andrus
On Aug 15, 2012, at 3:01 PM, Malcolm Edgar wrote:
> Hi Guys,
>
> Thanks for the feedback.
>
> In terms of my interest, I have no relationship with NuoDB at all.
>
> The company I work for Avoka Technologies provide a forms hosting platform
> for large government and corporates. We use/love Cayenne and support
> Oracle, SQL Server, MySQL databases. Generally Oracle and SQL Server are
> used for on-premise installations and we use MySQL for a cloud offering
> (Amazon RDS).
>
> For us we have no performance problems with relational databases. By using
> Cayenne caching intelligently we can handle very high loads. However when
> it comes to providing a High Availability solution across multiple data
> centers things become much harder.
>
> The database vendors have different approaches to this problem, but
> generally use a primary active database in data center 1 and a standby
> database in data center 2. Microsoft provides a new capability to support
> this in SQL Server 2012 AlwaysOn, for MySQL there is Continuent, for Oracle
> there is RAC with Data Guard.
>
> All these HA approaches are inherently complex to setup and administer.
>
> NuoDB offers fresh approach at this problem. The video below gives a good
> overview:
>
> http://vimeo.com/33785505
>
> I looked at early beta's of NuoDB about 8 months ago, and it was too
> unstable at this point. Whether NuoDB becomes a viable player in the market
> is open to question. Building SQL databases is hard, but they do have
> people like Jim Starkey on board and some serious Venture Captial backing
>
> I don't think adding NuoDB support to Cayenne would be trivial, as they
> have their own DDL and SQL dialect as does every database vendor. I wished
> they had a MySQL emulation mode.
>
> Again I have no direct commercial interest in this, and would look at
> contributing/developing this code in the Cayenne project if people were
> interested.
>
> regards Malcolm Edgar
>
> On Wed, Aug 15, 2012 at 9:15 AM, Aristedes Maniatis <ar...@maniatis.org>wrote:
>
>> On 14/08/12 11:32pm, Aristedes Maniatis wrote:
>>
>>> On 14/08/12 10:00pm, Malcolm Edgar wrote:
>>>
>>>> Hi All,
>>>>
>>>> I am interested in developing a Cayenne Adaptor for the NuoDB database
>>>> https://www.nuodb.com/
>>>>
>>>> Its a very interesting database technology for developing scale out /
>>>> high
>>>> availability solutions. The stuff that relational databases struggle
>>>> with.
>>>>
>>>> Presumably to get started I would need to create a NuoDBAdaptor
>>>> extending *
>>>> org.apache.cayenne.dba.**JdbcAdapter*. Is this the best place to
>>>> start, does
>>>> anyone have any recommendations, or would like to be involved ?
>>>>
>>>> regards Malcolm Edgar
>>>>
>>>
>>>
>>> Interesting. Their website is full of marketing speak, but very light on
>>> what makes this database so "revolutionary". What is that attracts you to
>>> it over the choice of existing open source databases?
>>>
>>> If it supports the basic SQL specification, there is probably very little
>>> code to implement in the Cayenne dba package.
>>>
>>> Ari
>>>
>>
>> Just to be clear Malcolm, I'm not being critical of your effort at all.
>> The more databases Cayenne supports the better. But I've never come across
>> Nuo before and I'm curious about what it offers. Certainly mysql's
>> master/master clustering capabilities leave a bit to be desired, but as a
>> basic SQL/storage engine I wonder how easy it would be for anyone to
>> surpass postgresql/mysql after all the years of bug fixing and tuning.
>>
>> I've not been able to Google any benchmarks or other third party reviews.
>> The best I found was this:
>>
>> http://sqlandsiva.blogspot.**com.au/2011/11/nuodb-acid-**
>> compliant-scalable-cloud_02.**html<http://sqlandsiva.blogspot.com.au/2011/11/nuodb-acid-compliant-scalable-cloud_02.html>
>>
>> which suggests that about 90% of the SQL standard is implemented. I guess
>> the real question is which 90%?
>>
>>
>>
>>
>> Ari
>>
>>
>> --
>> -------------------------->
>> Aristedes Maniatis
>> GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A
>>
Re: NuoDB Cayenne Adaptor
Posted by Malcolm Edgar <ma...@gmail.com>.
Hi Guys,
Thanks for the feedback.
In terms of my interest, I have no relationship with NuoDB at all.
The company I work for Avoka Technologies provide a forms hosting platform
for large government and corporates. We use/love Cayenne and support
Oracle, SQL Server, MySQL databases. Generally Oracle and SQL Server are
used for on-premise installations and we use MySQL for a cloud offering
(Amazon RDS).
For us we have no performance problems with relational databases. By using
Cayenne caching intelligently we can handle very high loads. However when
it comes to providing a High Availability solution across multiple data
centers things become much harder.
The database vendors have different approaches to this problem, but
generally use a primary active database in data center 1 and a standby
database in data center 2. Microsoft provides a new capability to support
this in SQL Server 2012 AlwaysOn, for MySQL there is Continuent, for Oracle
there is RAC with Data Guard.
All these HA approaches are inherently complex to setup and administer.
NuoDB offers fresh approach at this problem. The video below gives a good
overview:
http://vimeo.com/33785505
I looked at early beta's of NuoDB about 8 months ago, and it was too
unstable at this point. Whether NuoDB becomes a viable player in the market
is open to question. Building SQL databases is hard, but they do have
people like Jim Starkey on board and some serious Venture Captial backing
I don't think adding NuoDB support to Cayenne would be trivial, as they
have their own DDL and SQL dialect as does every database vendor. I wished
they had a MySQL emulation mode.
Again I have no direct commercial interest in this, and would look at
contributing/developing this code in the Cayenne project if people were
interested.
regards Malcolm Edgar
On Wed, Aug 15, 2012 at 9:15 AM, Aristedes Maniatis <ar...@maniatis.org>wrote:
> On 14/08/12 11:32pm, Aristedes Maniatis wrote:
>
>> On 14/08/12 10:00pm, Malcolm Edgar wrote:
>>
>>> Hi All,
>>>
>>> I am interested in developing a Cayenne Adaptor for the NuoDB database
>>> https://www.nuodb.com/
>>>
>>> Its a very interesting database technology for developing scale out /
>>> high
>>> availability solutions. The stuff that relational databases struggle
>>> with.
>>>
>>> Presumably to get started I would need to create a NuoDBAdaptor
>>> extending *
>>> org.apache.cayenne.dba.**JdbcAdapter*. Is this the best place to
>>> start, does
>>> anyone have any recommendations, or would like to be involved ?
>>>
>>> regards Malcolm Edgar
>>>
>>
>>
>> Interesting. Their website is full of marketing speak, but very light on
>> what makes this database so "revolutionary". What is that attracts you to
>> it over the choice of existing open source databases?
>>
>> If it supports the basic SQL specification, there is probably very little
>> code to implement in the Cayenne dba package.
>>
>> Ari
>>
>
> Just to be clear Malcolm, I'm not being critical of your effort at all.
> The more databases Cayenne supports the better. But I've never come across
> Nuo before and I'm curious about what it offers. Certainly mysql's
> master/master clustering capabilities leave a bit to be desired, but as a
> basic SQL/storage engine I wonder how easy it would be for anyone to
> surpass postgresql/mysql after all the years of bug fixing and tuning.
>
> I've not been able to Google any benchmarks or other third party reviews.
> The best I found was this:
>
> http://sqlandsiva.blogspot.**com.au/2011/11/nuodb-acid-**
> compliant-scalable-cloud_02.**html<http://sqlandsiva.blogspot.com.au/2011/11/nuodb-acid-compliant-scalable-cloud_02.html>
>
> which suggests that about 90% of the SQL standard is implemented. I guess
> the real question is which 90%?
>
>
>
>
> Ari
>
>
> --
> -------------------------->
> Aristedes Maniatis
> GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A
>
Re: NuoDB Cayenne Adaptor
Posted by Aristedes Maniatis <ar...@maniatis.org>.
On 14/08/12 11:32pm, Aristedes Maniatis wrote:
> On 14/08/12 10:00pm, Malcolm Edgar wrote:
>> Hi All,
>>
>> I am interested in developing a Cayenne Adaptor for the NuoDB database
>> https://www.nuodb.com/
>>
>> Its a very interesting database technology for developing scale out / high
>> availability solutions. The stuff that relational databases struggle with.
>>
>> Presumably to get started I would need to create a NuoDBAdaptor extending *
>> org.apache.cayenne.dba.JdbcAdapter*. Is this the best place to start, does
>> anyone have any recommendations, or would like to be involved ?
>>
>> regards Malcolm Edgar
>
>
> Interesting. Their website is full of marketing speak, but very light on what makes this database so "revolutionary". What is that attracts you to it over the choice of existing open source databases?
>
> If it supports the basic SQL specification, there is probably very little code to implement in the Cayenne dba package.
>
> Ari
Just to be clear Malcolm, I'm not being critical of your effort at all. The more databases Cayenne supports the better. But I've never come across Nuo before and I'm curious about what it offers. Certainly mysql's master/master clustering capabilities leave a bit to be desired, but as a basic SQL/storage engine I wonder how easy it would be for anyone to surpass postgresql/mysql after all the years of bug fixing and tuning.
I've not been able to Google any benchmarks or other third party reviews. The best I found was this:
http://sqlandsiva.blogspot.com.au/2011/11/nuodb-acid-compliant-scalable-cloud_02.html
which suggests that about 90% of the SQL standard is implemented. I guess the real question is which 90%?
Ari
--
-------------------------->
Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A
Re: NuoDB Cayenne Adaptor
Posted by Aristedes Maniatis <ar...@maniatis.org>.
On 14/08/12 10:00pm, Malcolm Edgar wrote:
> Hi All,
>
> I am interested in developing a Cayenne Adaptor for the NuoDB database
> https://www.nuodb.com/
>
> Its a very interesting database technology for developing scale out / high
> availability solutions. The stuff that relational databases struggle with.
>
> Presumably to get started I would need to create a NuoDBAdaptor extending *
> org.apache.cayenne.dba.JdbcAdapter*. Is this the best place to start, does
> anyone have any recommendations, or would like to be involved ?
>
> regards Malcolm Edgar
Interesting. Their website is full of marketing speak, but very light on what makes this database so "revolutionary". What is that attracts you to it over the choice of existing open source databases?
If it supports the basic SQL specification, there is probably very little code to implement in the Cayenne dba package.
Ari
--
-------------------------->
Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A