rdkit
rdkit : Cheminformatics functionality for PostgreSQL.
Overview
| ID | Extension | Package | Version | Category | License | Language |
|---|---|---|---|---|---|---|
| 2930 | rdkit
|
rdkit
|
202503.6 |
FEAT
|
BSD 3-Clause
|
C++
|
| Attribute | Has Binary | Has Library | Need Load | Has DDL | Relocatable | Trusted |
|---|---|---|---|---|---|---|
--s-d-r
|
No
|
Yes
|
No
|
Yes
|
yes
|
no
|
| Relationships | |
|---|---|
| See Also | age
hll
rum
pg_graphql
pg_jsonschema
jsquery
pg_hint_plan
hypopg
|
d13/u24/el10 rdkit build by pigsty, u24/el10 deps on inchi
Packages
| Type | Repo | Version | PG Major Compatibility | Package Pattern | Dependencies |
|---|---|---|---|---|---|
| EXT | MIXED
|
202503.6 |
18
17
16
15
14
|
rdkit |
- |
| RPM | PIGSTY
|
202503.6 |
18
17
16
15
14
|
rdkit_$v |
- |
| DEB | PGDG
|
202503.6 |
18
17
16
15
14
|
postgresql-$v-rdkit |
- |
| Linux / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
el8.x86_64
|
MISS
|
MISS
|
MISS
|
MISS
|
MISS
|
el8.aarch64
|
MISS
|
MISS
|
MISS
|
MISS
|
MISS
|
el9.x86_64
|
MISS
|
MISS
|
MISS
|
MISS
|
MISS
|
el9.aarch64
|
MISS
|
MISS
|
MISS
|
MISS
|
MISS
|
el10.x86_64
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
el10.aarch64
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
d12.x86_64
|
MISS
|
MISS
|
PGDG 202303.3
|
PGDG 202303.3
|
PGDG 202303.3
|
d12.aarch64
|
MISS
|
MISS
|
PGDG 202303.3
|
PGDG 202303.3
|
PGDG 202303.3
|
d13.x86_64
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
d13.aarch64
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
u22.x86_64
|
MISS
|
MISS
|
PGDG 202303.3
|
PGDG 202303.3
|
PGDG 202303.3
|
u22.aarch64
|
MISS
|
MISS
|
PGDG 202303.3
|
PGDG 202303.3
|
PGDG 202303.3
|
u24.x86_64
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
u24.aarch64
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
PIGSTY 202503.6
|
u26.x86_64
|
MISS
|
MISS
|
MISS
|
MISS
|
MISS
|
u26.aarch64
|
MISS
|
MISS
|
MISS
|
MISS
|
MISS
|
Source
pig build pkg rdkit; # build rpm/debInstall
Make sure PGDG and PIGSTY repo available:
pig repo add pgsql -u # add both repo and update cacheInstall this extension with pig:
pig install rdkit; # install via package name, for the active PG version
pig install rdkit -v 18; # install for PG 18
pig install rdkit -v 17; # install for PG 17
pig install rdkit -v 16; # install for PG 16
pig install rdkit -v 15; # install for PG 15
pig install rdkit -v 14; # install for PG 14Create this extension with:
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.