Book Image

Data Democratization with Domo

By : Jeff Burtenshaw
Book Image

Data Democratization with Domo

By: Jeff Burtenshaw

Overview of this book

Domo is a power-packed business intelligence (BI) platform that empowers organizations to track, analyze, and activate data in record time at cloud scale and performance. Data Democratization with Domo begins with an overview of the Domo ecosystem. You’ll learn how to get data into the cloud with Domo data connectors and Workbench; profile datasets; use Magic ETL to transform data; work with in-memory data sculpting tools (Data Views and Beast Modes); create, edit, and link card visualizations; and create card drill paths using Domo Analyzer. Next, you’ll discover options to distribute content with real-time updates using Domo Embed and digital wallboards. As you advance, you’ll understand how to use alerts and webhooks to drive automated actions. You’ll also build and deploy a custom app to the Domo Appstore and find out how to code Python apps, use Jupyter Notebooks, and insert R custom models. Furthermore, you’ll learn how to use Auto ML to automatically evaluate dozens of models for the best fit using SageMaker and produce a predictive model as well as use Python and the Domo Command Line Interface tool to extend Domo. Finally, you’ll learn how to govern and secure the entire Domo platform. By the end of this book, you’ll have gained the skills you need to become a successful Domo master.
Table of Contents (26 chapters)
1
Section 1: Data Pipelines
7
Section 2: Presenting the Message
12
Section 3: Communicating to Win
17
Section 4: Extending
21
Section 5: Governing

What this book covers

Chapter 1, Overview of the Domo Ecosystem: Before Domo, answering business questions was often a laborious, cross-disciplinary process requiring a diverse mix of technical and business resources to accomplish and, far too often, was much too slow and expensive—falling short in the objective to inform decisions. Enter the Domo Ecosystem, a Platform-as-a-Service (PaaS) solution consisting of five core integrated parts: Acquire, Present, Communicate, Extend and Govern. This integrated architecture democratizes the process of answering business questions, which means that everything a user needs to use data to answer relevant business questions is available to them without having to wait for specialists.

Chapter 2, Importing Data: As a user, often, the first step you may need to do before answering a question is to import data from wherever it resides. We will review all the intake tools, then go through examples of importing data from the following sources: Excel/CSV files, Google Sheets, Email attachments, cloud apps, databases, On-premise systems, Federated queries, webforms. We will also briefly discuss your options for data outtake.

Chapter 3, Storing Data: Now that you have created datasets, we will walk through how the data is stored and accessed in the Domo cloud. Domo, by design, enables an iterative and adaptive approach to data storage. The essential storage structure of a dataset is something that would look like a typical Excel spreadsheet. One advantage that this simplicity offers is that dataset schemas are derived from the data as it is ingested: when data is changed at the source, the schema is also automatically updated. That is important because, in traditional data warehousing, it was all about rigid schema building and compliance – which, honestly, was slow and failed to deliver business value at cloud speed. So, although one can enforce highly normalized schemas in Domo, there is simply not a pressing business reason to do so.

In fact, many Domo customers find that a year or so into the implementation, their Domo instance has organically accumulated more tabular data than their legacy data warehouse. This is primarily due to the low-hassle manner in which data is ingested and stored, which was enabled by the fundamental assumption (now proved over years) that the data itself contains all the information needed to create and maintain the raw schema. Storing the data becomes useful when it is also easy to find, profile, and secure. We will walk through searching, browsing, data profiling, and securing datasets as well.

Chapter 4, Sculpting Data: Artistic sculpting requires the ability to see in raw material the potential for a work of art. The sculptor has a range of tools at their disposal to shape raw stone into something more valuable. Data Analysts, like sculptors, can see potential in raw data to answer questions. Analysts also require tools to shape and refine the raw data. The Domo platform has many tools to enable data sculpting. If you are not a technical data manipulation guru, no worries, we will cover Domo's very approachable graphical drag and drop tool that requires no coding, and that any business analyst can use. However, if you are a SQL expert, Domo has also had tools to enhance your scripting skills for sculpting data we will discuss as well.

