Analytics in the Cloud, Cross Functional Teams, and Apache Hadoop is not a Thing Ryan Packer, Bank of New Zealand

Similar documents
KnowledgeENTERPRISE FAST TRACK YOUR ACCESS TO BIG DATA WITH ANGOSS ADVANCED ANALYTICS ON SPARK. Advanced Analytics on Spark BROCHURE

Microsoft Azure Essentials

Accelerating Your Big Data Analytics. Jeff Healey, Director Product Marketing, HPE Vertica

Big Data & Hadoop Advance

E-guide Hadoop Big Data Platforms Buyer s Guide part 1

How to Build Your Data Ecosystem with Tableau on AWS

Cask Data Application Platform (CDAP)

Bringing the Power of SAS to Hadoop Title

Simplifying the Process of Uploading and Extracting Data from Apache Hadoop

Microsoft Big Data. Solution Brief

Simplifying Your Modern Data Architecture Footprint

Building Your Big Data Team

Data Analytics and CERN IT Hadoop Service. CERN openlab Technical Workshop CERN, December 2016 Luca Canali, IT-DB

Apache Spark 2.0 GA. The General Engine for Modern Analytic Use Cases. Cloudera, Inc. All rights reserved.

Deloitte School of Analytics. Demystifying Data Science: Leveraging this phenomenon to drive your organisation forward

Sr. Sergio Rodríguez de Guzmán CTO PUE

Real-time Streaming Insight & Time Series Data Analytic For Smart Retail

Cloud Integration and the Big Data Journey - Common Use-Case Patterns

Got Data Silos? Automate Data Ingestion Into Isilon In Support Of Analytics

SAP Predictive Analytics Suite

Top 5 Challenges for Hadoop MapReduce in the Enterprise. Whitepaper - May /9/11

API Gateway Digital access to meaningful banking content

Common Customer Use Cases in FSI

Copyright - Diyotta, Inc. - All Rights Reserved. Page 2

7 Steps to Data Blending for Predictive Analytics

DLT AnalyticsStack. Powering big data, analytics and data science strategies for government agencies

Integrating MATLAB Analytics into Enterprise Applications

Data Analytics. Nagesh Madhwal Client Solutions Director, Consulting, Southeast Asia, Dell EMC

Architecture Overview for Data Analytics Deployments

The Internet of Things Wind Turbine Predictive Analytics. Fluitec Wind s Tribo-Analytics System Predicting Time-to-Failure

25% 22% 10% 10% 12% Modern IT shops are a mix of on-premises (legacy) applications and cloud applications. 40% use cloud only. 60% use hybrid model

Cask Data Application Platform (CDAP) The Integrated Platform for Developers and Organizations to Build, Deploy, and Manage Data Applications

Oracle Big Data Cloud Service

20775: Performing Data Engineering on Microsoft HD Insight

From Information to Insight: The Big Value of Big Data. Faire Ann Co Marketing Manager, Information Management Software, ASEAN

Education Course Catalog Accelerate your success with the latest training in enterprise analytics, mobility, and identity intelligence.

Maximize Your Big Data Investment with Self-Service Analytics Presented by Michael Setticasi, Sr. Director, Business Development

ETL on Hadoop What is Required

Hadoop and Analytics at CERN IT CERN IT-DB

Oracle Big Data Discovery The Visual Face of Big Data

MapR: Solution for Customer Production Success

NFLABS SIMPLIFYING BIG DATA. Real &me, interac&ve data analy&cs pla4orm for Hadoop

EBOOK: Cloudwick Powering the Digital Enterprise

David Taylor

Hadoop in the Cloud. Ryan Lippert, Cloudera Product Cloudera, Inc. All rights reserved.

IBM WebSphere Information Integrator Content Edition Version 8.2

More information for FREE VS ENTERPRISE LICENCE :

Safe Harbor Statement

Big Data Management Best Practices for Data Lakes Philip Russom, Ph.D.

