Index and Limit
`limit` cannot be used in conjunction with `index`.
Initializing a Table with an index tells Perspective to treat a column as
the primary key, allowing in-place updates of rows. Only a single column (of any
type) can be used as an index. Indexed Table instances allow:
- In-place updates whenever a new row shares an
indexvalues with an existing row - Partial updates when a data batch omits some column.
- Removes to delete a row by
index.
To create an indexed Table, provide the index property with a string column
name to be used as an index:
JavaScript:
const indexed_table = await perspective.table(data, { index: "a" });
Python
indexed_table = perspective.Table(data, index="a");
Initializing a Table with a limit sets the total number of rows the Table
is allowed to have. When the Table is updated, and the resulting size of the
Table would exceed its limit, rows that exceed limit overwrite the oldest
rows in the Table. To create a Table with a limit, provide the limit
property with an integer indicating the maximum rows:
JavaScript:
const limit_table = await perspective.table(data, { limit: 1000 });
Python:
limit_table = perspective.Table(data, limit=1000);