In a single-relational graph, all edges share the same meaning. In contrast, a multi-relational graph represents a heterogeneous set of edges, where each edge is labeled to denote the type of relationship that exists between the two vertices it connects. While less prevalent than the single-relational graph, the multi-relational graph structure is beginning to see widespread adoption in both academia and industry. An algebra for manipulating multi-relational graph structures and the realization of this algebra in various application scenarios is presented in this talk.