Chapter 5, Sculpting Data In-Memory: In working with data, sometimes it is very necessary for performance or convenience to conduct operations on the data that are not persistently stored to disk. For performance, an example is combining billions of rows of transactions with millions of rows of customer data. For convenience, an example might be a simple lookup code mapping or applying business logic. We will cover these fine-tuning adjustments enabled by tools that work on in-memory cache and query technology, in Domo's case Adrenaline which is essentially a queryable in-memory cache. These in-memory transforms are magnitudes faster than persistent transforms via ETL and when speed is what you are after these tools are the right choice. Occasionally, the use of Adrenaline dataflows becomes critical in cases when the rows of data being processed reach billions of rows and joins are required and materialization is not practical. If you are familiar with creating non-materialized views on a relational database or using formulas in excel, then this is similar technology.

In this chapter we will cover Beast Mode, Data Views, and Data Blend tools that are part of the Domo MAGIC transforms family (magic because they are so easy to use) that operate in memory cache.

Chapter 6, Creating Dashboards: This chapter covers creating cards and dashboards on the data. Analyzer is the tool used for creating individual Cards that are contained in dashboard pages. For navigation, the dashboard pages are arranged into a logical tree structure up to three layers deep organizing how the content is presented. A Card is simply a chart contained inside of a tile on a dashboard page. Analyzer is commonly referred to as Card Builder but is also a powerful ad-hoc data exploration tool. Many card types also support interactive filtering while viewing from the dashboard.

We will focus on creating and navigating dashboards; working with Analyzer; and creating and editing cards.

Chapter 7, Working with Drill Pathways: Often when viewing cards users will want to drill down to see more details. Every card in Domo by default is enabled to drill down to the raw dataset. However, as a card designer, you may want to pre-define the drill path with custom visualizations that communicate more effectively than a raw table view. Creating these drill paths in Domo couldn't be simpler—actually, you just create another chart as a drill path under the main chart and Domo automatically figures out how to enable the drill down linkages! There is even the ability to drill down to a completely different dataset than the parent card's dataset provided the column names are the same. This ability to drill to a different dataset is particularly useful on large datasets where the parent dataset is aggregated and enables drilling to the larger dataset details.

We will cover creating card drill paths, drilling down to a different dataset, linking cards, and comparing parts to whole with segments.

Chapter 8, Interacting with Dashboards: One of the useful things a Domo dashboard can do is allow the user to start from a default dashboard view and then interact with the content, exploring the data in real-time. The Collections feature organizes the layout of cards on the page into logical sections like organizing slides in a PowerPoint. There is also Page Filters that enable filtering of all the cards on a page at once on any field including beast modes in the dataset. Filters once set can be named and saved as a group for re-use. Another advanced feature is Interactive Card Filtering that when enabled sets the page filters for all cards based on what is clicked on in a particular card. In other words, using one card to filter contents in other cards.

We will cover dashboard page interactions, working with collections, and using page filters.

Chapter 9, Interacting with Cards: Card interactions give us fine grained control of what we see in a card. These controls encompass changing the chart type, zooming in and out, filtering the data, exporting the data to Excel and even pivot table functionality. All these interactions are temporary in nature, as a browser refresh will reset the card to the default state set by the designer. These features are located on the card details page in Domo. There is also a lot of information about when the card data was last updated, who has access to, and who has viewed the card. This information provides context, and the interactivity is helpful for users when they need to do data discovery on the fly. These features enable the user to slice the information, experiment with different visuals or make permanent annotations of significant events that impact the data. There is even a feature to bring attention to any issues with the card to the card's owner.

We will cover using card interactions, using pivot tables, and exporting data to Excel.

Chapter 10, Telling Relevant Stories: Being relevant with data means bringing information to light that is important to current issues at hand. In a business context, a business model provides a framework for storytelling. We will learn about deciding what the relevant parts of the business are, and for organizing the story presentation using a pattern. A pattern for relevant storytelling seeks to explain the journey of where the story began, what happened, where things are now and where things could be in the future. A story is not meant to merely present facts and figures but to advocate for a position. Stories that don't decide what to advocate for or against may be interesting but are irrelevant and not actionable.

We will learn how to use a business framework to focus on a relevant story, then create a specific statement for the story to cover, and then apply a storytelling pattern in the Domo stories tool.

Chapter 11, Distributing Stories: This chapter will cover the many ways enabled by the Domo platform to disseminate the content. This includes native iOS and Android devices, scheduled emails, digital wall board presentations, secured mass distribution via URL, embedding in PowerPoint and embedding in bespoke web pages.

We are going to ensure the message gets out by practicing all these options for communications through channels enabled via Domo Platform.

Chapter 12, Alerting: So much time is spent with people working to make sense of data. Increasingly, technology is allowing us to turn that dynamic around and make the data work for us. A major way of putting the data to work is through alerting technology. Alerts allow continuous monitoring of data looking for conditions to be met, fail, crossed, removed, created and more. A well thought through alerting strategy can be more impactful on business performance than a great dashboard. In fact, and argument can be made that the main reason to have a monitoring dashboard is to automate alerts.

We will cover defining an alerting strategy, understanding the alert center, setting alerts on cards and datasets, subscribing to alerts created by others.

Chapter 13, Buzzing: Collaboration among users is a core part of making sense of information. The ability for users to dialog around content is critical. A big gap in the efficiency and effectiveness of most messaging solutions is that the users need to provide the content for the discussion from sources outside of the communication tool. For example, email attachments.

Buzz is Domo's topic-based messaging application that includes a content provided messaging solution! It goes one step further than tools like Slack (which provide self-defined topic threaded conversations) in that Buzz also provides contextually aware topics automatically. Say hello to automatic topics and goodbye to attachments and cut and paste insertions for data context.

We will cover the features to use Buzz effectively.

Chapter 14, Extending Domo with Domo Apps: There are many layers of architecture including data tiers, business logic tiers, security, user management, mobile apps, scalable infrastructure and more. What if we were to discover a platform where much of what a developer needs for building an enterprise grade application already existed and all that remained was to connect the data to the application functionality via HTML, CSS and client scripting. That would be fantastic.

We will learn what the Domo Dev Studio Framework delivers, how to leverage it to extend the Domo Platform via creating custom apps, and how to deploy those apps to the Domo App Store.

Chapter 15, Using Domo APIs in Python: Python as a language is very attractive for rapid application development, because it is simple, free to use, and easy to distribute. All these characteristics make it a great tool for democratizing extensions to the Domo platform via Domo APIs, directly or wrapped by Python libraries.

We will look at the two available options for using Python with Domo. The first is through the Extract, Transform, and Load (ETL) Scripting Tile for Python. The second is by using a local Python installation to access the Domo APIs.

Chapter 16, Using Domo Machine Learning: Democratizing ML, putting the power of ML into non-data scientist hands, is what Domo's AutoML feature does. Domo partnered with Amazon Web Services and their SageMaker Autopilot product to bring this capability to Domo platform users in a turnkey way. Domo also supports Jupyter Workspaces.

We will review the AutoML process, training Auto ML Models, Deploying AutoML models, and using Jupyter Workspaces.

Chapter 17, Securing Assets: Security is a primary concern when covering the governance of People, Groups, Roles, Content, Authentication, Network Security, Company Settings, Content Embedding, Feature Settings, and more.

We will cover a policy framework guiding tasks in securing platform assets, organizational culture considerations, authentication, network security, groups and roles, and handling Personally Identifiable Information (PII).

Chapter 18, Organizing the Team: Four primary organizational roles exist to support the effective application of Domo in an organization: Executive Sponsor, MajorDomo, Domo Master, and Data Specialist. These roles should be formally defined and assigned. The roles can be held by a single person in a small organization or divided among many people in large organizations.

We will review organizational structure options including organization size, scope, and evolution; define the roles and responsibilities; and present job descriptions for hiring.

Chapter 19, Establishing Standard Procedures: The right amount of procedure is helpful; but having too much procedure is wasteful. When implementing Domo there are a few procedures to establish that are core to adoption and more effective use of the platform.

We will cover procedures for determining artifact ownership, accepting new requests; prioritizing and assigning request implementations; and developing, testing, and migrating changes to production. We will also look at formal content certification.