Providing the right level of analytics self-service as a technology provider

Oracle Big Data Discovery Cloud Service

: Boosting Business Returns with Faster and Smarter Data Lakes

Real-Time Streaming: IMS to Apache Kafka and Hadoop

Conquering big data challenges

Bringing Big Data to Life: Overcoming The Challenges of Legacy Data in Hadoop

Strategy Integration Design Training

Pentaho 8.0 Overview. Pedro Alves

Real World Use Cases: Hadoop & NoSQL in Production. Big Data Everywhere London 4 June 2015

BIG DATA and DATA SCIENCE

Analytics With Hadoop. SAS and Cloudera Starter Services: Visual Analytics and Visual Statistics

MapR: Converged Data Pla3orm and Quick Start Solu;ons. Robin Fong Regional Director South East Asia

Copyright 2014, Oracle and/or its affiliates. All rights reserved. 2

LEVERAGING DATA ANALYTICS TO GAIN COMPETITIVE ADVANTAGE IN YOUR INDUSTRY

MapR Pentaho Business Solutions

5 Ways to Automate Collaboration Between Sales Teams and Everyone Else

E-guide Hadoop Big Data Platforms Buyer s Guide part 3

Analyzing Data with Power BI

Pentaho 8.0 and Beyond. Matt Howard Pentaho Sr. Director of Product Management, Hitachi Vantara

The Alpine Data Platform

Hortonworks Powering the Future of Data

ORACLE DATA INTEGRATOR ENTERPRISE EDITION

Delivering Data Warehousing as a Cloud Service

Oracle WebCenter Sites

Big Data The Big Story

Transforming Big Data to Business Benefits

How the New Zealand Government is improving open data release and online engagement. Department of Internal Affairs

Digital Intelligence Solutions

Why Big Data Matters? Speaker: Paras Doshi

Cognitive enterprise archive and retrieval

Data Strategy: How to Handle the New Data Integration Challenges. Edgar de Groot

IBM SPSS & Apache Spark

Boundaryless Information PERSPECTIVE

Put your customer at the center

IBM Big Data Summit 2012

Let s distribute.. NOW: Modern Data Platform as Basis for Transformation and new Services

Leveraging Oracle Big Data Discovery to Master CERN s Data. Manuel Martín Márquez Oracle Business Analytics Innovation 12 October- Stockholm, Sweden

A technical discussion of performance and availability December IBM Tivoli Monitoring solutions for performance and availability

AUTOMATING HEALTHCARE CLAIM PROCESSING

Ayla Architecture. Focusing on the Things and Their Manufacturers. WE RE DRIVING THE NEXT PHASE OF THE INTERNET of THINGS

Aurélie Pericchi SSP APS Laurent Marzouk Data Insight & Cloud Architect

Operational Hadoop and the Lambda Architecture for Streaming Data

Reduce Money Laundering Risks with Rapid, Predictive Insights

EMC ATMOS. Managing big data in the cloud A PROVEN WAY TO INCORPORATE CLOUD BENEFITS INTO YOUR BUSINESS ATMOS FEATURES ESSENTIALS

Digital Dashboard RFP Questions & Answers

WHITE PAPER. Payments organizations can leverage APIs to monetize their data and services. Abstract

WORKFLOW AUTOMATION AND PROJECT MANAGEMENT FEATURES

Session 30 Powerful Ways to Use Hadoop in your Healthcare Big Data Strategy

Hybrid Data Management

Architected Blended Big Data With Pentaho. A Solution Brief

Adobe Experience Manager Forms

Transcription:

