# US 8,572,020 B2 · System, process and software arrangement for providing multidimensional recommendations/suggestions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,572,020 B2
- Document ID: US8572020B2
- Status: Granted
- Kind: B2
- Application number: 13/593,296
- Filed: 2012-08-23
- Published: 2012-12-13
- Granted: 2013-10-29
- Earliest claimed: 2001-02-12
- Assignees: Facebook, Inc.
- Applicants: Alexander Tuzhilin; Gediminas Adomavicius
- Inventors: Alexander Tuzhilin; Gediminas Adomavicius
- Web page: https://patentgrep.com/patent/US8572020B2

## CPC

- G06F 16/283: {Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP}
- G06F 16/244: {Grouping and aggregation}
- G06F 16/2457: with adaptation to user needs
- G06Q 30/0631: {Recommending goods or services}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

A process, system and computer software are provided to facilitate at least one recommendation to one or more users and/or one or more applications using multidimensional data. In particular, a multidimensional space is defined, wherein each dimension is capable of providing variable information. At least one dimension corresponds to user profiles. The multidimensional space is filled with multidimensional data corresponding to dimensions of the multidimensional space. Then, information from the multidimensional space is retrieved. Further, the recommendation is generated based on the retrieved information. In addition, it is possible to generate a recommendation-specific query. This can be performed by generating the recommendation-specific query to access a multidimensional cube and retrieve data stored therein. Then, the recommendation can be issued based on the data retrieved from the multidimensional cube.

## Claims

### Claim 1

A method comprising:
receiving, at one or more computer servers, a first query, the syntax of the first query being based on a recommendation-specific language corresponding to a multidimensional recommendation model, wherein the recommendation-specific language further includes commands associated with a data definition language for specifying a multidimensional space, including specification of each dimension of the multidimensional space and elements of each dimension, and wherein the multidimensional space includes at least three dimensions;
defining the multidimensional space using the data definition language, the defining comprising defining the dimensions of the multidimensional space and defining elements of each dimension of the multidimensional space;
translating, by one or more processors associated with the one or more computer servers, the first query into a second query, the syntax of the second query being based on a structured query language including commands to retrieve information stored according to a relational data model, wherein the translating is based on a mapping between the multidimensional recommendation model and the relational data model;
retrieving, by the one or more processors, information from the multidimensional space based on the second query;
generating, by the one or more processors, at least one recommendation based on the retrieved information, wherein the at least one recommendation includes at least one multidimensional suggestion; and
providing, by the one or more processors, the at least one recommendation in response to the first query.

### Claim 2 (depends on 1)

The method of claim 1, wherein the recommendation-specific language comprises a query syntax for retrieving recommendations for a specified user.

### Claim 3 (depends on 1)

The method of claim 1, wherein the recommendation-specific language comprises a query syntax for retrieving recommendations for a group of users.

### Claim 4 (depends on 1)

The method of claim 1, wherein the at least one recommendation is for one or more pieces of information, one or more products, one or more services, or any combination thereof.

### Claim 5 (depends on 1)

The method of claim 1, wherein the recommendation-specific language comprises a query syntax for retrieving recommendations based on a ranking.

### Claim 6 (depends on 1)

The method of claim 1, wherein the recommendation-specific language comprises a query syntax for restricting recommendation results based on at least one element of at least one dimension of the multidimensional space.

### Claim 7 (depends on 1)

The method of claim 1, wherein the recommendation-specific language comprises a query syntax for aggregating recommendation results based on at least one element of at least one dimension of the multidimensional space.

### Claim 8 (depends on 1)

The method of claim 1, wherein receiving the first query comprises receiving information in accordance with an application programming interface.

### Claim 9 (depends on 1)

The method of claim 1, wherein receiving the first query comprises receiving information provided using a graphical user interface.

### Claim 10 (depends on 1)

The method of claim 1, wherein the recommendation-specific language is compatible with an OLAP-based system.

### Claim 11 (depends on 1)

The method of claim 1, wherein each dimension having one or more attributes characterizing each element of the dimension.

### Claim 12 (depends on 1)

The method of claim 1, wherein the at least one multidimensional suggestion is based on the at least three dimensions.

### Claim 13

A system comprising:
one or more processors; and
a memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:
receive a first query, the syntax of the first query being based on a recommendation-specific language corresponding to a multidimensional recommendation model, wherein the recommendation-specific language further includes commands associated with a data definition language for specifying a multidimensional space, including specification of each dimension of the multidimensional space and elements of each dimension, and wherein the multidimensional space includes at least three dimensions;
defining the multidimensional space using the data definition language, the defining comprising defining the dimensions of the multidimensional space and defining elements of each dimension of the multidimensional space;
translate the first query into a second query, the syntax of the second query being based on a structured query language including commands to retrieve information stored according to a relational data model, wherein the translating is based on a mapping between the multidimensional recommendation model and the relational data model;
retrieve information from the multidimensional space based on the second query;
generate at least one recommendation based on the retrieved information, wherein the at least one recommendation includes at least one multidimensional suggestion; and
provide the at least one recommendation in response to the first query.

### Claim 14 (depends on 13)

The system of claim 13, the processors being further operable when executing the instructions to receive the first query to receive information in accordance with an application programming interface.

### Claim 15 (depends on 13)

The system of claim 13, the processors being further operable when executing the instructions to receive the first query to receive information provided using a graphical user interface.

### Claim 16

One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
receive, at one or more computer servers, a first query, the syntax of the first query being based on a recommendation-specific language corresponding to a multidimensional recommendation model, wherein the recommendation-specific language further includes commands associated with a data definition language for specifying a multidimensional space, including specification of each dimension of the multidimensional space and elements of each dimension, and wherein the multidimensional space includes at least three dimensions;
defining the multidimensional space using the data definition language, the defining comprising defining the dimensions of the multidimensional space and defining elements of each dimension of the multidimensional space;
translate, by one or more processors associated with the one or more computer servers, the first query into a second query, the syntax of the second query being based on a structured query language including commands to retrieve information stored according to a relational data model, wherein the translating is based on a mapping between the multidimensional recommendation model and the relational data model;
retrieve, by the one or more processors, information from the multidimensional space based on the second query;
generate, by the one or more processors, at least one recommendation based on the retrieved information, wherein the at least one recommendation includes at least one multidimensional suggestion; and
provide, by the one or more processors, the at least one recommendation in response to the first query.

### Claim 17 (depends on 16)

The media of claim 16, wherein the recommendation-specific language comprises a query syntax for retrieving recommendations based on a ranking.

### Claim 18 (depends on 16)

The media of claim 16, wherein the recommendation-specific language comprises a query syntax for restricting recommendation results based on at least one element of at least one dimension of the multidimensional space.

### Claim 19 (depends on 16)

The media of claim 16, wherein the recommendation-specific language comprises a query syntax for aggregating recommendation results based on at least one element of at least one dimension of the multidimensional space.

### Claim 20 (depends on 13)

The system of claim 13, wherein the at least one recommendation is for one or more pieces of information, one or more products, one or more services, or any combination thereof.
