Patents by Inventor Michael Fortson
Michael Fortson has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11650967Abstract: Among other things, in one aspect, in general, a system for managing data in a data storage system includes a plurality of index nodes each storing a map of entries, each entry of the map including an identifier corresponding to a particular portion of data stored in the data storage system, and metadata indicating a location where the particular portion of data is stored in the data storage system, and one or more supernodes configured to return an identification of an index node that recently submitted a request for a particular identifier associated with at least one of the portions of data.Type: GrantFiled: April 2, 2018Date of Patent: May 16, 2023Assignee: Red Hat, Inc.Inventors: Jonathan Coburn, Michael Fortson
-
Patent number: 11409425Abstract: A conversation-based computing system may include a back-end computing module, a design module, and an execution module. The design module may be configured to provide a graphical user interface through which different conversation models are defined in metadata. Each model may include a topic containing respective goals, where the goals are associated with respective conversation flows that define respective dialogs that directs conversations toward the associated goals. Each model may also define references to topic-specific content stored in the back-end module. The execution module may be configured to execute a particular model between the system and a front-end computing device and set up integration of a live agent into the model. Execution of the model may involve, in part, carrying out, in an at least partially-automated fashion, the flow for the model according to the dialog, the topic-specific content corresponding to the model, and communicating using a specific communication protocol.Type: GrantFiled: December 19, 2019Date of Patent: August 9, 2022Assignee: ServiceNow, Inc.Inventors: Rahim Yaseen, Xiaomei Zhang, Hasan Rizvi, Sean Frogner, Muruganantham Chinnananchi, Michael Fortson
-
Publication number: 20200218766Abstract: A conversation-based computing system may include a back-end computing module, a design module, and an execution module. The design module may be configured to provide a graphical user interface through which different conversation models are defined in metadata. Each model may include a topic containing respective goals, where the goals are associated with respective conversation flows that define respective dialogs that directs conversations toward the associated goals. Each model may also define references to topic-specific content stored in the back-end module. The execution module may be configured to execute a particular model between the system and a front-end computing device and set up integration of a live agent into the model. Execution of the model may involve, in part, carrying out, in an at least partially-automated fashion, the flow for the model according to the dialog, the topic-specific content corresponding to the model, and communicating using a specific communication protocol.Type: ApplicationFiled: December 19, 2019Publication date: July 9, 2020Inventors: Rahim Yaseen, Xiaomei Zhang, Hasan Rizvi, Sean Frogner, Muruganantham Chinnananchi, Michael Fortson
-
Patent number: 10466885Abstract: A conversation-based computing system may include a back-end computing module, a design module, and an execution module. The design module may be configured to provide a graphical user interface through which different conversation models are defined in metadata. Each model may include a topic containing respective goals, where the goals are associated with respective conversation flows that define respective dialogs that directs conversations toward the associated goals. Each model may also define references to topic-specific content stored in the back-end module. The execution module may be configured to execute a particular model between the system and a front-end computing device and set up integration of a live agent into the model. Execution of the model may involve, in part, carrying out, in an at least partially-automated fashion, the flow for the model according to the dialog, the topic-specific content corresponding to the model, and communicating using a specific communication protocol.Type: GrantFiled: December 27, 2017Date of Patent: November 5, 2019Assignee: ServiceNow, Inc.Inventors: Rahim Yaseen, Xiaomei Zhang, Hasan Rizvi, Sean Frogner, Muruganantham Chinnananchi, Michael Fortson
-
Patent number: 10452251Abstract: A conversation-based computing system may include a back-end computing module, a design module, and an execution module. The design module may be configured to provide a graphical user interface through which different conversation models are defined in metadata. Each model may include a topic containing respective goals, where the goals are associated with respective conversation flows that define respective dialogs that directs conversations toward the associated goals. Each model may also define references to topic-specific content stored in the back-end module. The execution module may be configured to execute a particular model between the system and a front-end computing device and set up integration of a live agent into the model. Execution of the model may involve, in part, carrying out, in an at least partially-automated fashion, the flow for the model according to the dialog, the topic-specific content corresponding to the model, and communicating using a specific communication protocol.Type: GrantFiled: September 27, 2017Date of Patent: October 22, 2019Assignee: ServiceNow, Inc.Inventors: Rahim Yaseen, Xiaomei Zhang, Hasan Rizvi, Sean Frogner, Muruganantham Chinnananchi, Michael Fortson
-
Publication number: 20180341396Abstract: A conversation-based computing system may include a back-end computing module, a design module, and an execution module. The design module may be configured to provide a graphical user interface through which different conversation models are defined in metadata. Each model may include a topic containing respective goals, where the goals are associated with respective conversation flows that define respective dialogs that directs conversations toward the associated goals. Each model may also define references to topic-specific content stored in the back-end module. The execution module may be configured to execute a particular model between the system and a front-end computing device and set up integration of a live agent into the model. Execution of the model may involve, in part, carrying out, in an at least partially-automated fashion, the flow for the model according to the dialog, the topic-specific content corresponding to the model, and communicating using a specific communication protocol.Type: ApplicationFiled: December 27, 2017Publication date: November 29, 2018Inventors: Rahim Yaseen, Xiaomei Zhang, Hasan Rizvi, Sean Frogner, Muruganantham Chinnananchi, Michael Fortson
-
Publication number: 20180341395Abstract: A conversation-based computing system may include a back-end computing module, a design module, and an execution module. The design module may be configured to provide a graphical user interface through which different conversation models are defined in metadata. Each model may include a topic containing respective goals, where the goals are associated with respective conversation flows that define respective dialogs that directs conversations toward the associated goals. Each model may also define references to topic-specific content stored in the back-end module. The execution module may be configured to execute a particular model between the system and a front-end computing device and set up integration of a live agent into the model. Execution of the model may involve, in part, carrying out, in an at least partially-automated fashion, the flow for the model according to the dialog, the topic-specific content corresponding to the model, and communicating using a specific communication protocol.Type: ApplicationFiled: September 27, 2017Publication date: November 29, 2018Inventors: Rahim Yaseen, Xiaomei Zhang, Hasan Rizvi, Sean Frogner, Muruganantham Chinnananchi, Michael Fortson
-
Patent number: 10078648Abstract: In general, in one aspect, a method for managing data in a data storage system includes receiving identifiers corresponding to different respective entries of a map stored in the data storage system, with a particular identifier corresponding to a particular entry of the map, the particular entry including a computed value corresponding to a particular portion of data stored in the data storage system and metadata indicating a location where the particular portion of data is stored in the data storage system, selecting, according to a first selection criterion, at least some of the identifiers for storage in a first portion of an index, and selecting, according to a second selection criterion, at least some of the identifiers for storage in a second portion of the index.Type: GrantFiled: April 27, 2015Date of Patent: September 18, 2018Assignee: Red Hat, Inc.Inventors: Michael Fortson, Jonathan Coburn, Michael Sclafani, Thomas Jaskiewicz, Assar Westerlund, Hooman Vassef
-
Publication number: 20180225313Abstract: Among other things, in one aspect, in general, a system for managing data in a data storage system includes a plurality of index nodes each storing a map of entries, each entry of the map including an identifier corresponding to a particular portion of data stored in the data storage system, and metadata indicating a location where the particular portion of data is stored in the data storage system, and one or more supernodes configured to return an identification of an index node that recently submitted a request for a particular identifier associated with at least one of the portions of data.Type: ApplicationFiled: April 2, 2018Publication date: August 9, 2018Inventors: Jonathan Coburn, Michael Fortson
-
Patent number: 9953042Abstract: Among other things, in one aspect, in general, a system for managing data in a data storage system includes a plurality of index nodes each storing a map of entries, each entry of the map including an identifier corresponding to a particular portion of data stored in the data storage system, and metadata indicating a location where the particular portion of data is stored in the data storage system, and one or more supernodes configured to return an identification of an index node that recently submitted a request for a particular identifier associated with at least one of the portions of data.Type: GrantFiled: March 1, 2013Date of Patent: April 24, 2018Assignee: Red Hat, Inc.Inventors: Jonathan Coburn, Michael Fortson
-
Patent number: 9092151Abstract: In one aspect, in general, a method for managing data includes receiving, at a data deduplication engine of a computer system, data to be stored in a data storage system, computing a first value corresponding to at least one portion of the received data, determining that the first value matches a second value stored in a collection of identifiers, each identifier corresponding to a particular portion of data stored in the data storage system, each identifier comprising a computed value corresponding to the particular portion of data and including metadata indicating a location where the particular portion of data is being stored in the data storage system, and based on the determination that the first value matches a second value stored in the collection of identifiers, reallocating one or more physical locations from corresponding one or more virtual locations to different respective one or more virtual locations.Type: GrantFiled: March 13, 2013Date of Patent: July 28, 2015Assignee: Permabit Technology CorporationInventors: Jered J. Floyd, Michael Fortson, Assar Westerlund, Jonathan Coburn
-
Patent number: 9069707Abstract: In general, in one aspect, a method for managing data in a data storage system includes receiving identifiers corresponding to different respective entries of a map stored in the data storage system, with a particular identifier corresponding to a particular entry of the map, the particular entry including a computed value corresponding to a particular portion of data stored in the data storage system and metadata indicating a location where the particular portion of data is stored in the data storage system, selecting, according to a first selection criterion, at least some of the identifiers for storage in a first portion of an index, and selecting, according to a second selection criterion, at least some of the identifiers for storage in a second portion of the index.Type: GrantFiled: November 3, 2011Date of Patent: June 30, 2015Assignee: Permabit Technology Corp.Inventors: Michael Fortson, Jonathan Coburn, Michael Sclafani, Thomas Jaskiewicz, Assar Westerlund, Hooman Vassef
-
Patent number: 8898107Abstract: In one aspect, in general, a method for managing data in a data storage system comprises receiving data to be stored in the data storage system, computing values corresponding to different respective portions of the received data, generating identifiers corresponding to different respective portions of the received data, with an identifier corresponding to a particular portion of data including the computed value corresponding to the particular portion of data and metadata indicating a location where the particular portion of data is being stored in the data storage system, and storing at least some of the identifiers in an index until the index reaches a predetermined size.Type: GrantFiled: May 6, 2013Date of Patent: November 25, 2014Assignee: Permabit Technology Corp.Inventors: Jered J. Floyd, Michael Fortson, Assar Westerlund, Jonathan Coburn
-
Patent number: 8463742Abstract: Managing data in a data storage system includes: receiving data to be stored in the data storage system; computing values corresponding to different respective portions of the received data; generating identifiers corresponding to different respective portions of the received data, with an identifier corresponding to a particular portion of data including the computed value corresponding to the particular portion of data and metadata indicating a location where the particular portion of data is being stored in the data storage system; storing at least some of the identifiers in an index until the index reaches a predetermined size; and in response to determining that a first identifier corresponding to a first portion of data, received after the index reached the predetermined size, was not already stored in the index before the first portion of data was received, storing the first identifier in the index and designating for removal at least a second identifier corresponding to a second portion of data to beType: GrantFiled: May 27, 2011Date of Patent: June 11, 2013Assignee: Permabit Technology Corp.Inventors: Jered J. Floyd, Michael Fortson, Assar Westerlund, Jonathan Coburn
-
Patent number: 7457800Abstract: A method for constructing an index suitable for indexing a large set of records identified by long generally randomly distributed record names and for answering membership queries about the set, the method comprising assigning each different record a different record name, determining that a new record name is not already represented in the index by checking an entry in a first level index that is shorter than the complete new record name, and determining that a queried record name is already represented in the index by determining that the queried record name is represented in a second level index that contains enough information to reconstruct the complete queried record name.Type: GrantFiled: October 6, 2005Date of Patent: November 25, 2008Assignee: Burnside Acquisition, LLCInventors: Norman H. Margolus, Edwin Olson, Michael Sclafani, J. Corwin Coburn, Michael Fortson
-
Patent number: 7457813Abstract: An index is constructed that is suitable for indexing a large set of records identified by randomly distributed record names and for answering membership queries about the set. The index has more than one level and the first-level index typically resides in RAM. Like a Bloom Filter, the first level index provides a non-membership indication with certainty and a membership indication with a controlled probability of error. Unlike a Bloom filter, entries in the first level index correspond uniquely to distinct records. Use is made of the statistical properties of a sorted list of random numbers in order to represent the first level index compactly.Type: GrantFiled: October 6, 2005Date of Patent: November 25, 2008Assignee: Burnside Acquisition, LLCInventors: Norman H. Margolus, Edwin Olson, Michael Sclafani, J. Corwin Coburn, Michael Fortson
-
Publication number: 20060116990Abstract: A method for constructing an index suitable for indexing a large set of records identified by long generally randomly distributed record names, and for answering membership queries about the set, the method comprising adding a new record to the set and assigning the new record a new record name using a process designed to produce names where at least a portion of each name is at least approximately random, determining that the new record name is not already represented in the index by checking a first level index that does not contain information sufficient to reconstruct the complete record names of records that have already been added to the index, abbreviating the new record name to form a new abbreviated name that is shorter than the new record name but that is sufficient to distinguish it from record names already represented in the index, combining the new abbreviated name with an abbreviated name of a record already represented in the first level index, to form a combined record name which is shorter tType: ApplicationFiled: October 6, 2005Publication date: June 1, 2006Inventors: Norman Margolus, Edwin Olson, Michael Sclafani, J. Coburn, Michael Fortson
-
Publication number: 20060112112Abstract: A method for constructing an index suitable for indexing a large set of records identified by long generally randomly distributed record names, and for answering membership queries about the set, the method comprising adding a new record to the set and assigning the new record a new record name using a process designed to produce names where at least a portion of each name is at least approximately random, determining that the new record name is not already represented in the index by checking a first level index, combining the new record name with record name information already represented in the index to form a combined record name which is shorter than the new record name, and adding the combined record name to the first level index to form a new first level index entry that represents the new record, wherein the first level index does not contain information sufficient to conclude that the new record name has been added to the index, wherein each different record in the set is assigned a different recordType: ApplicationFiled: October 6, 2005Publication date: May 25, 2006Inventors: Norman Margolus, Edwin Olson, Michael Sclafani, J. Coburn, Michael Fortson
-
Patent number: RE45350Abstract: A method for constructing an index suitable for indexing a large set of records identified by long generally randomly distributed record names and for answering membership queries about the set, the method comprising assigning each different record a different record name, determining that a new record name is not already represented in the index by checking an entry in a first level index that is shorter than the complete new record name, and determining that a queried record name is already represented in the index by determining that the queried record name is represented in a second level index that contains enough information to reconstruct the complete queried record name.Type: GrantFiled: November 24, 2010Date of Patent: January 20, 2015Assignee: Permabit Technology CorporationInventors: Norman H. Margolus, Edwin Olson, Michael Sclafani, J. Corwin Coburn, Michael Fortson
-
Patent number: D849756Type: GrantFiled: May 23, 2017Date of Patent: May 28, 2019Assignee: SERVICENOW, INCInventors: Michael Fortson, Rahim Yaseen, Hasan Rizvi