Benchling’s Warehouse Tables come in 2 types:

  • Suffixed with $raw is a raw table (ex. “biotechtx.entity$raw")

  • Not suffixed with $raw is a default view or user view of a table (ex. “biotechtx.entity")

The raw table contains all of the rows and columns.

The default view contains a subset of those rows and columns. It filters out information that the typical user wouldn’t want to see. It filters out the system metadata columns _pkey and _sync_key. It typically filters out archived or unreviewed rows. For example:

  • The default view of result tables only contains result rows that are not archived, are reviewed, and are not invalid (via the Cell-Level Validation feature). Note the default view is a Postgres view over the raw table.

  • The default view of registry_entity only contains registered entity rows that are not archived.

Benchling recommends using raw tables for following cases:

  • If you want an un-filtered view like result tables containing unreviewed data.

  • If you want to view not only un-archived but also archived entities.

  • If you want to filter by Registry Validation feature. Use the validation_status = 'PASSED' filter in this case.

  • If you are not familiar with filters on default view tables. Since filters vary from table to table, it is safer to query a raw table and explicitly apply filters as needed.

Did this answer your question?