IP Library Granted Patent US 10,235,687
Granted Patent B1
US 10,235,687 · App. 14/214,329 · Granted Mar 19, 2019

Shortest distance to store

Inventors: Nirup Pothireddy (Bentonville, AR); Bharat Khare (Bentonville, AR); Anand Chinnakannan (Bentonville, AR); Erik Cornelsen (Lehi, UT)
Assignee: Walmart Apollo, LLC
G06Q30/0205G06Q30/0201
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,235,687
App. No.
14/214,329
Granted
Mar 19, 2019
Kind
B1
Abstract

The present disclosure extends to methods, systems, and computer program products for generating attribute tables for holding and calculating attributes related to location and distance while a corresponding business plan is in an approval process.

Claims (44)

1. A computer-implemented method for generating attribute tables and determining the shortest distance between a customer and a retail location, comprising:

storing customer location data and retail location data in a distributed memory comprising a plurality of storage locations;

presenting a plurality of nodes, each node comprising a processor configured to perform an operation using the customer location data and/or retail location data;

receiving a request over a network to generate an attribute table corresponding to a business plan, wherein the business plan comprises at least one user input that describes a feature of the business plan;

generating, absent manual intervention from a user, at least one attribute corresponding to the at least one user input;

automatically generating, absent manual intervention from the user, an attribute table having at least one field corresponding to the at least one attribute, wherein the attribute table is built and populated while the business plan is in an approval process by automatically creating at least one join and at least one rollup related to the at least one field;

automatically generating a request for location attribute data corresponding to a customer location and a retail store location from dimension tables comprising location attribute data; and

automatically aggregating the requested location attribute data and determining the shortest distance between the customer location and the retail location;

wherein determining the shortest distance comprises:

performing a map command on the location attribute data for the customer location and the retail location;

calculating a distance between the customer location and the retail location using a haversines formula by determining availability of a first node proximate a first storage location from the plurality of storage locations of the attribute data corresponding to the customer location and a second node proximate a second storage location from the plurality of storage locations of the attribute data corresponding to the retail store location, and distributing the process of calculating distance to the first node or the second node as the nearest available node based on the availability determination by transmitting a node-specific request to only one of the first node or the second node to return the distance between the customer location and the retail location;

performing a shuffle command to order location data relative to distances between the customer location and the retail location;

reducing the ordered location data, the customer location data and the retail store location data for storage in a temporary table;

aggregating the reduced location data and populating the fields within the generated attribute table with the aggregated data; and

generating a report conveying aggregated attribute information corresponding to the business plan including the at least one user input that describes a feature of the business plan and the location attribute data.

2. The method of claim 1 , further comprising discarding location attribute data wherein a distance is outside a predetermined threshold.

3. The method of claim 2 , wherein the predetermined threshold is 100 miles.

4. The method of claim 1 , further comprising receiving a modification of the business plan from a user and generating additional tables corresponding to a received modification of the business plan.

5. The method of claim 4 , further comprising generating an additional request to a database for attribute data corresponding to the modification of the business plan.

6. The method of claim 1 , further comprising aggregating attribute data from a plurality of databases.

7. The method of claim 6 , further comprising automatically generating a plurality of requests for attribute data wherein each request corresponds to a different database.

8. The method of claim 7 , wherein the requests for attribute data are generated to specifically correspond to a characteristic of the database receiving the request.

9. A system comprising one or more processors and a computer-readable media comprising instructions causing the one or more processors to:

store customer location data and retail location data in a distributed memory comprising a plurality of storage locations;

present a plurality of nodes, each node comprising a processor configured to perform an operation using the customer location data and/or retail location data;

receive a request over a network to create an attribute table corresponding to a business plan, wherein the business plan comprises at least one user input that describes a feature of the business plan;

generating, absent manual intervention from a user, at least one attribute corresponding to the at least one user input;

automatically generate, absent manual intervention from the user, an attribute table having at least one field corresponding to the at least one attribute, wherein the attribute table is built and populated while the business plan is in an approval process by automatically creating at least one join and at least one rollup related to the at least one field;

automatically generate a request for location attribute data corresponding to customer location and retail store location from dimension tables comprising location attribute data;

automatically aggregate the requested location attribute data and determine the shortest distance between a customer and a retail location;

wherein determining the shortest distance comprises:

performing a map command on the location attribute data for the customer location and the retail location;

calculating a distance between the customer location and the retail location using a haversines formula by determining availability of a first node proximate a first storage location from the plurality of storage locations of the attribute data corresponding to the customer location and a second node proximate a second storage location from the plurality of storage locations of the attribute data corresponding to the retail store location, and distributing the process of calculating distance to the first node or the second node as the nearest available node based on the availability determination by transmitting a node-specific request to only one of the first node or the second node to return the distance between the customer location and the retail location;

performing a shuffle command to order the location data relative to distances between the customer location and the retail location;

reducing the ordered location data, the customer location data and the retail store location data for storage in a temporary table;

aggregate the reduced location data and populate the fields within the generated attribute table with the aggregated data; and

automatically generate a report conveying the aggregated attribute information corresponding to the business plan including the at least one user input that describes a feature of the business plan and the location attribute data.

10. The system of claim 9 , further comprising discarding location attribute data wherein a distance is outside of a predetermined threshold.

11. The system of claim 10 , wherein the predetermined threshold is 100 miles.

12. The system of claim 9 , further comprising receiving a modification of the business plan from a user and generating additional tables corresponding to a received modification of the business plan.

13. The system of claim 12 , further comprising generating an additional request to a database for attribute data corresponding to the modification of the business plan.

14. The system of claim 9 , further comprising aggregating attribute data from a plurality of databases.

15. The system of claim 14 , further comprising automatically generating a plurality of requests for attribute data wherein each request corresponds to different databases.

16. The system of claim 15 , wherein the requests for attribute data are generated to specifically correspond to a characteristic of the database receiving the request.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2018
From: WAL-MART STORES, INC.
To: WALMART APOLLO, LLC
Reel/Frame 045949/0126 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2014
From: POTHIREDDY, NIRUP; KHARE, BHARAT; CHINNAKANNAN, ANAND; CORNELSEN, ERIK
To: WAL-MART STORES, INC.
Reel/Frame 032532/0458 →