IP Library Granted Patent US 9,898,741
Granted Patent B2
US 9,898,741 · App. 14/334,504 · Granted Feb 20, 2018

Real time analytics system

Inventors: Kevin Siegel (Mountain View, CA); Zhongxiao Jiang (Cupertino, CA); Chuck Byce (Mill Valley, CA); Mayrose Kragas (Foster City, CA)
Assignee: VISA INTERNATIONAL SERVICE ASSOCIATION
G06Q20/4016
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 9,898,741
App. No.
14/334,504
Filed
Jul 17, 2014
Granted
Feb 20, 2018
Kind
B2
Art Unit
3691
USPC
705/44
Abstract

Improved real-time analytics systems are provided. An analytics system may be used to generate transaction scores for transactions. A method may comprise receiving a scoring request associated with a transaction, sending the scoring request to a plurality of scoring models including a production model, wherein each scoring model is operable to generate a transaction score in response to the scoring request, and wherein each scoring model may be implemented using a virtual machine, receiving a transaction score generated by the production model, and sending the transaction score to a server for approval or denial the transaction.

Claims (53)

1. A transaction analytics system comprising:

one or more processors; and

a non-transitory computer-readable storage medium comprising code executable by the one or more processors for implementing a method comprising:

receiving, via a network interface, a scoring request associated with a transaction;

sending the scoring request to a plurality of scoring models, including a production mode, that are executing from system memory of the one or more processors, wherein each scoring model generates a transaction score in response to the scoring request and is implemented using a different virtual machine of a plurality of virtual machines, wherein each of the plurality of scoring models is associated with a virtual IP address of a plurality of virtual IP addresses in the system memory, and wherein the virtual IP address associated with each scoring model is used by the one or more processors to determine a destination of the corresponding transaction score generated by the corresponding scoring model;

receiving a first transaction score generated by the production model associated with a first virtual IP address of the plurality of virtual IP addresses;

using the first virtual IP address to identify the destination of the first transaction score as a server that approves or denies the transaction;

sending the first transaction score to the server for approval or denial of the transaction; and

swapping the first virtual IP address that is associated with a first scoring model with a second virtual IP address that is associated with a second scoring model to promote the second scoring model to be the production model.

2. The transaction analytics system of claim 1 , wherein the plurality of scoring models includes a testing model, and wherein a transaction score generated by the testing model is stored in a testing database.

3. The transaction analytics system of claim 1 , further comprising:

determining performance data for the scoring models in the plurality of scoring models;

determining that a model other than the production model is the best performing model; and

promoting the best performing model to be the production model.

4. The transaction analytics system of claim 3 , wherein promoting the best performing model comprises modifying a virtual IP address associated with the virtual machine implementing the best performing model.

5. The transaction analytics system of claim 3 , wherein the performance data comprises at least one of: a model's predictive accuracy, a model's computational efficiency, and a model's stability.

6. The transaction analytics system of claim 3 , wherein the performance data is used to update at least one of the plurality of scoring models.

7. The transaction analytics system of claim 3 , wherein determining performance data for the scoring models is performed at regular time intervals.

8. The transaction analytics system of claim 1 , wherein the scoring request comprises a client identifier, wherein the method further comprises determining that a model in the plurality of scoring models is the production model corresponding to the client identifier.

9. A system comprising:

transaction analytics system of claim 1 ; and

a computer comprising:

a second processor; and

a second non-transitory computer-readable storage medium comprising code executable by the second processor for implementing a second method comprising sending the scoring request.

10. A computer-implemented method comprising:

receiving, by a computer, via a network interface, a scoring request associated with a transaction;

sending, by the computer, the scoring request to a plurality of scoring models, including a production mode, that are executed from system memory of the computer, wherein each scoring model generates a transaction score in response to the scoring request and is implemented using a different virtual machine of a plurality of virtual machines, wherein each of the plurality of scoring models is associated with a virtual IP address of a plurality of virtual IP addresses in the system memory, and wherein the virtual IP address associated with each scoring model is used by the computer to determine a destination of the corresponding transaction score generated by the corresponding scoring model;

receiving, by the computer, a first transaction score generated by the production model associated with a first virtual IP address of the plurality of virtual IP addresses;

using the first virtual IP address to identify the destination of the first transaction score as a server that approves or denies the transaction;

sending, by the computer, the first transaction score to the server for approval or denial of the transaction; and

swapping the first virtual IP address that is associated with a first scoring model with a second virtual IP address that is associated with a second scoring model to promote the second scoring model to be the production model.

11. The method of claim 10 , wherein the plurality of scoring models includes a testing model, and wherein a transaction score generated by the testing model is stored in a testing database.

12. The method of claim 10 , further comprising:

determining, by the computer, performance data for the scoring models in the plurality of scoring models;

determining, by the computer, that a model other than the production model is the best performing model; and

promoting, by the computer, the best performing model to be the production model.

13. The method of claim 12 , wherein promoting the best performing model comprises modifying a virtual IP address associated with the virtual machine implementing the best performing model.

14. The method of claim 12 , wherein the performance data comprises at least one of: a model's predictive accuracy, a model's computational efficiency, and a model's stability.

15. The transaction analytics system of claim 3 , wherein the performance data is used to update at least one of the plurality of scoring models.

16. The method of claim 12 , wherein determining performance data for the scoring models is performed at regular time intervals.

17. The method of claim 10 , wherein the scoring request comprises a client identifier, wherein the method further comprises determining, by the computer, that a model in the plurality of scoring models is the production model corresponding to the client identifier.

18. The transaction analytics system of claim 1 , the method further comprising;

subsequent to swapping the first virtual IP address with the second virtual IP address:

receiving a subsequent scoring request;

sending the subsequent scoring request to the second scoring model;

receiving a second transaction score generated by the second scoring model acting as the production model; and

sending the second transaction score to the server for approval or denial of the transaction.

19. The method of claim 10 , further comprising:

subsequent to swapping the first virtual IP address with the second virtual IP address:

receiving a subsequent scoring request;

sending the subsequent scoring request to the second scoring model;

receiving a second transaction score generated by the second scoring model acting as the production model; and

sending the second transaction score to the server for approval or denial of the transaction.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2015
From: SIEGEL, KEVIN; BYCE, CHUCK; KRAGAS, MAYROSE; JIANG, ZHONGXIAO
To: VISA INTERNATIONAL SERVICE ASSOCIATION
Reel/Frame 034949/0303 →
Continuity (2)
Provisional Application 61847512 · Jul 17, 2013
Related Publication 20150026061A1 · Jan 22, 2015