Large Table Handling

BeakerX table widget protects itself against tables with too many rows or columns. The interactive preview is not intended for large datasets. Here's how these situations are handled.

Too Many Rows

There is a limit of 100,000 rows. Longer tables show a warning and an interactive preview of the first 10,000 rows. The following cell shows what happens if you by accident return a million rows to the client.

In [ ]:
list = []
for (i = 0; i< 1000*1000; i++) {
  list << [sin:sin(i), cos:cos(i)]
}
list

Too Many Columns

There is a limit of 500 columns. If there are more, then the extras are hidden and you get a UI to make your own column selection, with search.

In [ ]:
rowList = []
for (row = 0; row < 100; row++) {
    colMap = new LinkedHashMap();
    for (col = 0 ; col < 700; col++) {
      colMap.put('a' + col, row * col)
    }
    rowList << colMap
}
rowList

Very Wide Cells

The width of a cell is limited to 1000 characters. If a cell goes past that, it will be truncated with a '...' appended to the end.

In [ ]:
new TableDisplay(new CSV().read("../resources/data/long_lines.csv"))