# postresql

Published articles for postresql.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Scaling Scientific Data: Migrating Benchling's Schema Model for Performance at Scale

DevFeed: [Scaling Scientific Data: Migrating Benchling's Schema Model for Performance at Scale](<https://devfeed.tech/articles/scaling-scientific-data-migrating-benchling-s-schema-model-for-performance-at-scale-20129.md>)

Original publisher: [Read original article](<https://benchling.engineering/scaling-scientific-data-migrating-benchlings-schema-model-for-performance-at-scale-2a91cf971040?source=rss----3d4aa8fb07ea---4>)

Author: Melody Ding

Published: 2024-12-04T15:01:06Z

Content type: article

Language: en

Sources: [Benchling](<https://devfeed.tech/sources/benchling.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>), [Structured-data](<https://devfeed.tech/topics/structured-data.md>), [data-processing](<https://devfeed.tech/topics/data-processing.md>), [Database](<https://devfeed.tech/topics/database.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>)

Tags: [applications](<https://devfeed.tech/tags/applications.md>), [automated](<https://devfeed.tech/tags/automated.md>), [benchling](<https://devfeed.tech/tags/benchling.md>), [collection](<https://devfeed.tech/tags/collection.md>), [core](<https://devfeed.tech/tags/core.md>), [customer](<https://devfeed.tech/tags/customer.md>), [customers](<https://devfeed.tech/tags/customers.md>), [data](<https://devfeed.tech/tags/data.md>), [data-modeling](<https://devfeed.tech/tags/data-modeling.md>), [database-optimization](<https://devfeed.tech/tags/database-optimization.md>), [model](<https://devfeed.tech/tags/model.md>), [performance](<https://devfeed.tech/tags/performance.md>), [postresql](<https://devfeed.tech/tags/postresql.md>), [product](<https://devfeed.tech/tags/product.md>), [scalable-architecture](<https://devfeed.tech/tags/scalable-architecture.md>), [scale](<https://devfeed.tech/tags/scale.md>), [schema](<https://devfeed.tech/tags/schema.md>), [science](<https://devfeed.tech/tags/science.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>), [speed](<https://devfeed.tech/tags/speed.md>), [storage](<https://devfeed.tech/tags/storage.md>), [structure](<https://devfeed.tech/tags/structure.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

Benchling describes migrating its Schema Model to a more compact structure to improve data-ingestion performance as scientific data volumes grow. The phased transition aimed to balance speed and flexibility while avoiding PostgreSQL scaling limitations, including the need for sharding.

### Source excerpt

Benchling is a unified platform for scientific data. It allows scientists to collaborate on complex science, automate work, and power AI. Customers store large volumes of data on our platform, leveraging it across many applications both within Benchling and in their own infrastructure. It's critical that customer data is accessible in a performant and scalable way. In this article, we'll explore a recent shift in how we store and retrieve customer data. By migrating to a more compact structure, we've tackled key performance challenges associated with increased data volumes. This transition has required a careful balance between speed and flexibility, as well as a phased approach that minimized disruption for users. Benchling Schemas At the core of Benchling's system is Schemas, a product that allows both Benchling internal teams and customers to configure the various shapes of data, defining fields, attributes, and constraints that entities must follow. These data structures represent entities like equipment, storage, biological molecules, workflows, tasks, lab notes, and recorded results from scientific tests. Schemas reside in what we refer to as the definition layer. An example schema for defining the data structure of a molecule Each instance of a schema, referred to as a schematizable item, represents the actual data input by scientists. We call this the instance layer. These items are populated with field values conforming to the schema's defined fields. As Benchling's user base grows and the amount of schematized data ingested into the platform increases every year, optimizing the storage of field values has become crucial. Relationship between actual instances of a molecule and its defined schemaThe Challenge: Scale and Performance Historically, Benchling saw a shift from manual data upload by scientists to integrations with lab equipment, leading to automated data collection. This significantly increased the speed and volume of data ingestion. Assay results