What this category’s data looks like
Active pharmaceutical ingredient and pharmaceutical intermediate manufacturing data includes batch identifiers, process parameters, impurity test results, compliance records, and other types. Data sources include registered process documents, raw material batch ledgers, production control systems (DCS), weighing systems, laboratory information management systems (LIMS, chromatography data systems), and quality management systems (QMS). Daily generated documents include batch production records, material balance sheets, reaction and purification records, cleaning records, impurity profile reports, deviation and change documents. Data is updated once per completed production step or batch, and includes two formats: structured numerical values and unstructured text. Fields include reaction temperature, impurity content, solvent residue levels, batch numbers, and other relevant fields.
What constraints these characteristics impose on the database and operations workflow
Multiple heterogeneous data sources require the database to support both structured numerical storage and unstructured document storage, while balancing transactional write performance and retrieval efficiency. The high update frequency means the database must handle frequent bulk write requests. Sufficient connection resources must be configured to avoid blocking production processes. Impurity profiles and compliance records in API manufacturing have strict requirements for data accuracy and traceability. The database must support fast associative queries of data from different systems by batch. It must also ensure the immutability of compliance records. During operations, monitoring the synchronization status of multiple data sources is required to avoid data inconsistencies that affect the accuracy of quality problem traceability.
How to set the configuration
This configuration applies to FastGPT v4.17.0.
| Configuration Item | Recommended Value | Rationale |
|---|---|---|
MONGODB_URI | mongodb://username:password@host:port/fastgpt_qc?authSource=admin | Stores unstructured documents such as impurity profile reports, deviation and change files, and supports flexible storage structures for heterogeneous multi-source data |
PG_URL | postgresql://username:password@host:port/fastgpt_struct?sslmode=require | Stores structured batch data, process parameters, and test values, and supports transactional writes and complex associative queries |
DB_MAX_LINK | 20–30 | Adapts to high-frequency write requests per production step, and prevents production data from failing to write normally due to exhausted database connections |
REDIS_URL | redis://:password@host:port/0 | Caches frequently queried batch indexes and impurity test statistical data to reduce query load on the primary database |
Three common configuration errors
- Database connection plugin installation fails with an internal server error. The cause is incorrect configuration of
MONGODB_URIorPG_URLconnection parameters, including unescaped special characters, or database ports not open in firewall permissions. - A new version fails to start with a MongoDB error. This error alone does not establish that the instance version pointed to by
MONGODB_URIis incompatible with FastGPT v4.17.0; inspect the complete error, actual image version,MONGODB_URI, and available database storage. - Trained knowledge base content cannot be queried via batch association. The cause is that structured batch data and unstructured document data are not stored in associated database instances, and correct association indexes are not configured.
How to confirm the configuration is properly set
- Run a database connection test script to verify connectivity for
MONGODB_URI,PG_URL, andREDIS_URL, with no timeout or permission errors. - Import a batch of simulated active pharmaceutical ingredient manufacturing batch data, and confirm that the database write speed meets the update frequency requirement of once per production step.
- Query associated process records, impurity profile reports, and deviation documents by batch number, and confirm that associative queries return results normally.
- Monitor database connection counts, and confirm that the
DB_MAX_LINKconfiguration does not frequently trigger connection exhaustion.
The values given are common starting points and should be measured against the reader's own samples.