Skip to main content
SmithDB is the trace datastore of LangSmith. LangSmith services receive runs and feedback, and serve the UI and the API. They do not write to SmithDB directly. They put new data in a queue in Redis, and an ingest queue worker writes it to SmithDB. Reads go directly to SmithDB. SmithDB keeps all data in object storage and in its own PostgreSQL database, the metastore. Its pods hold only copies of data and work in progress. In the background, compaction merges small data files into larger files, writes feedback into the files, and removes expired and deleted data, so that queries stay fast. For how SmithDB writes, reads, changes, and compacts data, see How SmithDB handles data. LangSmith services and SmithDB services, the dependencies between them, and their storage. LangSmith services and SmithDB services, the dependencies between them, and their storage.

Components

Query pools

By default, one SmithDB query pool, query, does all query work. For larger deployments, enable the dedicated query services. Each one takes one type of work away from the query pool, so that heavy load does not slow down UI and API reads.

Terms

See also