# Actionable Data With MongoDB and Go

DevFeed: [Actionable Data With MongoDB and Go](<https://devfeed.tech/articles/actionable-data-with-mongodb-and-go-22101.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2014/06/actionable-data-with-mongodb-and-go.html>)

Published: 2014-06-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>), [data](<https://devfeed.tech/topics/data.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [ardan-labs](<https://devfeed.tech/tags/ardan-labs.md>), [blog](<https://devfeed.tech/tags/blog.md>), [data](<https://devfeed.tech/tags/data.md>), [database](<https://devfeed.tech/tags/database.md>), [expression](<https://devfeed.tech/tags/expression.md>), [go](<https://devfeed.tech/tags/go.md>), [go-programming](<https://devfeed.tech/tags/go-programming.md>), [golang](<https://devfeed.tech/tags/golang.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [programming](<https://devfeed.tech/tags/programming.md>), [transactions](<https://devfeed.tech/tags/transactions.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>)

## AI overview

This tutorial demonstrates how to make application data actionable using a Go program and MongoDB's aggregation pipeline. It defines rules that aggregate and test users' financial transaction data, then uses the results to determine which advice or messaging to show users.

## Source excerpt

Introduction If you are building any kind of application for a consumer based product, it is common to have large amounts of application data being generated about your users. Running reports is a traditional use of this data, but what if you could make this data actionable? What if you could adapt the user experience by aggregating and testing this data against rules that could dictate actions or special messaging? In this post I am going to show you a way that could be used to make your application data "actionable". We are going to review a sample program written in Go that leverages MongoDB's aggregation pipeline to execute rules that aggregate and test data. The rule the program defines and executes determines what messaging we want to show the user based on their current set of financial transactions in the system. The Data We have two collections of data we will be using which are being hosted in a public MongoLab database. The first collection contains credit card transactions for users. This data represent application generated data: