Quelles autres bases de données ont une fonctionnalité similaire à la requête Flashback d'Oracle?

17

Je suis intéressé de savoir quelles autres bases de données ont des fonctionnalités similaires à la requête Flashback d' Oracle . Il semblerait que toute base de données qui prend en charge MVCC pourrait avoir la fonctionnalité, mais qui le fait? SO a cette question pour SQL Server , mais elle semble plus appropriée ici.

Leigh Riffel
la source
La requête de voyage dans le temps d'IBM DB2 est quelque peu similaire. www-01.ibm.com/software/data/db2/linux-unix-windows/…
Roy

Réponses:

17

PostgreSQL ne l'a pas actuellement. Mais vous avez raison, avec MVCC, cela devrait théoriquement être possible. En fait, l'ancienne université Postgres avait une fonction équivalente appelée voyage dans le temps, mais elle a ensuite été supprimée car elle entraînait trop de frais généraux et l'utilisation pratique était limitée. Bien qu'il soit probablement possible de le ressusciter, depuis lors, il y a eu de nombreuses optimisations de la configuration MVCC qui le rendraient beaucoup plus difficile.

Peter Eisentraut
la source
3

La même fonctionnalité de Flashback Query peut être obtenue dans SQL Server en utilisant database snapshots. Le hic? Cette fonctionnalité n'est disponible que dans l'édition Entreprise. Vous pouvez en lire plus ici.

StanleyJohns
la source
2
J'accepterai «pareil» dans le sens où un vélo et une automobile assurent tous deux le transport. Sur la base de ma compréhension limitée des instantanés de base de données de SQL Server, la fonctionnalité ressemble plus à la base de données flashback d'Oracle, sauf que cette dernière effectue des instantanés continus et inclut le dictionnaire de données.
Leigh Riffel
2
La principale caractéristique de la requête flashback est de pouvoir interroger les données à un moment donné dans le passé en modifiant simplement la requête elle-même. Les données du présent et du passé peuvent être utilisées dans la même requête et vous pouvez même rechercher toutes les versions de données dans une plage de temps particulière.
Leigh Riffel
Merci pour votre participation. Il est bon de connaître la correspondance de fonctionnalité la plus proche. (+1)
Leigh Riffel
Voici une situation dans laquelle la requête flashback d'Oracle serait utile: dba.stackexchange.com/questions/995/get-back-deleted-record
Leigh Riffel
-3

Il est dommage que la fonction de flashback soit un addon dans Oracle et uniquement disponible dans Enterprise Edition. DB2 10.1 a une requête de voyage dans le temps qui est intégrée dans son moteur de base de données et disponible dans toutes les éditions. Vous pouvez télécharger sa version gratuite d'IBM et commencer à l'utiliser immédiatement!

client
la source
1
Pas vrai. Oracle utilise le mot Flashback avec plusieurs fonctionnalités différentes, dont certaines nécessitent Enterprise Edition, mais Flashback Query n'en fait pas partie. Flashback Query est intégré dans la base de données et disponible dans toutes les éditions, même la version gratuite. Voir oracle.com/us/products/database/product-editions-066501.html
Leigh Riffel
1
En surface, la requête de voyage dans le temps de DB2 semble similaire à la requête flashback d'Oracle, mais dans les détails, elle est assez différente. Il n'utilise pas MVCC et ressemble à certains égards à la capture de données modifiées d' Oracle - docs.oracle.com/cd/E11882_01/server.112/e25554/… .
Leigh Riffel