Paper 2698-2018 Analytics in the Cloud, Cross Functional Teams, and Apache Hadoop is not a Thing Ryan Packer, Bank of New Zealand ABSTRACT Digital analytics is no longer just about tracking the number of visits to a page or the traffic from a campaign. Now the questions are about user experience and customer journeys. To answer these questions, we need a new breed of tracking tools and new ways of analyzing the data. The Bank of New Zealand recently implemented SAS Customer Intelligence 360. Over the last year, we would have done proof of concepts across multiple channels, made architecture decisions (and then remade them), integrated it into all our customer-facing digital channels, brought the data into our big data platform, provided near real-time reports and got our agile development teams using it. "One line of JavaScript" is the famous phrase spouted by people selling digital analytics platforms. So what does it take to get that one line of code working and what else is really needed? What lessons have we learned when implementing SAS 360 Discover across our website, two internet banking platforms, and two mobile apps? Now that the hard part is done and we can track Customer A across all our platforms, what can we do with this? We need a way to analyze the huge volumes of data, blend in our offline data, and present this information to the business user and to our data scientists. In this paper, we explore how we used the Apache Hadoop ecosystem to build out our customer data hub to arrive at a "segment of one". INTRODUCTION The Bank of New Zealand (BNZ) was facing a challenge common to many businesses - we wanted to know more about how our customers were interacting with us. With an increasingly higher proportion of our customers and potential customers choosing to interact with us digitally, we needed to be able to track and analyse their actions and journeys across their entire digital experience. After evaluating various tools, and doing a proof of concept with our developers, we chose to implement SAS Discover; part of the SAS Customer Intelligence 360 platform. This is a cloud-based analytics tool that enables seamless data capture from multiple platforms. We can now apply rules to categorise what we collect and track new elements and goals without releasing new code. Finally, it provides a usable data model for our analytics team to use. Implementing this meant coordinating the backlog of multiple teams, getting design and governance signoffs, creating ways to identify our customers and then getting that data back into our on-premise big data platform, where we were able to join it with our existing customer analytics. The first part of this paper will outline some of the challenges and lessons we learned in our journey to deliver this to the business. The second part will cover a brief intro to Hadoop and how we used it as a big data engine for digital analytics. BACKGROUND BNZ is one of New Zealand s largest banks. We have over 150 Stores and 30 Partners Centers nationwide. We have over 5,000 staff, including a digital team of over 250. Over 80% of our customer interactions are through our digital channels; this could be transferring money using one of our mobile applications, changing home loan repayments in our Internet Banking application, creating new users in Internet Banking for Business, researching term deposit rates or applying for a credit card on our unauthenticated website. 1

Within BNZ Digital, we think of our digital platforms as split into three key channels (Figure 1). The unauthenticated website (often referred to as www) which acts as an information portal and has information on our products, sales capability as well as help and support content. For our personal banking customers, we have Internet Banking, which is the browser-based client, as well as mobile apps where our customers can check balances, transact on their accounts and service the products they hold. Similarly, for our business customers we have Internet Banking for Business, a browser-based banking application, as well as our mobile business banking applications. Figure 1. Digital Channels We have a strong digital analytics and insights team, which over the last five years has built out various ways to track and analyse what our users are doing. However, knowing where to go to get the data to answer a business question is starting to require more and more domain knowledge. We needed to simplify the way we were collecting data because our existing methods were highly siloed (Figure 2). Some platforms used Google Analytics but this only provided aggregated data. Other channels had bespoke logging, but any change required a code change in the application and a production release. Some parts of the applications were also using old legacy logging tables. To help us simplify our data collection, we decided to implement SAS Discover. Figure 2. Example Customer Journey 2

