Uploaded image for project: 'Zeppelin'
  1. Zeppelin
  2. ZEPPELIN-3251

slow rendering on very wide datasets - display columns only when necessary

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 0.8.0, 0.7.4, 0.9.0
    • None
    • front-end
    • None

    Description

      Apache Zeppelin recently upgraded to angular ui-grid - that looks awesome!

      What we're facing though is on wider datasets Chrome sometimes spends minutes to render a table.

      The table doesn't have a lot of data (it's very sparsely populated), so it seems just the number of columns is what important.

      Maybe more of an extreme case - 5000 columns x 1000 rows recent Chrome spent many minutes to render on a decent PC. That's not a make-up case and we actually had to display such a wide sparsely populated table. (Our company normally deals with wider datasets)

      Even on not so wide datasets we found browser rendering could be lagging..

      Possible solution: shows rows/columns lazily on scrolling events.

      As an example, Cloudera HUE worked around displaying such wide datasets by adding "virtual" horizontal scrolling - basically columns are pushed to an html table only when they have to be visualized (if a user has pushed horizontal scrolling to the right .. and efficiently removing columns from html when they're not necessary for visualization). Cloudera Hue can render such wide datasets very quickly because browser has to render only a tiny subset of columns that it actually needs.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              Tagar Ruslan Dautkhanov
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: