Couchbase @ Clickspace : Transforming digital signage
Clickspace has built an advanced digital signage platform specifically designed for the hospitality industry. This platform is designed to boost customer engagement levels and to keep them continuously entertained. Clickspace heavily uses Couchbase Server, a NoSQL document database to power this platform. Read this blog to learn more...
I’m always excited to learn about cool things folks build using Couchbase. I got a chance to catch-up with Alek Mlynek, CTO of Clickspace, an online platform offering a wide array of multimedia services through websites. Alek and his team are transforming digital signage through Clickspace TV, providing the hospitality industry with new ways to engage with their customers, help customers discover new brands, and keep them entertained.
I wanted to share in this blog my conversation with Alek, as he explains why the Clickspace team went with Couchbase Server, what they’re doing with Couchbase, and why he thinks Couchbase was the best choice for the platform they are building.
Hello Alek, can you describe your role at Clickspace and what you do?
Hi. At Clickspace, I’m currently the CTO and I am responsible for making decisions around technology and operations. As a part of my day, I also write a lot of code for what we call speciality projects, things we create outside of our core offering to enhance or create new products.
Can you share more details about how your application uses Couchbase?
One of the exciting applications that I’d like to tell you about is a game app that we are working on that interfaces with the Clickspace TV system. This game is cool because it allows players to play alongside a live sports game in a predictive manner. Couchbase is used by our platform and powers the backend gaming system of this game.
What exactly does your app store in Couchbase?
We store a lot of data in Couchbase. We store game data such as player actions and points in Couchbase. Using key-value operations, we can easily store and retrieve actions and score values. Leaderboards are aggregated using Couchbase views.
In addition, we also store other data such as game room data to chat data to feeds. A lot of our data is fluid, and using Couchbase’s expire methods allow us to automatically dump the data daily and refresh it every morning. There are no more manual tasks to update our rosters and schedules in our app.
In your opinion, what was the main characteristic of Couchbase that made you select it for your app?
Flexibility of development was one of the huge plus for us of Couchbase. Not forgetting that, the database also scaled well and provided the high performance we need for our platform. When we started working on this idea, we weren’t clear on what the end product was going to be. Through rapid agile iterations, testing, and general experience with the product, we’ve since modified it significantly.
Couchbase allowed us to stay flexible, as changing documents provided us with a lot of flexibility than changing a SQL schema.
What advice do you have for other Couchbase users?
2 main pieces of advice -
- Think about data modeling - While Couchbase gives you enormous freedom to store different kinds of data, this can also be a huge negative, it not used correctly. Read Couchbase’s data modeling documentation to help you understand how you can model your documents in a way that can still be queried.
- Use views - they are powerful. Seems obvious but I didn’t learn views until later on in our Couchbase development cycle. While mapreduce may seem overwhelming at first, learning this from the start will help you understand the best practices for modeling your data as well and make your life easy.
Any next steps? Are there new features or new apps you are planning to build with Couchbase Server ?
Tons. We are really focusing on one sport so far, but in the future, we will want to support multiple sports. We also want to make the game more social. We are fully confident that we have found a solid backend database that can make all this happen. Now, we just have to focus on building exciting apps.
Final question, how has Couchbase helped you the most?
It is flexible which makes it great for development. You can start coding now without worrying about your database.
Thank you Alek.
Thank you. You can learn more about us at clickspace.com or by following me on twitter @alekmlynek