ANALYTICS IN THE CLOUD IMPLEMENTATION To successfully implement SAS Discover we needed to get it into our three browser-based platforms and four mobile apps. So, we set up a cross functional team comprising the skills we needed from each of the channels. This allowed us to quickly implement the tool in the same way across multiple platforms, and established a core set of people with the technical skill to support it going forward. However, trying to coordinate with five different teams, each with its own set of priorities proved impractical. We would need a new plan if we wanted to start getting immediate value out of the tool, so we split the implementation into two phases: 1. Phase 1 - Insert the Javascript and SDK into each channel. This was a small task that could be added to the backlog of each of the teams with no other dependencies. 2. Phase 2 2.1. Track customer identities. This involved creating a new hashed identifier for our customers, then developing a method to send that identity to SAS Discover when a customer logged in on any channel. 2.2. Pull SAS Discover from the cloud to our on-premise Cloudera Hadoop cluster. 2.3. Reverse the hash so we could use the identities. 2.4. Build a visual analytics suite. RISK VS THE CLOUD As in any large company, and in particular a bank, everything needs to be managed within an accepted level of risk. One of the first requirements was to be able to capture as much data as possible. Only tracking what we had initially identified would lead to large data gaps and no ability to create baselines in the future. Our initial approach was to specifically exclude personally identifiable information (names, addresses, etc.) from being captured. This made it easier to ensure the project stayed within approved risk parameters. We also wanted to collect form data, leverage existing logging, as well as be prepared for circumstances we hadn t yet considered. SAS Discover has built-in functionality to turn data capture on or off, or mask data at both a form and a field level, but it doesn t trigger this based on the value. This meant we would need to identify every form on the website and field in our applications and determine if it could potentially contain one of the excluded data types. The sheer size of the analysis to identify all potential forms and fields as well as the ongoing maintenance to ensure future collection quickly proved unfeasible. SAS Discover encrypts data in motion as well as at rest and uses a series of the AWS tools, such as automated key rotation. There is also a strong logical data separation between our data and other client s, as well as strong user controls from SAS who has administrative access. As the final data was integrated back into our on-premise data stores we were also able to limit the length of time that the data was kept in the cloud. With these controls in place from SAS and a review by our risk and security teams we can now collect all the data that we need using our cloud-based analytics tool. FINAL DEPLOYMENT 3

With resources finally secured and risk signoff obtained, we successfully deployed SAS Discover. The final design can be seen in Figure 3: 1. All five of our channels are connected to SAS Discover. We are able to track our users as they move between desktop channels or even use multiple devices at the same time. 2. Business users are able to create rules to group pages and screens together, and determine goals and business processes they want to track. 3. The raw data flows back into to the BNZ ecosystem using Informatica via the SAS Discover REST API. New data is available on an hourly basis with any extra business rules applied. 4. Business users can use a suite of visual analytics in Tableau to answer the majority of their questions. 5. The analytics team is also able to use the raw data to generate insights or build advanced models. Figure 3. Design HADOOP IS NOT A THING Most analysts and business users are used to a traditional set of analytics tools (See Figure 4). We are used to homogenous tools that provide us with: 1. A data storage mechanism: usually some sort of table made of columns containing a type of data 2. A way to import new data into the table 3. A way to manipulate the data, either through a visual editor or code 4. A way to view the output in a table or graph 5. A way to export data 4

To use those tools, analysts need to learn one tool, what it can and cannot do and how to manipulate the data. When first using Hadoop, most users assume it will be the same, only more powerful and able to analyse vast quantities of different types of data. Figure 4. Analytics Tools They are inevitably wrong. Hadoop is, in fact, an ecosystem of open source projects that fit loosely together and look something more like Figure 5. The core of Hadoop is made up of two projects: HDFS and MapReduce. These two core components started this type of distributed processing. Let s revisit our processing steps in a Hadoop centric way: 1. Data Storage Mechanism. Data is stored in a distributed file system called HDFS. Unlike traditional analytics tools it works like a folder on your computer and can take any type of file. The most common files for the analyst to load are CSVs or text files, but HDFS can support unstructured tests such as log files, JSONs or images. It also has some extra formats for storing data. In particular, Parquet files form the closest analogy to the traditional table, they are highly typed and the columns have specific names. Parquet also uses column instead of row based storage, which makes it ideal for the big wide tables that you often get in big data. 2. Importing Data. Hadoop has many ways to import data: Sqoop for reading and writing from relational databases, Flume for dealing with streams, and WebHDFS for files via a REST API. While some of these tools can perform minor transformations, they are only really good at landing the original data into HDFS. 3. When it comes to data manipulation, there is plenty of choice. MapReduce is a java based language that uses HDFS s native functionality. Hive has been built on this to provide a familiar SQL interface. Impala uses the table metadata from Hive but performs much faster, thanks to its in-memory engine. Finally, Spark is a vastly powerful data engine that has Python and R APIs for Data Science and Machine Learning. Learning each of these, their strengths and limitations and how to combine them into an analytics pipeline is much more complex than traditional tools. 4. A way to output the data. Cloudera Hue provides a quick way to interact directly with the cluster, but lacks much of the visual output we are used to from tools like SAS. Thankfully the SQL engines provide connectors to modern visualization tools like Tableau. 5. Due to the massive nature of much of the data on Hadoop, it s often best to just leave the data there. 5

SAS DISCOVER DATA ON HADOOP Figure 5. Hadoop The final step of fully integrating SAS Discover as a key data source for digital data was deploying the data model to Hadoop. Because of the separation between file storage and interpreter, it is primarily a write once infrastructure. This means that if you want to update a row, you need to pick up all the files in the folder where your row might be, process the update and then rewrite the entire dataset. There are a few key issues with this: Extremely processing intensive High potential for data loss 6

Figure 6. SAS Discover Data Integration Architecture As a result, our data architecture for SAS Discover looks like Figure 6. Our Hadoop deployment is separated into logical zones: a raw zone where we initially land data and a production zone where we can land optimised data. To get from SAS Discover to our business user, we follow these steps: 1. Informatica retrieves new data from the SAS Discover REST API 1.1. Check for new data 1.2. Informatica retrieves s3 bcket address and single use credentials for each new file 1.3. Download the fact tables in chucks and appends to existing data 1.4. Download the full identity map and appends a new partition in a time series 2. Informatica writes the optimised data model to production 2.1. Create Event Streams. Most of the key event streams in SAS Discover have two parts: one stream records the event at the start, when a person lands on a page. The other is processed later to describe the entire event, loading time and time spent on page. To get a complete view of the stream we need to join the data from both tables. However, the starting fact arrives up to four hours before the ending fact. Being able to react quickly is increasingly important, so we need a way to temporarily add the partial facts to the output stream. To do this, we make use of partitions. This allows us to maintain a small set of transitory data that is co-located in the same table as the final data. On each run, the process picks up any new start facts, the partition with the partial facts and any new end fact. It then writes any completed facts to the relevant monthly partition and any un-joined facts overwrite the previous partial partition (See Figure 7). 7

2.2. Create Identity Map. The identity map is much easier. Informatica picks up the most recent partition of the identity tables, joins them together and then uses the near real-time data feed from the Operational Data Store to decode the hashed customer identities. SAS Discover allows us to have multiple levels of identities, so we need to flatten the identity table to allow one-to-one joining with our time series and enrichment tables. 3. Data Engineering team creates the Enrichment tables. Now that we have an hourly feed of customer data, we need to add customer attributes such as segment, digital activation, or product holding. Our analytics team and data engineers use the other data within the raw zone to start to fill out the 360 o degree view of our users. Figure 7. Partition Based Update Strategy CONCLUSION What started out with promises of a single line of javascript has now been fleshed out into an end-to-end data pipeline. Our business users can define new metrics and goals, the data is then captured, processed and joined to our enterprise data. They can then self-serve using a suite of visual analytics, freeing up our analyst to focus on delivering high value insights to the business. Our next steps are to reverse the data flow and start to use this data to inform the experience of our end user by providing targeted content and personalised digital journeys. CONTACT INFORMATION Your comments and questions are valued and encouraged. Contact the author at: Ryan Packer Bank of New Zealand ryan_packer@bnz.co.nz https://www.linkedin.com/in/ryanspacker/ 8