Keeping fingerprints in sync with your compound dataAfter installing OrChem and creating the initial fingerprints, these fingerprints will get out of date over time if your compound data changes after inserts, deletes and updates. OrChem provides a simple mechanism that can be used to periodically synchronize the compounds with the fingerprint, the details are described on this page. |
Set upThe synchronization concept is pretty straightforward: a CRUD trigger is created on your compound base table and each change is then logged in an audit table specifically for OrChem. Periodically (at the interval you want), you then schedule an OrChem procedure to inspect the audit table, update the fingerprints based on the audit table content and remove processed audit data.This differs a little bit from the general installation that was done in its own "ORCHEM" schema. The trigger and audit table must be installed in the 'master' schema that owns the compound table.
|
Running the synchronizationSynchronization is invoked by calling package "orchem_fingerprinting", procedure "synchronize_cdk_fingerprints". An example is given below, in this case the procedure returns immediately because there was nothing to do (the audit table was empty).SQL> exec orchem_fingerprinting.SYNCHRONIZE_CDK_FINGERPRINTS Nothing to do !! PL/SQL procedure successfully completed. Elapsed: 00:00:00.12 SQL>You may want to schedule this procedure regularly, depending on the volatility of you compound data. For such scheduling you could use the standard facility DBMS_JOB. Or you could run it each time after you update/load compounds in some batch job. Back to main page |