PropertyGuru’s back end, Part I: Google Cloud & BigQuery

Image courtesy of PropertyGuru

Founded in 2007, the online property business PropertyGuru is a leader in five markets across South East Asia and is present in 14 markets across Asia. “Our digital marketplaces operate in Indonesia, Malaysia, Singapore, Thailand and Vietnam and we have, in aggregate, more than 2.4 million property listings and users who, combined, visit our marketplaces 24.5 million times a month on average,” says Setu Chokshi, Director of Data Science, PropertyGuru. “We have about 60% of the online property market across South East Asia, and partner with about 45,000 agents.

“Our vision is to be a trusted adviser to everyone who is seeking property,” adds Chokshi. “For most people, buying a property is one of the most expensive purchases or investments they will make. Building trust in this context is not easy, but it is our ‘north star’ and everything we do – including making property transactions transparent and delivering relevant content and insights – works towards it.”

The business complements its websites with mobile applications to support users looking to access property information and listings on smartphones, tablets or other mobile devices.

Downtime and slow speeds

PropertyGuru started operations with an on-premises datacenter, but found intermittent downtime and patchy speeds were compromising users’ experience of its websites. “Our engineers spent a lot of time fixing our websites rather than on creating new features and providing more relevant, personalized customer experiences,” says Chokshi.

The business decided in 2016 to move and opted for a traditional cloud service with operations in Singapore. However, as PropertyGuru matured, it broadened its hiring criteria for product managers. Many new recruits came from technology and internet companies. These recruits brought different perspectives and deep knowledge to PropertyGuru, and complemented management’s desire to understand more about the business and its customers. The business had been using Google Analytics to track and report on traffic to its websites and began considering the BigQuery analytics data warehouse to run queries on its datasets.

“We had been using another cloud-based product to generate many of our reports about the business, consumers and clients such as property developers,” says Chokshi. “However, the product needed extensive maintenance and being a small to medium business, we could not afford to dedicate a resource to that task.”

The organization’s existing data architecture also meant it had no single source of truth, meaning in many cases team members could only access old or incomplete data. In addition, creating a dashboard that incorporated all relevant information for reporting took at least a week.

Moves to BigQuery

PropertyGuru decided to move from the existing product to BigQuery in early 2018. The business received extensive support from Google Cloud technical and account team members to select and deploy services that would meet its needs. “The Google Cloud team members who worked with us introduced us to services in beta and even alpha stages of development, and this knowledge shaped some of our key infrastructure decisions,” says Chokshi. “They were always guiding us to apply best-practices in infrastructure and data.

“In addition, Google Cloud’s beautiful documentation made it easy for us to understand the steps we had to take.”

Moving to BigQuery allowed PropertyGuru to consolidate its reporting to a single, cloud-based service. The business completed the implementation without disrupting the distribution of numbers and reports to existing teams.

“Now, because of the way BigQuery was structured as a highly scalable, managed service, we can take a hands-off approach and be confident in delivering reports on time, even when our workloads peaked,” says Chokshi. Nearly every report – covering the business, agents and properties are performing – is now generated through BigQuery. Individual teams can query data in tables in the analytics data warehouse, enabling them to create relevant reports and capture insights without requiring assistance from the PropertyGuru technology or data science teams.

Building on analysis with real-time reporting

PropertyGuru also saw an opportunity to build on its data analysis with real-time reporting.. “A lot of our products require us to deliver real-time recommendations and insights about properties,” says Chokshi. “We chose to complement BigQuery with a real-time reporting service powered by the Cloud Bigtable NoSQL database service for large analytical and operational workloads.

“Cloud Bigtable supports near real-time reporting by aggregating and deduplicating the data we generate through Google Analytics.”

The PropertyGuru architecture also incorporates Kubernetes clusters to deploy, scale and manage its applications, Cloud Pub/Sub to ingest and deliver events and Compute Engine to provide compute resources through virtual machine instances.

The real-time reporting pipeline means, for example, that agents who use PropertyGuru to sell or lease properties – or see how many consumers are viewing a listing – can make informed decisions quickly. “This transparency enables agents to make good decisions about buying our advertising products,” says Chokshi.

Cloud Bigtable also powers PropertyGuru’s recommendation engine that uses behavioral cues to determine the type of property a user may be looking for or the content they may be interested in. All recommendations are derived from a users’ third click onwards on a PropertyGuru website or app.

Improving response times

The business is achieving two- or three-digit millisecond response times, and aims to improve those even further as it scales out to support growth. “We have ambitious growth plans, and BigQuery will be able to support our expanded mandate and growth requirements,” says Chokshi. “At present, our organization – including sales and marketing teams – is collectively querying about 50TB to 100TB of data in BigQuery every day.”

A single source of truth

With BigQuery, PropertyGuru now has a single source of truth across the business and can generate dashboards and reports on demand, ensuring managers and teams have the insights necessary to make timely, accurate decisions. Furthermore, Google Cloud enables PropertyGuru to ensure individuals only view the data relevant to their role within the business – minimizing any risk of security breaches or incidents.

BigQuery also supports the machine learning models that help PropertyGuru provide more relevant services to consumers. “We check the quality of the existing machine learning models we use for our recommendation engine with BigQuery, and we are exploring the potential of Cloud AutoML to develop even more effective, intuitive services for our users,” says Chokshi.

This article is adapted from a Google Cloud – PropertyGuru case study.

The second part of this article is an exclusive interview with PropertyGuru’s Director of Data Science, which can be read here.