Uploaded image for project: 'Phoenix'
  1. Phoenix
  2. PHOENIX-5090

Allow transactional writes without buffering the entire transaction on the client.

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 4.15.0, 5.1.0
    • None
    • None

    Description

      Currently it is not possible execute transactions in Phoenix that are too large to be buffered entirely on the client.

      Both Tephra and Omid support writing uncommitted data to HBase immediately and at full speed. The client still needs to keep tracks of the rows changes for:

      1. Conflict detection
      2. (for Omid) writing the shadow cells

      I'd like to do some brainstorming here.

      • It should always be enough to only hold on to the changed rows (and columns?) only for conflict resolution and free the rest from the client as soon as the uncommitted data is written to HBase.
      • For the shadows cells we need only keep the rows changed, right?
      • There are situations where we can avoid the client site buffering entirely (perhaps only for Tephra) when we declare a table or upsert not to participate in conflict resolution.

      tdsilva, ohads, yonigo, jamestaylor, vincentpoon, more, better ideas?

      Attachments

        1. 5090-looksee.txt
          3 kB
          Lars Hofhansl
        2. 5090-v1.txt
          5 kB
          Lars Hofhansl
        3. 5090-v2.txt
          6 kB
          Lars Hofhansl

        Issue Links

          Activity

            People

              larsh Lars Hofhansl
              larsh Lars Hofhansl
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: