tacnode
Back to Demos·

Transactions

We demonstrate the database transaction capabilities of the Tacnode product. Watch as we walk through the process of making and canceling a reservation. Tacnode supports distributed transactions, ensuring data consistency and integrity throughout the booking process.

INTRODUCTION

Welcome to our demonstration of Tacnode's transaction processing capabilities. We'll be using the Tacnode Playground for this demonstration.

For database products, transaction processing has always been essential in maintaining the consistency and integrity of data. Transaction processing is a key component of database functionality, especially since it's the determining factor for whether a product can be used for mission-critical applications.

SCHEMA OVERVIEW

In this demonstration, we'll be using several tables, including the bookings table, to showcase Tacnode BnB's booking and cancellation process. We'll use the calendar table to handle booking dates, the listings table to store information about each property, and the users table to record user information.

TACNODE PLAYGROUND

Next, let's begin our demonstration in the Tacnode Playground. First, we navigate to the Tacnode Bnb homepage, then click on a random listing. Next, we can click on the "Reserve" button... and see that our reservation was successful. Now, we can see that we've jumped to the Orders page. Let's take a look at what happened in the backend.

So, we see that we've initiated a session, in which we can execute multiple transactions over time. When we made our reservation, BEGIN indicates the start of a transaction. First, we retrieve data about the current guest that is making the reservation from the users table. Next, we retrieve all the relevant data about this listing from the listings table. Finally, we need to see if the listing is available on the specified date, using the calendar table.

After these three steps, we can insert this reservation into the bookings table and update the calendar table to indicate that this listing is now unavailable on the specified date. Finally, we complete the transaction using COMMIT.

Next, we'll be demonstrating the process of cancelling a reservation. We can click Cancel for this booking, and take a look at what happened in the backend.

We can see that we've initiated another transaction using BEGIN and retrieved information about the guest as well as the booking. After that, we can now delete this record from the bookings table, and end the transaction using COMMIT.

And with that, we conclude this demonstration of Tacnode's transaction processing capabilities. Thank you for tuning in.