Site icon Embarcadero RAD Studio, Delphi, & C++Builder Blogs

InterBase Feature Spotlight: Change Views

What is Change Views?

Change Views uses InterBase multigenerational architecture (also known as MVCC) to capture changes to data. This feature allows you to quickly answer the question, “What data has changed since I last viewed it?”

Change Views can be subscribed by any number of subscribers using any number of end user devices/applications independently, in order to view data that has changed across database connections. The effect is a long-lived transaction spanning multiple database connections. Specifically, the subscription tracks all row inserts, updates, and deletes to one or more tables at a column-level granularity over a disconnected, extended period of time.

Why is the feature valuable?

Change Views leverages InterBase’s data versioning engine to provide an easy mechanism for application developers to build in data change tracking inside their database without making any schema level change, or implementing time-consuming and inflexible alternative change tracking designs via timestamps and triggers. 

For developers using RAD Studio, Change Views is also supported natively in FireDAC to quickly merge changes to local data. To see how this could be put to best use with InterBase Change Views by exploring further with the links provided below.

Potential Use Cases

There are many use cases that can benefit from Change Views. Here are a few…

How is this feature different from other solutions?

Other database vendors implement changed data tracking using triggers, logging, and/or transaction write-ahead log scraping. This is time-consuming for the developer and affects the database performance for a certain transaction load or change volume. With InterBase Change Views, there is no performance overhead on existing transactions because it maintains a consistent view of changed data observable by other transactions.

InterBase Change Views also provide a rich set of DDL (Data Definition Language) commands that help the developer/administrator to easily setup changed data tracking. Some appealing use cases are listed above.

Explore Further

Exit mobile version