Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-2826

Add redo tail for mutation list to accelerate UPDATE in memrowset

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.10.0
    • None
    • None

    Description

          We found kudu needs traversing the whole mutation list to find tail to append the new mutations when UPDATE or REINSERT in memrowset. And it cost considerable time when we update the same key tens of thousands times(We encountered this case in production environment).

          I reproduced this case in offline environment by updating 100 rows for about 60000 times, the find-tail costs would be more than 1ms when update frequently and the statistics was shown in picture 1. The total AppendToListAtomic cost statistics was shown in picture 2. It is meaningful for kudu to optimize the append and I try to add tail for mutation list to handle it. Picture 3 is the cost statistics for AppendToListAtomic after my modification.

      Attachments

        1. 3.png
          158 kB
          ZhangYao
        2. 2.png
          155 kB
          ZhangYao
        3. 1.png
          158 kB
          ZhangYao

        Issue Links

          Activity

            People

              ZhangYao ZhangYao
              ZhangYao ZhangYao
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: