rdkit
Overview
| Package | Version | Category | License | Language |
|---|---|---|---|---|
rdkit | 202503.6 | FEAT | BSD 3-Clause | C++ |
| ID | Extension | Bin | Lib | Load | Create | Trust | Reloc | Schema |
|---|---|---|---|---|---|---|---|---|
| 2930 | rdkit | No | Yes | No | Yes | No | Yes | - |
| Related | age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg |
|---|
d13/u24/el10 rdkit build by pigsty, u24/el10 deps on inchi
Version
| Type | Repo | Version | PG Ver | Package | Deps |
|---|---|---|---|---|---|
| EXT | MIXED | 202503.6 | 1817161514 | rdkit | - |
| RPM | PIGSTY | 202503.6 | 1817161514 | rdkit_$v | - |
| DEB | PGDG | 202503.6 | 1817161514 | postgresql-$v-rdkit | - |
Build
You can build the RPM / DEB packages for rdkit using pig build:
pig build pkg rdkit # build RPM / DEB packages
Install
You can install rdkit directly. First, make sure the PGDG and PIGSTY repositories are added and enabled:
pig repo add pgsql -u # Add repo and update cache
Install the extension using pig or apt/yum/dnf:
pig install rdkit; # Install for current active PG version
pig ext install -y rdkit -v 18 # PG 18
pig ext install -y rdkit -v 17 # PG 17
pig ext install -y rdkit -v 16 # PG 16
pig ext install -y rdkit -v 15 # PG 15
pig ext install -y rdkit -v 14 # PG 14
dnf install -y rdkit_18 # PG 18
dnf install -y rdkit_17 # PG 17
dnf install -y rdkit_16 # PG 16
dnf install -y rdkit_15 # PG 15
dnf install -y rdkit_14 # PG 14
apt install -y postgresql-18-rdkit # PG 18
apt install -y postgresql-17-rdkit # PG 17
apt install -y postgresql-16-rdkit # PG 16
apt install -y postgresql-15-rdkit # PG 15
apt install -y postgresql-14-rdkit # PG 14
Create Extension:
CREATE EXTENSION rdkit;
Usage
- Sources: project README, cartridge docs, 2025.03.6 release
RDKit ships a PostgreSQL cartridge for cheminformatics storage, search, fingerprints, and descriptors. The cartridge docs remain the main upstream usage reference; the 2025.03.6 release notes do not call out cartridge-specific user-facing changes.
Create The Extension
CREATE EXTENSION rdkit;
The cartridge adds chemistry-specific types including mol, bfp, and sfp.
Core Search Operators
The cartridge documentation covers:
@>and<@for substructure matching.@=for exact molecular equality.%,<%>, and<#>style fingerprint similarity and KNN operators for similarity search.
These are typically combined with GiST indexes over fingerprint columns.
Fingerprints And Similarity
Common fingerprint functions documented for SQL usage include morgan_fp, morganbv_fp, featmorgan_fp, rdkit_fp, atompair_fp, torsion_fp, layered_fp, and maccs_fp.
Example from the cartridge docs:
SELECT tanimoto_sml(
morganbv_fp('c1ccccc1'::mol),
morganbv_fp('c1ccccc1O'::mol)
);
Descriptors And Validation
The cartridge docs also expose validation and descriptor helpers such as:
is_valid_smiles()is_valid_ctab()is_valid_smarts()mol_amw()mol_hba()mol_numrings()
These functions are the main user-facing surface for SQL analytics on molecular structures.
Feedback
Was this page helpful?
Thanks for the feedback! Please let us know how we can improve.
Sorry to hear that. Please let us know how we can improve.