Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-2882

Improve performance of string conversions

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.10.0
    • 1.0.0
    • None
    • None

    Description

      AbstractID.toString() and AbstractID.toShortString() call StringUtils.byteToHexString(...) which uses a StringBuilder to convert from binary to hex. This is a hotspot when scaling the number of workers.

      While testing on my single node with parallelism=512 jvisualvm reports 600,000 calls taking 13.4 seconds. Improving StringUtils.byteToHexString(...) reduces the time to 1.3 seconds. Additionally memoizing the string values in AbstractID reduce the time to 350 ms and the number of calls to StringUtils.byteToHexString(...) to ~1000.

      Attachments

        Activity

          People

            greghogan Greg Hogan
            greghogan Greg Hogan
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: