Collaborative Filtering in MySQL: A Tutorial

What is Collaborative Filtering?

Being able to view products and pages liked by other users is not only an interesting exercise, but also a nearly ubiquitous marketing tool — and, it can be easily implemented with MySQL using Arctype.

Nearly every dynamic website uses collaborative filtering to maximize users' exposure to a wider range of potentially relevant content.  You've seen it on Amazon:

Validating Data in a Spark DataFrame – Part One

How your DataFrame looks after this tutorial

Recently, in conjunction with the development of a modular, metadata-based ingestion engine that I am developing using Spark, we got into a discussion relating to data validation. Data validation was a natural next step of data ingestion and that is why we came to that topic.

You might be wondering, "What is so special about data validation? Is it because of Spark?" The reason for this article is partly due to Spark, but more importantly due to the fact that it demonstrates the power of Spark and also illustrates the principle that there is more than one method available to achieve our goal.

Open-Source Java Library With Stack Trace Filtering, Silent String Parsing, and Version Comparison

Over some time in different jobs, I came across a need for several utilities that I couldn't find available at the time. And I saw that I needed them several times over. So, I wrote my own small library that I found very useful. I just published it as an open-source Java library. Here is the link. Additionally, and the Javadoc is available here.

This library is also available on Maven Central. Here are the Maven artifacts (version 1.5.0.6 is the latest at the time of writing this article but might change. You can check for the latest version search for artifact " MgntUtils" at http://search.maven.org/):

Filterer Pattern in 10 Steps

Filterer is a pattern that should be applied only in special cases. In the original post, I presented a very simple example intended to show how to apply it. In this post, I present a much more detailed example that's intended to also explain when and why you should apply it.

Introduction

This post consists of 10 short, easy steps on how to correctly implement the filter pattern. In each step, I introduce the requirements of the following two types: