Loading ...
Sorry, an error occurred while loading the content.

[XP] in-memory Repository -- Prevayler vs MySQL performance

Expand Messages
  • Jeff Grigg
    ... I wonder if Prevayler is flushing too much. Flush tends to be an expensive operation. Maybe Prevayler needs to be tuned to flush command serialization to
    Message 1 of 260 , Aug 1, 2004
    • 0 Attachment
      >> --- Steve Bate wrote:
      >>> [...] We decided to use a random access file and achieved
      >>> a dramatic performance increase over Prevaylor or an RDBMS
      >>> solution.

      > --- William Pietri [mailto:william@s...]
      >> I'm a little puzzled by this. Could you tell us more?
      >> [...] And do you have theories on where the performance
      >> increase came from?

      --- "Steve Bate" <steve@x> wrote:
      > There are several potential reasons for the performance
      > increase. [...]

      I wonder if Prevayler is flushing too much. Flush tends to be an
      expensive operation. Maybe Prevayler needs to be tuned to flush
      command serialization to disk less often.

      Efficiency of Java serialization could also be an issue. I've been
      reading about "Berkeley DB Java Edition" recently, and they provide
      an alternate serialization mechanism, to avoid Java's inefficiencies.

      Berkeley DB Java Edition:
      http://www.sleepycat.com/products/je.shtml


      > [...] Appending to a file is not necessarily a fast
      > operation relative to random access in a small file.
      > Both require a disk seek but a file append operation
      > generally must update more persistent data structures
      > ([...]) which might require multiple disk seeks. [...]

      Maybe Prevayler should preallocate non-trivial blocks of disk space
      for its log files to avoid going through disk space allocation so
      frequently. (And grow them in block sizes too.)


      > I'm actually puzzled why MySQL is 3x faster than
      > Prevayler in their transaction processing benchmark.

      ...and that they're not talking about it. It seems like something
      they should want to "fix."

      > [...] I'm curious how the network write plus the disk
      > write is faster than just the disk write. We definitely
      > saw similar results when we ran the benchmarks. Any
      > ideas? Java serialization overhead in Prevayler
      > might be a candidate hypothesis.

      Me too!

      Maybe Prevayler needs some tuning and performance improvements.
    • Ilja Preuss
      ... Yes, but I thought that we were talking about a test that was wrong. Not sure wether that matters, though... Cheers, Ilja
      Message 260 of 260 , Aug 18, 2004
      • 0 Attachment
        Adrian Howard wrote:
        > On 17 Aug 2004, at 12:22, Ilja Preuss wrote:
        > [snip]
        >> It's certainly the case that without pairing/reviews I am more
        >> likely to
        >> *miss* tests - but I don't think that I get more *wrong* tests that
        >> cancel out with wrong implementation...
        >
        > I think it could happen over time.
        >
        > - Lack of pairing might mean I miss duplication so a bit
        > of business logic gets into foo and bar.
        >
        > - My acceptance test for the business logic only uses foo.
        >
        > - Later I change bar incorrectly, but the foo test still passes.
        >
        > False-pass for that bit of business logic.

        Yes, but I thought that we were talking about a test that was wrong. Not
        sure wether that matters, though...

        Cheers, Ilja
      Your message has been successfully submitted and would be delivered to recipients shortly.