US Pat. No. 10,713,384

METHODS AND APPARATUS FOR TRANSFORMING AND STATISTICALLY MODELING RELATIONAL DATABASES TO SYNTHESIZE PRIVACY-PROTECTED ANONYMIZED DATA

Massachusetts Institute o...

1. A computer-implemented method for storing and retrieving data in a computer memory to improve the functionality of a computer comprising the computer memory by protecting the privacy of first data contained in a relational database stored in the computer memory, the method comprising:A) transforming the relational database to provide a restructured relational database and generate, via at least one first processor of the computer, a statistical model of the restructured relational database; and
B) synthesizing, via the at least one first processor of the computer or another processor of another computer, anonymized data based on the statistical model generated in A) of the restructured relational database, wherein the anonymized data statistically mimics but does not duplicate at least a portion of the first data in the relational database and thereby protects the privacy of at least the portion of the first data.

US Pat. No. 10,713,383

METHODS AND SYSTEMS FOR ANONYMIZING GENOME SEGMENTS AND SEQUENCES AND ASSOCIATED INFORMATION

1. A method for safeguarding at least some associated information that is associated with at least some of one or more genome sequences by processing the at least some of the one or more genome sequences and the at least some of the associated information, wherein the method comprises the steps of:(a) receiving the at least some of the one or more genome sequences and the at least some of the associated information; wherein the one or more genome sequences and the associated information are denoted as original data;
(b) segmenting the at least some of the one or more genome sequences into one or more segments of nucleic acid sequences;
(c) organizing aspects of the at least some of the associated information into organizational units by one or more of: dividing the at least some of the associated information into subfields, categorizing the at least some of the associated information into categories, or generalizing the at least some of the associated information into different subfields;
(d) generating a linkage record or updating an existing linkage record; wherein the linkage record or the existing linkage record comprises a plurality of unique linkage record identifiers, wherein each unique linkage record identifier selected from the plurality of unique linkage record identifiers points to a specific organizational unit selected from the organizational units or points to a given segment of nucleic acid sequence selected from the one or more segments of nucleic acid sequences; the linkage record or the existing linkage record is a set of instructions for mapping one or more of the at least some of the one or more genome sequences, or the one or more segments, to the at least some of the associated information, the organizational units, the subfields, the categories, or the different subfields; and
(e) non-transitory storing in one or more storage units the linkage record or the existing linkage record and also one or more of: the at least some of the one or more genome sequences, the at least some of the associated information, the one or more segments, or at least some of the organizational units.

US Pat. No. 10,713,382

ENSURING CONSISTENCY BETWEEN CONFIDENTIAL DATA VALUE TYPES

Microsoft Technology Lice...

1. A system comprising:a non-transitory computer-readable medium having instructions stored thereon, which, when executed by a processor, cause the system to:
obtain an anonymized set of confidential data values of a first confidential data type;
obtain an anonymized set of confidential data values of a second confidential data type;
determine a multiplier following a log-normal distribution for the anonymized set of confidential data values of the first confidential data type;
perform smoothing independently for the anonymized set of confidential data values of the first confidential data type and the multiplier, wherein the smoothing comprises modification of at least one confidential data value of the first confidential data type and the multiplier; and
compute percentiles for the anonymized set of confidential data values of the second confidential data type using the smoothed anonymized set of confidential data values of the first confidential data type and the smoothed multiplier.

US Pat. No. 10,713,381

METHOD AND APPARATUS FOR SECURELY CALLING FINGERPRINT INFORMATION, AND MOBILE TERMINAL

GUANGDONG OPPO MOBILE TEL...

1. A method for securely calling fingerprint information, comprising:generating a first unique identification of an application corresponding to a unique identification public key of the application when installing the application;
storing, using a TrustZone application having administrator rights required to access a security zone of a TrustZone environment, the first unique identification in the security zone of the TrustZone environment;
receiving a request for calling the fingerprint information sent by a requesting application;
accessing, using the TrustZone application, the security zone of the TrustZone environment to obtain the first unique identification, and matching a second unique identification, received from the requesting application, with the first unique identification, and determining that the requesting application is a legitimate application when the second unique identification is matched with the first unique identification successfully; and
allowing the requesting application to call the fingerprint information when it is determined that the requesting application is the legitimate application.

US Pat. No. 10,713,380

SECURE DATA JOINS IN A MULTIPLE TENANT DATABASE SYSTEM

Snowflake Inc., San Mate...

1. A system, comprising:a memory; and
one or more processors operatively coupled to the memory, the one or more processors to:
determine data stored in a first account to be compared with data stored in a second account;
determine a function for generating a secure join key, wherein the secure join key comprises a hash string that hashes a first salted value from the first account and a second salted value from a second account, and wherein the secure join key is based on:
a data entry of the first account and a salt string associated with the first account, the data entry of the first account and the salt string associated with the first account included in the first salted value; and
a data entry of the second account and a salt string associated with the second account, the data entry of the second account and the salt string associated with the second account included in the second salted value, wherein original non-hashed or non-salted data cannot be identified by the first account or the second account based on the secure join key; and
provide the secure join key to at least one of the first account or the second account.

US Pat. No. 10,713,376

FINE GRAIN SECURITY FOR ANALYTIC DATA SETS

salesforce.com, inc., Sa...

1. A method comprising:extracting fields of data from one or more secured, primary database sources on a batch basis;
assigning field level security to the fields, wherein the assigning comprises:
identifying a first subset of the fields with user selectable inheritance, wherein the field level security for each field of the first subset of the fields is determined based at least in part on inheriting security from one or more source fields associated with the first subset of the fields extracted from the one or more secured, primary database sources; and
identifying a second subset of the fields with pinnable inheritance, wherein the field level security for each field of the second subset of the fields is determined based at least in part on a user pinning inheritance of field level security for the second subset of the fields to reference fields, wherein the reference fields are bound to one or more attributes in the one or more secured, primary database sources and are distinct from the second subset of the fields;
compiling the fields with the assigned field level security to obtain compiled fields, wherein the compiled fields support real-time querying by a dashboard for display in a graphical user interface (GUI);
storing the compiled fields in one or more analytical, read-only databases, wherein the one or more analytical, read-only databases are distinct from the one or more secured, primary database sources;
receiving a request for query results from a user; and
producing, for display in the GUI, the query results from the compiled fields supporting the real-time querying based at least in part on the assigned field level security and subject to field level security permissions of the user.

US Pat. No. 10,713,375

DATABASE PUBLIC INTERFACE

SAP SE, Walldorf (DE)

1. A computerized method for facilitating access in a database system, the database system comprising a first schema providing a first persistency component for a first application and a second schema providing a second persistency component for a second application, the computerized method comprising:generating a first persistency interface in the database system, the first persistency interface comprising a first table link, the first table link comprising an updatable projection view of a first table of the first schema in the second schema, the database system comprising one or more hardware processors and one or more hardware data structures;
receiving, from the first application, a role for the first persistency interface, the role for first the first persistency interface describing a type of access to the first table for the second application via the first table link for a first user;
generating a second persistency interface in the database system, the second persistency interface comprising a second table link, the second table link comprising an updateable projection view of the first table of the first schema in the second schema;
receiving, from the first application, a role for the second persistency interface, the role for the second persistency interface describing a type of access to the first table for the second application via the second table link for a second user, wherein the type of access for the first table for the second application via the second table link is different than the type of access to the first table for the second application via the first table link;
receiving, by the database system, a request from the second application to perform an operation on the updatable projection view of the first table for the first user; and
responsive to the request, executing the operation on the first table at the first schema using the first table link.

US Pat. No. 10,713,374

RESOLVING DETECTED ACCESS ANOMALIES IN A DISPERSED STORAGE NETWORK

PURE STORAGE, INC., Moun...

1. A method for execution by a storage unit that includes a processor, the method comprises:receiving an access request from a requestor;
detecting an access anomaly of the access request;
queueing the access request for processing in response to detecting the access anomaly;
issuing a first anomaly detection indicator to a plurality of other storage units;
initiating a secondary authentication process with the requestor;
receiving a secondary authentication response from the requestor; and
processing the access request when the secondary authentication response is favorable;
wherein queuing the access request includes:
storing the access request in a local memory; and
associating the access request with at least one other queued access request, wherein the at least one other queued access request includes a request for a same encoded data slice;
wherein processing the access request includes:
extracting the at least one other queued access request associated with the access request; and
processing the access request and the at least one other queued access request in a sequence in accordance with a request type of the access request; and
wherein the access request and the at least one other queued access request include a write request, a commit request, and a finalize request of a three-phase storage process.

US Pat. No. 10,713,373

COMPUTING SYSTEM WITH INFORMATION STORAGE MECHANISM AND METHOD OF OPERATION THEREOF

LifeSite, Inc., Mountain...

1. A computing system comprising:a control unit configured to:
receive user information through a vault user account;
process the user information for storage in an information vault including generating an information chunk by dividing, the user information;
implement a security protocol for the vault user account including to determine a security breach to the vault user account based on receiving an electronic communication from a user electronic contact address addressed to a breach detection contact address; and
a storage unit, coupled to the control unit, configured to store the information chunk of the user information.

US Pat. No. 10,713,372

SYSTEM FOR MONITORING INCONTINENT PATIENTS

BioLink Systems, LLC, Co...

1. A method of structuring and coordinating a residential and patient management system, comprising:a plurality of access points continually receiving a plurality of resident data sent by a plurality of modules in which there is one module per resident;
the plurality of access points continually sending the resident data to a server;
the server analyzing the data and continually updating a database, the database containing a variety of information about each resident as well as about a facility containing the residents; and
a web interface formatting and displaying the information read from the database;
safeguarding HIPAA (Health Insurance Portability and Accountability Act) and medical information such that from a patient garment through the module through the access points to the server there is no information transmitted that can be related to any specific patient, instead where everything is abstracted; thereby
avoiding HIPAA violations and/or private medical data breaches.

US Pat. No. 10,713,371

COLLECTION FOLDER FOR COLLECTING FILE SUBMISSIONS WITH COMMENTS

DROPBOX, INC., San Franc...

1. A method comprising:generating, by a content management system, a link to a collection folder;
distributing, by the content management system, the link to the collection folder to a submitter client device associated with a submitter;
receiving, by the content management system, a file selected by the submitter and a first comment input by the submitter based on the submitter accessing the link to the collection folder on the submitter client device;
associating the first comment with the file within the content management system by generating metadata referencing a first storage location of the first comment and associating the metadata with the file; and
storing the file associated with the metadata in the collection folder.

US Pat. No. 10,713,370

INFORMATION RIGHTS MANAGEMENT THROUGH EDITORS IMPLEMENTED IN A BROWSER

Seclore Technology Privat...

1. A computer implemented system for enforcing or managing information right management (IRM) capability, comprising:at least one user device, wherein the user device is a wireless telecommunications device, comprising:
a browser having an editor module, wherein the editor module includes IRM capabilities configured to view digital content, edit the digital content, print the digital content, share the digital content and watermark a user's identity, unprotect the digital content if protected, protect the digital content if unprotected and record the user's activity on the digital content corresponding to a user permission; and
a server, comprising:
a database to store a plurality of IRM rights data and corresponding user permissions;
an identifier system to identify the user;
an editor module control software to allow the user to view, edit, copy, paste and print the digital content based on the user permissions defined for any protected document within the user device or downloaded through the Internet;
a delivery system to deliver to the editor module of the browser IRM capabilities corresponding to the user permission within the browser;
wherein, when the user edits the digital content, the edited digital content is uploaded to and stored in a data storage system;
wherein the IRM capabilities are enforced through any one of a browser, a modified browser, a plugin in browser, a script running on a browser, an embedded browser control, and a remote screen replication;
wherein the user device is connected to the server over a network.

US Pat. No. 10,713,369

METHOD AND DEVICE FOR ACCESS CONTROL

ZTE CORPORATION, Shenzhe...

1. A method for access control which is performed by a hardware processor, and the method comprises:a group of tasks are executed, controlling an access of a subject to an object according to operation permission corresponding to each of the tasks in the group of tasks;
wherein before the group of tasks are executed, the method further comprises: obtaining the operation permission corresponding to each of the tasks in the group of tasks according to a preset correspondence relationship between each of the tasks in the group of tasks and the operation permission;
wherein obtaining the operation permission corresponding to each of the tasks in the group of tasks according to the preset correspondence relationship between each of the tasks in the group of tasks and the operation permission comprises:
obtaining a role corresponding to the subject executing each of the tasks according to a preset correspondence relationship between the subject and the role;
obtaining a first operation permission corresponding to the role according to a preset correspondence relationship between the role and the operation permission; and
taking an intersection of a second operation permission corresponding to the task in the preset correspondence relationship between each of the tasks in the group of tasks and the operation permission, and the first operation permission corresponding to the obtained role corresponding to the subject executing the task as the operation permission for each of the tasks.

US Pat. No. 10,713,368

APPLICATION OF SECURITY PARAMETERS FOR CONTENT

Alfresco Software, Inc., ...

1. A method comprising:receiving, through a graphical user interface on a display device associated with a content management system, a selection to create a restriction group to be added to a set of restriction groups, the created restriction group being associated with a graphical representation in the graphical user interface;
in response to selecting the graphical representation, displaying, on the graphical user interface on the display device, an option to create one or more restriction marks associated with the created restriction group,
the restriction group identifying an attribute associated with a user of one or more content items stored in the content management system, and
a restriction mark identifying one or more categories for the attribute identified by the restriction group, the one or more categories being configured to allow or limit user access to one or more content items associated with the restriction mark;
receiving, through the graphical user interface on the display, a selection of one or more restriction marks for being assigned to a content item stored in the content management system, the content item having associated metadata stored in the content management system;
updating metadata associated with the content item, the updated metadata indicating that the selection of the one or more restriction marks is assigned to the content item; and
updating a profile associated with a user to include the one or more restriction marks.

US Pat. No. 10,713,367

SECURE ELECTRONIC MAIL SYSTEM

AppRiver Canada ULC, Hal...

1. A computer-implemented method of securely communicating e-mail messages, comprising:receiving, from a server system providing a secure e-mail service, an e-mail message from a sender;
receiving, from a user, an input to either forward or reply to the e-mail message;
providing data corresponding to the user input to the server system;
receiving a determination, by the server system, whether the user input comprises a request to forward or reply to the e-mail message via the secure e-mail service; and
receiving a determination, by the server system, whether the user input comprises a request to forward or reply to the e-mail message via an e-mail service different from the secure e-mail service, the different e-mail service lacking security features of the secure e-mail service, wherein
based on a determination that the user input comprises a request to forward or reply to the e-mail message via the secure e-mail service, the server system proceeds with forwarding or replying to the e-mail message; and
based on a determination that the user input comprises a request to forward or reply to the e-mail message via the different e-mail service, when enforcing a service-level option, the server system prevents the forwarding or replying via the different e-mail service and allows the forward or reply to the e-mail message to be sent via the secure e-mail service; and
based on a determination that the user input comprises a request to forward or reply to the e-mail message via the different e-mail service, when not enforcing the service-level option, the server system notifies the sender that the security features of the secure-email service will be lost and sends the forward or reply to the e-mail message via the different e-mail service.

US Pat. No. 10,713,366

SYSTEMS AND METHODS FOR AUTOMATED THREAT MODEL GENERATION FROM THIRD PARTY DIAGRAM FILES

ThreatModeler Software In...

1. A threat modeling method, comprising:providing one or more databases, the one or more databases comprising:
a plurality of threat model components stored therein; and
a plurality of threats stored therein, wherein each of the threats is associated with at least one of the threat model components through the one or more databases;
providing one or more mapping files communicatively coupled with the one or more databases, the one or more mapping files correlating the threat model components with visual diagram components of a third party software application (hereinafter “third party diagram components”); and
in response to receiving one or more user inputs, using one or more user interfaces displayed on one or more computing devices communicatively coupled with the one or more databases:
using the one or more computing devices, reading a data file generated by the third party software application, the data file comprising a subset of the third party diagram components, the data file defining one or more relationships between the subset of third party diagram components;
determining using the one or more computing devices, for the subset of third party diagram components, correlated threat model components as defined in the one or more mapping files;
displaying on the one or more user interfaces a relational diagram of one of a system, an application, and a process, using visual representations of the threat model components correlated with the subset of third party diagram components, the relational diagram defining a threat model; and
generating, using the one or more computing devices, and displaying, on the one or more user interfaces, a threat report displaying each threat that is associated through the one or more databases with one of the threat model components included in the threat model.

US Pat. No. 10,713,365

TESTING CLOUD APPLICATION INTEGRATIONS, DATA, AND PROTOCOLS

ORACLE INTERNATIONAL CORP...

1. A computer-implemented method comprising, at a computer system of a security management system:obtaining activity data from a service provider system, wherein the activity data includes a list of actions performed during use of a cloud service, wherein actions in the list of actions are performed by one or more users associated with a tenant, wherein the service provider system provides the tenant with a tenant account, and wherein the tenant account enables the one or more users to use the cloud service;
parsing an action from the list of actions to determine a list of fields included in the action;
identifying a field from the list of fields, wherein an identity of the field describes data included in the field;
generating a template for the action, the template including a data structure storing the identity of the field, wherein the template further includes a data structure describing a format of the action;
generating a configuration associated with a test scenario, the configuration including a reference to the template and a description of an action associated with the test scenario;
generating a simulated action for the action described in the configuration, wherein generating the simulated action includes using the template to determine fields for the action and an output structure for the action, and wherein generating the simulated action includes using a test description to select values for the fields;
generating simulated activity data that includes the simulated action, wherein the simulated activity data has a same format as the activity data; and
inputting the simulated activity data into the security management system, wherein the security management system operates on the simulated activity data to determine whether actions included in the simulated activity data include use of the cloud service that constitutes a security risk, and wherein the simulated action causes the security management system to perform a particular operation, wherein the particular operation is associated with the test scenario.

US Pat. No. 10,713,363

SYSTEM AND METHOD OF CONFIGURING INFORMATION HANDLING SYSTEMS

Dell Products L.P., Roun...

1. An information handling system, comprising:at least one processor;
a memory medium that is coupled to the at least one processor and that stores information handling system firmware, executable by the at least one processor; and
a remote access controller that is coupled to the at least one processor;
wherein the remote access controller is configured to:
receive a digital signature, signed by a signing authority, for a request for utilization of an information handling system firmware application programming interface (API) of the information handling system firmware, signed based at least on information associated with a certificate signed by a certificate authority;
decrypt the digital signature, utilizing a public key associated with the certificate, to determine a first hash value;
determine a second hash value of the request for utilization of the information handling system firmware API;
determine that the first hash value matches the second hash value;
determine that the signing authority is authorized for the request for utilization of the information handling system firmware API;
determine that the signing authority is authorized for the request for utilization of the information handling system firmware API on a platform model of the information handling system;
permit utilization of the information handling system firmware API; and
permit, without authentication, utilization of another information handling system firmware API.

US Pat. No. 10,713,362

DYNAMICALLY ADAPTIVE FRAMEWORK AND METHOD FOR CLASSIFYING MALWARE USING INTELLIGENT STATIC, EMULATION, AND DYNAMIC ANALYSES

FireEye, Inc., Milpitas,...

1. A system for adjusting malware analysis of a specimen received as input, the system comprising:a data storage device being hardware that is configured to store control information that identifies (i) a first plurality of analyses and (ii) an order of the first plurality of analyses to be conducted on the specimen;
a first analysis module being software that is configured, upon execution, to conduct, in accordance with the control information, at least one or more analysis of a first type of analysis on the specimen, wherein the one or more analysis of the first type of analysis included as a portion of the first plurality of analyses;
a second analysis module being software that is configured, upon execution, to conduct, in accordance with the control information, at least one or more analysis of a second type of analysis on the specimen, wherein the one or more analysis of the second type of analysis included as a portion of the first plurality of analyses; and
a controller communicatively coupled to the data storage device, the first analysis module, and the second analysis module, the controller to modify the control information in response to feedback information based on results from at least one of the first plurality of analyses conducted by the first analysis module or the second analysis module, the modified control information to change the malware analysis of the specimen from being conducted in accordance with the first plurality of analyses to being conducted in accordance with a second plurality of analyses different from the first plurality of analyses in analysis type or in order of analyses.

US Pat. No. 10,713,361

ANTI-MALWARE PROTECTION USING VOLUME FILTERS

Acronis International Gmb...

1. A method for protecting a computer system from ransomware and malware by copying and backing up files using a volume filter, wherein the method comprises:receiving a file modification request for a first file of a plurality of files stored in a storage device, wherein the file modification request is issued by a process executing in an operating system environment;
retrieving a file allocation map associated with the storage device, wherein the file allocation map indicates locations of the plurality of files by respective logical clusters in the storage device;
responsive to detecting that the process is an untrusted process, tracking changes to one or more blocks of the first file requested by the file modification request and using the file allocation map;
when changes to the one or more blocks of the first file are detected at a block level of the storage device, generating by the volume filter a backup of the one or more blocks of the first file, wherein the backup comprises a version of the one or more blocks prior to being changed by the file modification request; and
writing the changes at the one or more blocks.

US Pat. No. 10,713,359

SYSTEM AND METHOD OF IDENTIFYING A MALICIOUS INTERMEDIATE LANGUAGE FILE

AO Kaspersky Lab, Moscow...

1. A method for detecting malicious intermediate language files comprising:selecting a set of resources from a file being analyzed, wherein the file is an intermediate language file and wherein the resources are lines of code from the file, the lines comprising ANSI characters;
calculating a perceptive hash of a the set of resources; identifying a degree of similarly between the set of resources and a set of resources from known malicious files by comparing the perceptive hash with perceptive hashes of the set of resources from known malicious files;
determining a harmfulness of the file being analyzed based on the degree of similarity; and
removing or quarantining the file being analyzed when the harmfulness exceeds a predetermined threshold.

US Pat. No. 10,713,356

DECEPTION-BASED RESPONSES TO SECURITY ATTACKS

CrowdStrike, Inc., Irvin...

1. One or more non-transitory computer-readable media storing computer-executable instructions configured to program one or more computing devices to perform operations comprising:configuring a document to send a report to the one or more computing devices indicating that the document is opened on a device, the report indicating identifying information of the device including at least one of a network address of the device or a geographic location of the device;
receiving the report;
determining that the network address or the geographic location in the report does not match a predefined expected network address or a predefined expected geographic location;
determining that the identifying information in the report corresponds to an unauthorized entity, based on the determination that the network address or the geographic location in the report does not match the predefined expected network address or the predefined expected geographic location; and
in response to determining that the identifying information in the report corresponds to an unauthorized entity, sending an alert to an authorized entity associated with the document indicating that the unauthorized entity has possession of the document.

US Pat. No. 10,713,351

AUTHENTICATION AND CONTROL OF ENCRYPTION KEYS

Apple Inc., Cupertino, C...

1. An apparatus comprising:one or more peripherals configured to use a cryptographic keyword in a cryptographic operation in compliance with one or more policies that define allowable usage of the cryptographic keyword; and
a security processor configured to:
generate the cryptographic keyword based on a fixed value and a received seed value;
determine the one or more policies that define allowable usage of the cryptographic keyword;
generate a policy value based on the one or more policies, including an indication that the cryptographic keyword is allowed for use with a particular encryption algorithm;
generate a message including the cryptographic keyword and the policy value; and
send the message to at least one of the one or more peripherals.

US Pat. No. 10,713,350

UNLOCK AND RECOVERY FOR ENCRYPTED DEVICES

Microsoft Technology Lice...

1. A computing device, comprising:a trusted platform module (TPM) configured to receive and authenticate a first recovery password and provide a second recovery password in response to authenticating the first recovery password, wherein the first recovery password is shorter in length than the second recovery password; and
a processor configured to;
cause the computing device to operate in a recovery mode;
receive credentials associated with an account;
access the account using the credentials;
obtain the first recovery password from the account;
provide the first recovery password to the TPM;
receive the second recovery password from the TPM; and
retrieve a key using the second recovery password, wherein the key is configured to encrypt or decrypt data stored in the computing device.

US Pat. No. 10,713,349

AUTHENTICATION MANAGEMENT

International Business Ma...

1. A method for authentication management, the method comprising:establishing, with respect to access enablement to a computing asset, a valid authentication input which has a first value;
receiving, via a graphical user interface, the valid authentication input including the first value and a second value which differs from the first value;
authenticating, in response to receiving the valid authentication input and based on the first value, access enablement with respect to the computing asset; and
executing, in response to receiving the valid authentication input and based on the second value, a command indicated by the second value.

US Pat. No. 10,713,348

SYSTEM, METHOD, AND APPARATUS FOR TOUCH PANEL SECURITY

Microchip Technology Inco...

26. A method of verifying a touch panel, the method comprising:retrieving user keys and operand instructions from secure memory of a host device;
providing the user keys and operand instructions with a verification request to a touch panel requesting to provide input data to the host device;
receiving a result data from the touch panel responsive to the verification request, the result data at least partially based on one or more security features present at the touch panel;
comparing the result data to a pre-calculated result byte stored in the secure memory of the host device; and
verifying the result data responsive to the comparison.

US Pat. No. 10,713,347

MOBILE, PORTABLE APPARATUS FOR AUTHENTICATING A SECURITY ARTICLE AND METHOD OF OPERATING THE PORTABLE AUTHENTICATION APPARATUS

SICPA HOLDING SA, Prilly...

1. A mobile, portable apparatus for authenticating, verification and certification of a security article, the apparatus comprising:(a) an enclosure securely housing components of the apparatus;
(b) an authentication device operable to authenticate the security article;
(c) a power source;
(d) an imaging device set comprising at least two imaging devices for simultaneously imaging in opposing directions for facilitating monitoring and collection of a visual record of an interaction between an operator of the apparatus and a security article user;
(e) a programmable and configurable control panel;
(f) an information processing unit; and
(g) a printing device for printing and/or making a special marking on the security article,
wherein the imaging device set is coupled to the authentication device and is operable to capture images of the use of the authentication device and of the operator using the authentication device; and
wherein the control panel is arranged as an interface command and control center connected to the information processing unit and the other components of the apparatus.

US Pat. No. 10,713,346

SYSTEM FOR USER AUTHENTICATION BASED ON LOCK SCREEN AND THE METHOD THEREOF

SEOWOOSNC CO., LTD., Seo...

1. A method for authenticating a user for accessing an authentication request server based on a lock screen of a user terminal through a communication network, the method comprising:(a) receiving, by a push server, identification information of the user requesting access to the authentication request server and identification information of the authentication request server;
(b) generating, by the push server, a push message for requesting authentication of the user based on the identification information of the user and the identification information of the authentication request server, and transmitting the push message to the user terminal corresponding to the identification information of the user, wherein the user terminal is separate from the authentication request server and from the push server;
(c) displaying, by the user terminal, the transmitted push message on the lock screen of the user terminal;
(d) performing, by the user terminal, the authentication of the user by receiving biometric information of the user and comparing the received biometric information with pre-stored biometric information; and
(e) receiving, by the push server, authentication result information for the user from the user terminal and transmitting the received authentication result information to the authentication request server,
wherein in (c) the displaying of the push message on the lock screen of the user terminal, the push message is overlaid on the lock screen, and
wherein in (d) the performing of the authentication of the user, when the authentication of the user is completed, the overlaid push message is closed, the user terminal is returned to a lock screen state, and the user can access the authentication request server.

US Pat. No. 10,713,345

SECURE BIOMETRIC AUTHENTICATION WITH CLIENT-SIDE FEATURE EXTRACTION

CA, Inc., New York, NY (...

1. A method, comprising:obtaining, with one or more processors, a repository of user authentication records, each record having a user identifier and set of features detected in a biometric measurement of a respective corresponding user;
receiving, with one or more processors, from a remote computing device, a first encrypted value and an identifier of a user to be authenticated based on the first encrypted value;
retrieving, with one or more processors, from the repository, a user authentication record corresponding to the received identifier of the user to be authenticated;
determining, with one or more processors, a second encrypted value based on the set of detected features in the retrieved authentication record, the set of detected features being obtained before receiving the first encrypted value;
determining, with one or more processors, that the first encrypted value matches the second encrypted value; and
based on the determination that the first encrypted value matches the second encrypted value, sending, with one or more processors, a message over a network indicating that the user is authenticated, wherein the detected features in the retrieved authentication record are obtained from the remote computing device that receives the biometric measurement and detects the features before sending the detected features to a computing device with access to the repository without sending the biometric measurement itself.

US Pat. No. 10,713,344

SYSTEM AND METHOD FOR SECURE FIVE-DIMENSIONAL USER IDENTIFICATION

LEXTRON SYSTEMS, INC., L...

1. A method for secure user identification, comprising:creating a first user identification, using an identification device comprising at least a processor, a memory, and a plurality of programming instructions stored in the memory and operating on the processor, the identification comprising:
a video recording of a user's head, recorded from a range of positions and using illumination in different wavelengths;
a point cloud model of the user's head, based on at least a portion of the video recording;
a three-dimensional mesh model of the user's head, based on at least a portion of the video recording;
a first motion signature comprising a plurality of head movements measured during the creation of the video recording, the first motion signature being uniquely identifiable to the user; and
a second motion signature comprising a plurality of hand movements measured during the creation of the video recording, the second motion signature being uniquely identifiable to the user;
uniquely associating the user identification with the user,
recording, using the identification device, an unknown user's head from a range of positions and using illumination in different wavelengths;
retrieving a second user identification; and
comparing, using the identification device, the second user identification against the recording of the unknown user's head and a plurality of measured movements of the unknown user's head and hand to identify the unknown user.

US Pat. No. 10,713,343

METHODS, DEVICES AND SYSTEMS FOR AUTHENTICATED ACCESS TO ELECTRONIC DEVICE IN A CLOSED CONFIGURATION

LENOVO (SINGAPORE) PTE. L...

1. A portable electronic device, comprising:a display;
a body having:
a first physical configuration in which the display is not fully accessible by a user, and
a second physical configuration in which the display is fully accessible by the user;
an authentication system having a biometric sensor on an outer surface of the device that is user accessible in the first physical configuration;
a voice engine enabled to access predetermined secure functions in response to a successful biometric authentication of the user by the authentication system and to access unsecure functions without biometric authentication; and
a controller that monitors whether processing of a requested function by the user has finished;
the controller, upon determining that processing of the requested function has finished, disables voice access to the voice engine and returns the device to a secured state;
the disabling of voice access occurring in the absence of deactivation of a biometric sensor.

US Pat. No. 10,713,342

TECHNIQUES TO DETERMINE DISTINCTIVENESS OF A BIOMETRIC INPUT IN A BIOMETRIC SYSTEM

INTEL CORPORATION, Santa...

1. An apparatus, comprising:memory to store a plurality of biometric inputs of two or more input types; and
a processor coupled with the memory, the memory comprising instructions that when executed by the processor cause the processor to:
receive a biometric input of a first input type of the two or more input types,
simulate a number of authentication attempts,
determine a distinctiveness value for the biometric input based on a number of failed simulated authentication attempts,
update a biometric profile for a user based the distinctiveness value, the biometric profile to identify at least one input type to use for authentication or training,
determine an input type of the two or more input types to use to perform a training operation based on the distinctiveness value,
perform the training operation,
determine a distinctiveness factor based on the training operation, and
adjust the training operation based on the distinctiveness factor.

US Pat. No. 10,713,341

SYSTEM, METHOD AND APPARATUS FOR GENERATING ACOUSTIC SIGNALS BASED ON BIOMETRIC INFORMATION

25. A device comprising:(a) a sensor configured to detect an individual's biometric identifier information comprising facial features;
(b) a processor configured to analyze the individual's detected biometric identifier information and generate a signal derived from and representative of the detected biometric identifier information;
(c) a memory in communication with the processor and configured to store the signal derived from and representative of the detected biometric identifier information;
(d) a transmitter configured to output an acoustic signal corresponding to the signal derived from and representative of the detected biometric identifier information; and
(e) a communication interface configured to enable access to the signal derived from and representative of the detected biometric identifier information.

US Pat. No. 10,713,339

BUILD SYSTEM WITH PLUGINS FOR ENCRYPTION OF APPLICATION COMPONENTS

GUARDSQUARE NV, Leuven (...

1. A build system for generating an enhanced application comprising at least one encrypted application component during a build operation, said build system comprising:a build tool configured to receive an application comprising application code and a plurality of application components; and
two or more build tool plugins coupled to said build tool during a build operation, the two or more build tool plugins each comprising an encryption module and a corresponding decryption module,
the build tool, during the build operation, configured to generate an enhanced application making use of the two or more build tool plugins, such that the enhanced application comprises enhanced application code and a plurality of at least partly encrypted application components, and:
the plurality of at least partly encrypted application components generated from the plurality of corresponding application components by the encryption modules of the build tool plugins, such that:
at least one first at least partly encrypted application component is generated by the encryption module of a first build tool plugin;
at least one second at least partly encrypted application component is generated by the encryption module of a different, second build tool plugin, and
the enhanced application code generated by the build tool from the application code by respectively adding the corresponding decryption modules as corresponding added decryption modules, such that, during execution, when accessed by the enhanced application code:
the corresponding at least one first at least partly encrypted application component is automatically decrypted by the corresponding first added decryption module of the first build tool plugin; and
the corresponding at least one second at least partly encrypted application component is automatically decrypted by the corresponding second added decryption module of the second build tool plugin.

US Pat. No. 10,713,338

SOURCE-BASED AUTHENTICATION FOR A LICENSE OF A LICENSE DATA STRUCTURE

Microsoft Technology Lice...

1. A computing apparatus comprising:one or more computer readable storage media;
a processing system operatively coupled with the one or more computer readable storage media; and
program instructions stored on the one or more computer readable storage media for authenticating a user license for an application that, when executed by the processing system, direct the processing system to, responsive to a launch of the application, at least:
when an online licensing service is available:
obtain an instance of a license file from the online licensing service, the instance of the license file comprising the user license, available features of the application, and a public key specific to the online licensing service; and
determine authentication of the user license using the public key specific to the online licensing service;
when the online licensing service is not available:
obtain a different instance of the license file from one of a network storage location and a local storage location, the different instance of the license file comprising the user license, the available features of the application, and a public key specific to the one of the network storage location and the local storage location; and
determine authentication of the user license using the public key specific to the one of the network storage location and the local storage location; and
in response to determining that the user license is authenticated:
enable a set of features of the available features of the application based on the user license; and
initiate presentation of the application in accordance with the set of features.

US Pat. No. 10,713,337

SYSTEMS AND METHODS FOR PAYLOAD ENCODING AND DECODING

The Nielsen Company (US),...

1. An apparatus to decode audio, the apparatus comprising:a processor; and
a storage device in communication with the processor, the storage device including instruction which, when executed, cause the processor to at least:
process a license file to obtain information to access a message encoded in audio, the information obtained from the license file including at least one of decoding information, message codes, a decoding algorithm or diagnostic information;
detect the message encoded in the audio based on the information obtained from the license file; and
output the detected message.

US Pat. No. 10,713,336

INFORMATION PROCESSING DEVICE AND INFORMATION PROCESSING METHOD

SONY CORPORATION, Tokyo ...

1. An information processing device, comprising:a central processing unit (CPU) configured to:
execute a copy process of recording data from a first memory to a second memory, wherein the first memory records the recording data, and
the recording data includes encrypted content;
record the encrypted content on the second memory as encrypted data, without decryption of the encrypted content;
acquire a media key block (MKB) from a server;
record the acquired MKB on the second memory;
read a CPS unit key(unit key) file recorded on the first memory, wherein the unit key file stores a decryption key for the encrypted content;
convert the read unit key file based on the recorded MKB;
generate the converted unit key file for acquisition of the decryption key, wherein the acquisition of the decryption key is performed without application of key conversion data (KCD) recorded on the first memory; and
record the generated unit key file on the second memory.

US Pat. No. 10,713,335

SYSTEM, METHOD, AND APPARATUS FOR DETECTING UNLICENSED PERFORMANCES OF COPYRIGHTED CREATIVE WORKS

Visa International Servic...

1. A computer-implemented method of detecting a performance of a creative work, comprising:receiving, by a server, a digital representation of an occurrence of multimedia data from a mobile device enabled to capture multimedia data;
determining, by the server, that the digital representation is part of a copyrighted work;
determining, by the server, a time-length associated with the copyrighted work and/or a remainder of time associated with the copyrighted work;
generating, by the server, a message comprising the time-length and/or the remainder of time associated with the copyrighted work;
communicating, by the server, the message to the mobile device to cause the mobile device to disable the capture of multimedia data for the remainder of time and, after the remainder of time has elapsed, re-enable the mobile device to capture multimedia data;
receiving, by the server, information relating to a physical location of the occurrence; and
determining, by the server, whether a license exists for a performance of the copyrighted work, based upon the information relating to the physical location.

US Pat. No. 10,713,334

DATA PROCESSING SYSTEM WITH A SCALABLE ARCHITECTURE OVER ETHERNET

EMC IP HOLDING COMPANY LL...

1. A data processing system, comprising:a plurality of central processing unit (CPU) subsystems, wherein each CPU subsystem includes a plurality of CPUs and a plurality of memory controllers, each memory controller corresponding to one of the CPUs;
a plurality of memory complexes, each memory complex being associated with one of the CPU subsystems, wherein each memory complex comprises one or more branches, and
a plurality of memory leaves to store data, wherein each of the branches is coupled to one or more of the memory leaves and to provide access to the data stored in the memory leaves; and
an Ethernet switch fabric coupled to each of the memory controllers of the CPU subsystems and each of the branches of the memory complexes, wherein each of the memory controllers is communicatively connected with each of the branches of any of the memory complexes via the Ethernet switch fabric over an Ethernet to access data stored in any of the memory leaves associated with the corresponding branch,
wherein a first memory controller associated with a first CPU of a first CPU subsystem is communicatively connected with a second memory controller associated with a second CPU of the second subsystem via the Ethernet switch fabric over the Ethernet and each of the branches provides access to data stored in local memory leaves by a remote CPU via a remote branch of the remote CPU over the Ethernet, without having to invoke a local CPU.

US Pat. No. 10,713,333

FAST FOURIER TRANSFORM ARCHITECTURE

Apple Inc., Cupertino, C...

1. A calculation circuit for calculating a transform of an input sequence, the calculation circuit comprising:a plurality of butterfly computation circuits configured to:
perform a plurality of butterfly computations,
produce a plurality of outputs during each computation stage of a plurality of computation stages, and
selectively execute a bypass mechanism with a butterfly computation circuit of the plurality of butterfly computation circuits, such that the butterfly computation circuit provides an unaltered input of the butterfly computation circuit as an output of the butterfly computation circuit;
a wired routing network configured to route a first plurality of outputs of the plurality of butterfly computation circuits from a first computation stage of the plurality of computation stages as input to the plurality of butterfly computation circuits during a second computation stage of the plurality of computation stages according to a reconfigurable routing configuration; and
routing control circuitry configured to modify the reconfigurable routing configuration for a third computation stage of the plurality of computation stages.

US Pat. No. 10,713,332

HARDWARE ACCELERATED LINEAR SYSTEM SOLVER

University of Dayton, Da...

1. An system for solving a system of linear equations, the system comprising:a host computer;
a linear solver apparatus in communication with the host computer, the linear solver apparatus comprising an input data sampling block, a real-time computational solver, and a solution update and data output block, and configured to implement parallel processing hardware, pipelining, and reusable memory blocks;
wherein the linear solver apparatus applies a Gauss-Jordan Elimination method on the system of linear equations.

US Pat. No. 10,713,331

CREATE AND PUBLISH A WEBSITE USING A USER SATISFACTION

Go Daddy Operating Compan...

1. A method for creating a website using a customer satisfaction derived from customer service text communications, comprising the steps of:receiving by a website hosting provider a plurality of customer service voice communications from a corresponding plurality of hosting customers,
wherein the website hosting provider comprises:
i) a communication center configured to receive the plurality of customer service voice communications from the plurality of hosting customers,
ii) a database configured to store the plurality of customer service voice communications,
iii) a website hosting server configured to host a plurality of websites for the plurality of hosting customers, and
iv) a machine learning algorithm,
wherein each hosting customer in the plurality of hosting customers is hosting a website in the plurality of websites with the website hosting provider and has a customer account with the website hosting provider;
storing by the website hosting provider the plurality of customer service voice communications in the database;
converting by the website hosting provider the plurality of customer service voice communications into a corresponding plurality of customer service text communications;
storing by the website hosting provider the plurality of customer service text communications in the database;
deriving by the website hosting provider a score for each customer service text communication in the plurality of customer service text communications based on a customer satisfaction derived from the customer service text communication;
deriving by the website hosting provider a topic for each customer service text communication in the plurality of customer service text communications based on an analysis of the customer service text communication;
deriving by the website hosting provider a plurality of hosting customer variables of the hosting customer for each customer service text communication in the plurality of customer service text communications;
storing by the website hosting provider the score, the topic and the plurality of hosting customer variables for each customer service text communication in the plurality of customer service text communications in the database;
aggregating by the website hosting provider all of the customer service text communications in the plurality of customer service text communications that have a first derived topic into a first cluster;
aggregating by the website hosting provider all of the customer service text communications in the plurality of customer service text communications that have a second derived topic into a second cluster, wherein the first derived topic is different from the second derived topic;
determining by the website hosting provider a first plurality of hosting customer variables for a current hosting customer;
applying by the website hosting provider the machine learning algorithm to the first cluster of customer service text communications to determine an optimal set of questions based on the first plurality of hosting customer variables for the current hosting customer and the score for each customer service text communication in the first cluster of customer service text communications;
receiving by the website hosting provider a plurality of responses to the optimal set of questions from the current hosting customer;
transmitting by the website hosting provider a recommendation to the current hosting customer based on the plurality of responses from the current hosting customer; and
publishing by the website hosting provider a website of the current hosting customer on the website hosting server, wherein the website is created or published, at least in part, based on the recommendation to the current hosting customer.

US Pat. No. 10,713,330

OPTIMIZED BROWSER RENDER PROCESS

GOOGLE LLC, Mountain Vie...

1. A system comprising:at least one processor;
memory storing a data store that identifies URLs that are content neutral, wherein the URLs identified in the data store are each linked to rendered content determined to be similar with scripting turned on and with scripting turned off; and
memory storing instructions that, when executed by the at least one processor, cause the system to:
receive a request to render a web page identified by a URL;
prior to rendering, determine that the URL is identified as content neutral in the data store; and
responsive to determining that the URL is identified as content neutral, render the web page with scripting turned off, regardless of browser settings for scripting.

US Pat. No. 10,713,329

DERIVING LINKS TO ONLINE RESOURCES BASED ON IMPLICIT REFERENCES

LONGSAND LIMITED, Cambri...

1. A method performed by a system comprising a hardware processor, comprising:determining that text of a web page refers to a web resource, and in response to determining that the text refers to the web resource, identifying the text as an implicit reference to the web resource;
invoking a classifier that classifies text in web pages;
applying the classifier to the text of the web page in an attempt to derive a link to the web resource based on the implicit reference;
determining whether the classifier was able to derive the link to the web resource,
in response to determining that the classifier was not able to derive the link to the web resource:
determining, based on analyzing information describing a structure of a website, a search interface comprising an input field;
in response to identifying the text of the web page as the implicit reference to the web resource, performing a search based on inputting a search term into the input field of the search interface of the website;
obtaining a search result referring to the web resource in response to the search; and
using a hyperlink of the search result as the link to the web resource; and
in response to determining that the classifier was able to derive the link to the web resource, using the link to the web resource derived by the classifier in accessing the web resource.

US Pat. No. 10,713,328

AUTOMATED TAGGING APPLICATION FOR MAINTAINING UP-TO-DATE WEB ANALYTICS

Mastercard International ...

7. A computerized method for updating website tags based on detected link changes comprising:collecting, by an auto-tagger application, link metadata associated with at least one link on a website, the at least one link having one or more tags associated therewith;
accessing, by the auto-tagger application, previously collected link metadata associated the at least one link on the website;
comparing the collected link metadata with the previously collected link metadata;
upon detecting, based on the comparing, a link change between the collected link metadata and the accessed previously collected link metadata, identifying, by the auto-tagger application, at least one auto-tagging rule associated with the detected link change, wherein the identified at least one auto-tagging rule determines one or more instructions corresponding to the detected link change; and
updating, by the auto-tagger application, at least one tag of the one or more tags based on application of the one or more instructions determined by the identified at least one auto-tagging rule, the updated at least one tag enabling accurate tracking of user interactions with the at least one link.

US Pat. No. 10,713,327

GEO-BASED DATA PROVISION, SEARCH AND ACCESS SYSTEM AND METHODS

1. An automated onsite information search and multimedia system for independent short-range wireless broadcasting comprising:an onsite wireless communication apparatus comprising:
a first short range wireless transceiver operatively generating a wireless signal to be received by users of mobile devices;
an input device for receiving input from a user of the onsite wireless communication apparatus; and
a processor storing computer executable software in a memory, wherein execution of the software generates a graphical user interface that prompts a user of the onsite wireless communication apparatus to specify media content to be uploaded to the memory; and
a mobile application operatively installed on a user mobile device and in operative communication with the onsite wireless communication apparatus via a second short range wireless transceiver when the user device is within a coverage area of the first short range wireless transceiver; and
wherein the onsite wireless communication apparatus directly transmits an authorization code to the mobile application via the first short range wireless transceiver and the mobile application determines whether to authorize the onsite wireless communication apparatus in response to comparing the authorization code to a set of known access codes stored in a memory of the mobile device; and
wherein once authorized, the onsite wireless communication apparatus directly communicates with the mobile application via the first and second short range wireless transceivers without requiring a connection to the internet or other networks.

US Pat. No. 10,713,326

SEARCH AND NOTIFICATION IN RESPONSE TO A REQUEST

eBay Inc., San Jose, CA ...

1. An apparatus comprising:hardware processing circuitry;
hardware memory storing instructions that when executed cause the hardware processing circuitry to perform operations, the operations comprising:
receiving input defining an image of a search item,
receiving input indicating an instruction to search a plurality of sensor data for the image of the search item, each sensor data generated by a corresponding imaging sensor and including a respective image captured by the corresponding imaging sensor, and
displaying a location of an identified item matching the searched item in a user interface, the location corresponding to a location of one of the imaging sensors that generated an image-representing the identified item.

US Pat. No. 10,713,325

REAL ESTATE ACTIVITY ANALYTICS SYSTEM AND METHOD

1. A computer-implemented method of analyzing real property data, the real property data consisting of electronic data related to real property stored in a plurality of independent databases, comprising:receiving one or more filters related to real property and real property sales transactions from a User via a user system;
collecting electronic real property data from plurality of independent databases based on the received one or more filters related to real property and real property sales transactions;
creating a plurality of subsets of real properties based on the collected electronic real property data based on one or more of the received one or more filters related to real property and real property sales transactions;
analyzing each of the plurality of subsets of real properties to determine a score,. wherein the determined score for each of the plurality of subsets of real properties is a weighted combination of at least three attributes, the attributes including three of the number of properties sold in a predetermined time interval divided by the total number of properties in one of plurality of subsets of real properties, the average property price of listed and sold in the one of plurality of subsets of real properties; the percentage of active properties represented by one of a single real estate agent, groups of real estate agents, a real estate brokerage, and groups of real estate brokerages in one of plurality of subsets of real properties, and the average number of days on market for active properties in one of plurality of subsets of real properties; and
forwarding a user interface to a user system enabling a User to view the plurality of subsets of real properties and the determined score for each of the plurality of subsets of real properties.

US Pat. No. 10,713,324

SEARCH RESULTS FOR NATIVE APPLICATIONS

Google LLC, Mountain Vie...

1. A computer-implemented method performed by data processing apparatus comprising one or more computers in data communication, the method comprising:accessing, for each of a plurality of native applications, a compressed collection of files that are used to distribute and install the native application on a user device, and for each native application:
determining, from one or more of the files of the compressed collection of files, an application name of the native application, the determining comprising:
determining an application icon for the native application from one or more of the files of the compressed collection of files;
indexing the application icon for the native application in the index; and
selecting, from one or more of the files of the compressed collection of files, a text string defining the application display name for the application icon as the application name;
accessing, at the data processing apparatus, application pages of the native application, and for each of the application pages, generating application page data describing content of the application page, and an application page name of the application page; and
indexing the application page data and the application name for the native application in an index that is searchable by a search engine.

US Pat. No. 10,713,322

FIELD MAPPINGS FOR PROPERTIES TO FACILITATE OBJECT INHERITANCE

Facebook, Inc., Menlo Pa...

1. A method comprising:by one or more computing devices, determining a field mapping for a property of an object from a native system, wherein determining the field mapping comprises:
determining a third party object, from a third party system, that matches the object from the native system based on one or more similar other properties;
determining that the third party object has a third party value for a third party property that corresponds to the property;
determining an incompatibility between a data type of the third party property and the property; and
determining one or more routines to resolve the incompatibility, wherein at least one of the routines transforms the third party value into a normalized value that conforms to the property specification for the property;
by one or more computing devices, in response to receiving a request for the property in the native system, retrieving the third party value of the third party property from the third party system;
by the one or more computing devices, modifying the retrieved third party value of the third party property of the third party object by executing the one or more routines according to the field mapping; and
by one or more computing devices, providing, as a response to the request in the native system, the object with the value for the property as modified according to the field mapping to provide access to the normalized value from the third party property in the native system through a native call to the property on the object.

US Pat. No. 10,713,321

EFFICIENT IDENTIFICATION OF ANOMALIES IN PERIODICALLY COLLECTED DATA

Microsoft Technology Lice...

1. A method for generating alerts, the method comprising:storing in a database, a plurality of records, each record associated with a user, each record storing user profile attributes describing the user;
determining a plurality of user populations, each user population corresponding to a set of records, each population specified using values of one or more user profile attributes;
performing data collection, the collected data representing user responses;
identifying a set of anomalies based on the collected data, each anomaly associated with a population;
determining a subset of anomalies, the determining comprising:
identifying from the set of anomalies, a first anomaly for a first population and a second anomaly for a second population;
determining that the first population is a subset of the second population and the first anomaly and the second anomaly are associated with a same category of anomalies;
responsive to determining that the first population is a subset of the second population and the first anomaly and the second anomaly are associated with the same category of anomalies, excluding the first anomaly from the subset of anomalies being determined; and
transmitting alerts based on the subset of anomalies.

US Pat. No. 10,713,320

DE-DUPING EVENTS ON ONLINE SOCIAL NETWORKS

Facebook, Inc., Menlo Pa...

1. A method comprising, by one or more computing systems of an online social network:receiving, at the one or more computing systems, a first event listing corresponding to a first event, wherein the first event listing comprises one or more items of event information associated with the first event, wherein the items of event information include at least a time of the first event and a geographic location of the first event;
bucketizing, by the one or more computing systems, the first event listing based on the time of the event and the location of the event, wherein the first event listing is placed in a first bucket of an array, wherein a first dimension of the array corresponds to time increments, and wherein a second dimension of the array corresponds to geographic map tiles, and wherein the first bucket corresponds to the time increment including the time of the first event and the geographic map tile including the geographic location of the first event;
identifying, by the one or more computing systems, one or more second event listings corresponding to one or more second events, respectively, wherein each second event listing comprises one or more items of event information associated with the respective second event, wherein the items of event information include at least a time of the respective second event and a geographic location of the respective second event, wherein each second event listing has a time and geographic location placing each second event listing in the first bucket of the array or one of the buckets of the array adjacent to the first bucket;
computing, by the one or more computing systems, for each of the second event listings, a similarity score between the first event listing and the second event listing, wherein the similarity score is based on a comparison of the event information of the first event listing and the event information of the second event listing; and
updating, by the one or more computing systems, each second event listing having a similarity score greater than a threshold score to include redirection information to the first event listing to de-duplicate events on a social-networking system, wherein the redirection information identifies the second event listings as being in an event cluster with the first event listing, the redirection information further identifying a canonical event listing in the event cluster to which the other event listings in the cluster are redirected.

US Pat. No. 10,713,319

SYSTEMS AND METHODS TO DETERMINE TRENDING TOPICS FOR A USER BASED ON SOCIAL GRAPH DATA

Facebook, Inc., Menlo Pa...

1. A computer-implemented method comprising:calculating, by a computing system, one or more terms associated with a topic, each term based on a degree of separation between a user and a connection of the user on a social networking system, a value of affinity between the user and the connection, and a weight reflecting a value of interest similarity between the user and the connection;
combining, by the computing system, the one or more terms associated with the topic to generate a composite score associated with the topic; and
ranking, by the computing system, a plurality of topics based on their associated composite scores to select at least a portion of the plurality of topics for presentation to the user in the social networking system.

US Pat. No. 10,713,318

OPTIMIZING LISTING EFFICIENCY AND EFFICACY FOR A DELIVERY COORDINATION SYSTEM

Uber Technologies, Inc., ...

1. A method for selecting listings for a listings request from a client device comprising:storing, by a networked system, a plurality of listings associated with a plurality of establishments from which an order may be placed;
receiving a listings request from a client device, the listings request identifying a user of a networked system who is associated with the client device;
determining, by the networked system, filtering criteria, wherein the filtering criteria comprise a threshold popularity applied to the establishments in the plurality of listings and are adjusted based at least in part on computational resources used by the networked system, such that a reduced number of listings of the plurality of listings is selected responsive to the networked system using more than a threshold amount of computational resources;
selecting a filtered set of listings of the plurality of listings by applying the determined filtering criteria to the plurality of listings;
generating a conversion score for each listing of the filtered set of listings, each conversion score representing a likelihood that the user will order from the establishment associated with the listing using the networked system;
selecting one or more listings of the filtered set of listings for presentation to the user based on selection factors associated with the one or more listings, the selection factors including the generated conversion scores; and
transmitting the selected one or more listings to the client device.

US Pat. No. 10,713,317

CONVERSATIONAL AGENT FOR SEARCH

ADOBE INC., San Jose, CA...

1. A computer system comprising:one or more processors; and
one or more computer storage media storing computer-useable instructions that, when used by the one or more processors, cause the one or more processors to:
generate a user model using session logs from a search engine, the session logs comprising user activities during search sessions that do not include conversation data, the user model generated by:
employing a set of rules with mappings between certain types of session log entries to specific user actions defined by a user action space understandable by a reinforcement learning agent to represent entries from the session logs as user actions from the user action space and each search session within the session logs as a series of user actions from the user action space, and
using the mapped entries from the session logs to compute conditional probabilities for user actions from the user action space for each of a plurality of different sets of previous user actions;
train the reinforcement learning agent using the user model by iteratively performing dialog turns of selecting an agent action and selecting a user action, wherein the user actions are selected during the dialog turns based at least in part on the conditional probabilities from the user model; and
employing the reinforcement learning agent as a conversational agent in a conversational search system.

US Pat. No. 10,713,316

SEARCH ENGINE USING NAME CLUSTERING

Microsoft Technology Lice...

1. A system comprising:a machine-readable medium having instructions stored thereon, which, when executed by a processor, causes the processor to perform operations comprising:
receiving a plurality of names;
generating a plurality of phonetic cluster identifiers according to a phonetic spelling of the names using a database of phonetic associations and not including vowel sounds;
forming a plurality of name clusters by grouping the names having an equivalent cluster id into a corresponding name cluster of the plurality of name clusters;
removing names from respective name clusters that differ from a root name by more than either particular spelling of a phonetic sound or a specific member's reformulation according to a reformulation dictionary; and
suggesting, in response to receiving a name from a member of an online social networking system, one or more names by generating a phonetic cluster id for the received name and returning names found in the name cluster that matches the phonetic cluster id.

US Pat. No. 10,713,315

PERSONALIZED TARGETING OF MEDIA STATIONS

Apple Inc., Cupertino, C...

1. A method comprising:providing an online media player to a client device, wherein the online media player includes a plurality of slots and a plurality of media station queues, each slot associated with a category of media content;
monitoring usage of the online media player to detect one or more user interactions with the online media player;
based on the one or more detected user interactions, determining one or more user media preferences;
ranking media stations in a queue of the plurality of media station queues based on the one or more user media preferences;
determining an amount of screen time for presenting a media station in a slot of the plurality of slots based on the ranking of the media stations via the online media player; and
based on the one or more user media preferences and the category, selecting the media station from the queue to present for the amount of screen time, via the online media player, in the slot of the plurality of slots.

US Pat. No. 10,713,314

FACILITATING DATA MODEL ACCELERATION IN ASSOCIATION WITH AN EXTERNAL DATA SYSTEM

SPLUNK INC., San Francis...

1. A computer-implemented method comprising:receiving, at a core engine, a search request associated with a data model, the data model designating one or more fields, from among a plurality of fields, that are of interest for subsequent searches;
determining that an accelerated data model summary, of a dataset stored in an external data system, and associated with the data model is stored at the external data system, the external data system not under management of the core engine that received the search request, the accelerated data model summary organized into a columnar format comprising a plurality of data blocks, each data block adjacently storing values of a column of data from a subset of rows of the dataset, for a set of columns of the dataset corresponding to the one or more fields designated by the data model;
triggering the external data system to generate a set of search results relevant to the search request by causing the external data system to read data from the accelerated data model summary and execute a search of the data from the accelerated data model summary;
receiving the set of search results from the external data system; and
providing the set of search results to a user device for display to a user.

US Pat. No. 10,713,313

INTERNET QUESTION ANSWERING SYSTEM AND METHOD, AND COMPUTER READABLE RECORDING MEDIA

INDUSTRIAL TECHNOLOGY RES...

1. An internet question answering method for an internet question answering system having a display, the internet question answering method including:receiving and displaying a current-turn user question on the display of the internet question answering system;
labeling a discourse of the current-turn user question as “discourse continue (DC)” or “discourse end (DE)” online and real-time based on a discourse labeling model;
determining whether to clear at least one discourse of an old boundary based on the discourse of the current-turn user question;
on-line feeding back an answer to the current-turn user question on the display by the internet question answering system; and
evaluating a degree of matching between a next-turn user question and the old boundary to determine whether the discourse of the current-turn user question is correct, whether to correct the discourse of the current-turn user question, and whether to adjust the discourse labeling model by using the current-turn user question,
wherein when the discourse of the current-turn user question is corrected based on the degree of matching between the next-turn user question and the old boundary evaluated by said evaluating, the discourse labeling model is on-line adjusted based on the corrected discourse of the current-turn user question;
when the discourse of the current-turn user question is labeled as DE, the discourses in the old boundary are cleared, and a dialog log and the discourses in the old boundary are ignored in answering the next-turn user question; and
DE is determined by the internet question answering system, or DE is triggered by a user discourse end event and detected by the internet question answering system.

US Pat. No. 10,713,312

SYSTEM AND METHOD FOR CONTEXT-LAUNCHING OF APPLICATIONS

DOAT Media Ltd., Tel Avi...

1. A method for executing actions based on contextual scenarios related to a user device, comprising:determining at least one variable based on at least one signal captured by at least one sensor of the user device, wherein at least one of the at least one variable is a personal variable;
generating at least one insight based on the at least one variable;
generating a weight factor for at least one of the at least one insight, wherein each generated weight factor indicates a level of confidence in each insight;
generating a context for the user device based on the at least one insight and the generated weight factors, wherein the context represents a current state of the user as demonstrated by the at least one insight;
determining, based on the context, a user intent, wherein the user intent includes at least one action; and
causing execution of the at least one action on the user device based on the determined context and the determined user intent.

US Pat. No. 10,713,311

AUDIENCE ON NETWORKED DEVICES

ADELPHIC LLC, Irvine, CA...

1. A computer-implemented method comprising:receiving information from a source, the information associated with a device identifier, wherein the source corresponds to a networked device;
determining, based on the device identifier, a unique user identifier, wherein the unique user identifier identifies a user independent of network, media, and location;
identifying at least one user attribute based on the received information;
associating the user attribute with the unique user identifier;
storing the user attribute in a repository, wherein the repository stores a plurality of other user attributes associated with the unique user identifier, the other stored user attributes being received from a plurality of different sources, wherein the plurality of different sources correspond to a plurality of different devices;
scoring the user based on a model, wherein the model is an inference model computed using a learning algorithm, wherein the model is based on an inferred user attribute, wherein the inferred user attribute comprises a prediction attribute that comprises a propensity of a user performing a user action indicating interest for an event, and wherein the propensity comprises a likelihood of the user performing the user action in response to being presented with a particular advertisement, wherein the propensity is based on the user attributes from multiple different sources stored in the repository, and wherein the inference model is used to create inferred attributes for users without such attributes; and
targeting the user at one or more of the different devices based on the scoring.

US Pat. No. 10,713,310

INTERNET OF THINGS SEARCH AND DISCOVERY USING GRAPH ENGINE

SAP SE Walldorf, (DE)

1. A system comprising:at least one hardware processor; and
a computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:0
obtaining, from a database, a graph structure and flat data corresponding to the graph structure, the graph structure containing a plurality of nodes, each node corresponding to a data type of the flat data and corresponding to one or more pieces of data in the flat data of the corresponding data type, the graph structure containing at least one node corresponding to a first data type and at least one node corresponding to a second data type different than the first node type, the graph structure further containing a plurality of edges connecting one or more of the plurality of nodes, each edge corresponding to a link between an attribute of a node at one side of the edge and an attribute of a node at another side of the edge;
receiving a search query, the search query containing one or more search terms;
removing stop words from the one or more search terms to obtain modified search terms;
for each of the modified search terms, searching the pieces of data from the flat data to locate one or more matching pieces of data from the flat data, wherein a piece of data from the flat data matches if it contains at least one attribute with a value that is similar to the modified search term;
for each matching piece of data from the flat data:
calculating a fuzzy match score, wherein the fuzzy match score indicates how similar the at least one attribute in the matching piece of data is to the corresponding search term; and
calculating a match frequency score, wherein the match frequency score indicating how many attributes in the matching piece of data are similar to the corresponding search term;
for each node in the graph structure, calculating a ranking score based on a combination of the fuzzy match score and the match frequency score for a corresponding piece of data from the flat data, if such a fuzzy match score and match frequency score exist for the corresponding piece of data from the flat data, as well as based on combinations of fuzzy match scores and match frequency scores for all matching pieces of data in the flat data, weighted based on distance along a shortest possible path between the node and a node corresponding to the corresponding matching piece of data in the flat data; and
returning one or more search results based on the ranking scores of nodes corresponding to pieces of data for the one or more search results.

US Pat. No. 10,713,309

RESULTS FROM SEARCH PROVIDERS USING A BROWSING-TIME RELEVANCY FACTOR

INTERNATIONAL BUSINESS MA...

1. A method for searching Web pages comprising:identifying query criteria entered into a search provider;
determining a plurality of Web pages that satisfy the query criteria;
ascertaining a page ranking for each of the plurality of Web pages, wherein each page ranking is based upon at least one relevancy factor; and
presenting ordered results for the query criteria, which are ordered by the ascertained page rankings,
wherein the at least one relevancy factor includes a browsing-time factor,
wherein the browsing-time factor is determined based upon a behavioral event of a user at the plurality of Web pages gathered by a behavioral capture engine, an elapsed time taken by the user before the user returns to the search provider gathered by a return-to-engine timer, and a cumulative score calculated from a first set of scores and a second set of scores,
wherein the first set of scores correspond to types of behavioral actions performed by the user on a browsed Web page gathered by the behavioral capture engine,
wherein the second set of scores correspond to time spent by the user at the browsed Web page and the elapsed time taken by the user to return to the search provider from the browsed Web page gathered by the return-to-engine timer, and
wherein the browsing-time factor disregards input from a computing device in response to a fixed number of accesses which have occurred from the computing device per a predetermined time period.

US Pat. No. 10,713,308

METHOD AND SYSTEM FOR GENERATING AN OFFLINE SEARCH ENGINE RESULT PAGE

YANDEX EUROPE AG, Lucern...

1. A method of processing a search query, the method executable at an electronic device, the electronic device storing, in its permanent storage, an offline query result database that has been generated and pre-loaded into the permanent storage by a search engine server via a communication network prior to execution of the method, the offline query result database comprising:an offline query index storing one or more offline search queries, each of the one or more offline search queries being associated with a respective offline search engine result page (SERP) template pointer;
an offline SERP template index storing one or more offline SERP templates, each of the one or more offline SERP templates comprising a list of one or more element pointers, the one or more offline SERP templates comprising a pre-defined number of offline SERP templates, the pre-defined number having been determined by an operator of the search engine server to satisfy a certain number of search queries from a user;
at least one SERP elements index storing a plurality of SERP elements, each SERP element associated to at least one of the one or more element pointers, the plurality of SERP elements having been organized by a respective SERP element type;the method comprising:receiving a search query from the user associated with the electronic device;
determining whether the search query is stored in the offline query index by comparing the search query against the one or more offline search queries stored therein;
responsive to determining that the search query matches a given offline search query, determining the offline SERP template pointer associated with the given offline search query;
determining, based on the offline SERP template pointer, an associated offline SERP template stored within the offline SERP template index;
accessing the list associated with the associated offline SERP template;
retrieving, for each one or more element pointers of the list, a respective SERP element, from the at least one SERP elements index;
generating an offline SERP by compiling the retrieved SERP elements; and
displaying the offline SERP on the electronic device.

US Pat. No. 10,713,307

DYNAMIC SEARCH ENGINE FOR AN INDUSTRIAL ENVIRONMENT

Rockwell Automation Techn...

1. A system for searching industrial data, comprising:a memory that stores executable components; and
a processor, operatively coupled to the memory, that executes the components, the components comprising:
an indexing component configured to discover available data items distributed across multiple data sources of an industrial environment and to generate a federated data model that records respective locations of the data items, wherein the data items comprise at least data tags of one or more control programs stored on one or more industrial controllers;
a device interface component configured to render a graphical display on a client device associated with a first user, wherein the graphical display renders graphical icons of respective industrial assets that are part of the industrial environment;
a search component configured to, in response to selection of a graphical icon, of the graphical icons, via interaction with the graphical display, initiate a search of the federated data model using an industrial asset represented by the graphical icon as a search criterion; and
a notification component configured to, in response to the selection of the graphical icon,
generate a work order to investigate a performance issue relating to the industrial asset, wherein the performance issue is indicated by results of the search of the federated data model,
select a second user, from a set of available users, based on a relevance of the second user's experience relative to the industrial asset and the performance issue, and
send notification information to another client device associated with the second user, wherein the notification information defines the work order and contains the results of the search of the federated data model.

US Pat. No. 10,713,306

CONTENT PATTERN BASED AUTOMATIC DOCUMENT CLASSIFICATION

Microsoft Technology Lice...

1. A computer-implemented method for content pattern based document classification in a file management system having a network storage containing multiple documents accessible to multiple members via a computer network, the method comprising:receiving, from the network storage, data representing a first document and a second document, both the first and second documents containing words in sequences;
in response to receiving the data representing the first and second documents,
computing a longest common subsequence of words of the first and second documents, the longest common subsequence having a number of words shared by the first and second documents; and
upon determining that the number of words of the computed longest common subsequence is above a threshold,
indicating that the first document and the second document belong to a document class having the computed longest common subsequence as a content pattern; and
automatically classifying, using the content pattern having the computed longest common subsequence between the first and second documents, additional documents in the network storage as belonging to the same document class when a longest common sequence between the individual additional documents relative to the content pattern is above the threshold; and
modifying metadata of the classified additional documents in the network storage of the file management system to apply a class label corresponding to the document class.

US Pat. No. 10,713,305

METHOD AND SYSTEM FOR DOCUMENT SEARCH IN STRUCTURED DOCUMENT REPOSITORIES

EMC IP Holding Company LL...

1. A method for document search in a structured document repository, comprising:obtaining, from a client, a request, wherein the request comprises:
a document search query that specifies document content; and
a location constraint;
selecting, in a document search index associated with the structured document repository, a first index entry;
making a first determination that the document content matches a first index term of the first index entry; and
making a second determination, based on the first determination, that a first document location of the first index entry does not satisfy the location constraint;
selecting, based on the second determination, a second index entry in the document search index;
making a third determination that the document content matches a second index term of the second index entry;
making a fourth determination, based on the third determination, that a second document location of the second index entry satisfies the location constraint; and
providing, based on the fourth determination, information associated with the second index entry to the client.

US Pat. No. 10,713,303

DUAL INTERACTIVE VISUALIZATION SYSTEM FOR SENSITIVITY ANALYSIS TO RISK PREFERENCES FOR DECISION SUPPORT

International Business Ma...

1. A computer-implemented method for providing a risk preference visualization over a set of alternatives and over which an individual has a preference ordering, the method comprising:a) accessing at least one utility function that ranks the set of alternatives according to their utility to an individual;
b) receiving a selection of at least one probability distribution function from a database of stored probability distribution functions, in which each probability distribution function is a different family of probability distribution functions to define a particular probability distribution;
c) computing a certain equivalent based upon the utility function and the at least one probability distribution function, wherein the certain equivalent is defined as a risk-free amount of outcome rather than taking a chance on a higher risky amount;
d) graphically superimposing a plot of the certain equivalent that has been computed along with a plot of the at least one probability distribution function to create a simultaneous dual visualization thereof;
e) presenting the simultaneous dual visualization on a display device;
f) receiving another selection to at least one of:
one or more parameters of the probability distribution function,
accessing another at least one probability distribution function from the database, and
an over-ride the certain equivalent computed in response to receiving a selection of the at least one probability distribution function; and
g) in response to receiving the another selection, repeating steps c through f, otherwise in response to not receiving another selection then ending a processing of the steps c through f.

US Pat. No. 10,713,302

SEARCH PROCESSING METHOD AND DEVICE

TENCENT TECHNOLOGY (SHENZ...

1. A searching processing method, comprising:obtaining, when a first preset time interval arrives, a plurality of historical searching character strings collected within the first time interval;
generating at least one searching character variable sentence pattern corresponding to each of the plurality of historical searching character strings according to a preset searching character variable set;
accumulating a quantity of generating times corresponding to a searching character variable sentence pattern not belonging to a preset common searching sentence pattern set in the generated searching character variable sentence pattern;
adding a searching character variable sentence pattern whose quantity of generating times reaches a first preset threshold of a quantity of times to the preset common searching sentence pattern set;
obtaining a current searching character string sent by a client; and
in response to the current searching character string:
determining a searching character variable sentence pattern belonging to the preset common searching sentence pattern set in at least one searching character variable sentence pattern corresponding to the current searching character string as a target searching character variable sentence pattern,
performing a search query against a database of search templates for media content, the search query including the target searching character variable sentence pattern, and
sending searching result data corresponding to the target searching character variable sentence pattern to the client, the search result data including one or more content items matching the target searching character variable sentence pattern.

US Pat. No. 10,713,301

FLEXIBLE BASELINES IN AN OPERATING PLAN DATA AGGREGATION SYSTEM

RIGHT90, INC., Santa Cla...

1. A computer implemented method of maintaining information in multiple OLAP cubes data structures of a database of a computer and propagating information in real-time through the OLAP cubes to reduce delays in generating an updated baseline forecast, comprising:for each of multiple organizations, dedicating an instance of one of the OLAP cubes to each of the organizations;
for each of the multiple organizations, performing by the computer programmed with code stored in a memory and when the code is executed by a processor of the computer to configure the computer into a machine for:
partitioning each of the OLAP cubes of the database into at least a first partition and a second partition;
receiving a set of initial forecast data representing a prediction or judgment for a future event by the computer;
for each organization, storing the forecast data in the first partition of the OLAP cube of the database dedicated to the organization;
incorporating the set of initial forecast data into the database through the instance of the OLAP cube for analytical processing dedicated to the organization;
processing the initial forecast data by the computer to determine the prediction or judgment for the future event and generating an initial baseline forecast from information stored in the database, including the initial forecast data;
receiving updates to the information stored in the database on an asynchronous or random basis, the updates including changes to the initial forecast data and comments about the initial forecast data;
for each organization, updating the first partition of the OLAP cube of the computer database every time T1, wherein T1 is an amount of time;
identifying some updated information as private and remaining updated information is non-private;
identifying some updated information as allowed and the remaining updated information as denied;
processing the updates by the computer to incorporate the non-private and allowed updates into the database, the database including updates to the initial forecast data for any changes to the initial forecast data;
associating any comments about the initial forecast data including any comments about the updated forecast data, with the forecast data;
propagating the processed updates, the received comments, and the received changes to the initial forecast data in essentially real-time throughout the database through the instance of the OLAP cube dedicated to the organization to (i) associate the received comments and changes with the forecast information and (ii) asynchronously update the baseline forecast with the received updated non-private information changes of the forecast information in essentially real-time;
associating the received comments and changes with the forecast information;
asynchronously updating the baseline forecast with the received changes of the forecast information in essentially real-time;
for each organization, storing the updates in the second partition of the OLAP cube dedicated to the organization;
for each organization, updating the second partition of the OLAP cube dedicated to the organization every time T2, wherein T2 is an amount of time and T2 is less than T1 for each organization; and
generating an updated baseline forecast from the updated OLAP cube and the initial baseline forecast.

US Pat. No. 10,713,299

STAGED TRAINING OF NEURAL NETWORKS FOR IMPROVED TIME SERIES PREDICTION PERFORMANCE

SAS INSTITUTE INC., Cary...

1. An apparatus comprising a processor and a storage to store instructions that, when executed by the processor, cause the processor to perform operations comprising:train a first neural network of a chain of neural networks to generate a first portion of multiple portions of time series data that corresponds to a temporally earliest subrange of time of multiple subranges of time within a full range of time that is covered by the time series data, wherein:
the chain comprises a set of neural networks ordered to start with the first neural network at a head of the chain and to end with a last neural network at a tail of the chain;
each neural network of the chain comprises external inputs, additional inputs and outputs;
each neural network of the chain generates a portion of the multiple portions of the time series data at the outputs of the neural network from input data values provided at the external inputs of the neural network;
each portion of the multiple portions of the time series data corresponds to a subrange of the multiple subranges; and
the set of neural networks is interconnected within the chain such that each neural network, except the first neural network at the head of the chain, receives, at the additional inputs of the neural network, a portion of the multiple portions of the time series data that is generated at the outputs of a preceding neural network in the ordering of neural networks within the chain;
retrieve, from the first neural network, a first neural network configuration data comprising hyperparameters and first trained parameters learned by the first neural network from the training of the first neural network;
train, using at least the first neural network configuration data, a next neural network in the ordering of neural networks within the chain to generate a next portion of the multiple portions that corresponds to a next subrange of time of the multiple subranges of time that temporally follows the earliest subrange;
retrieve, from the next neural network, a next neural network configuration data comprising the hyperparameters and next trained parameters learned by the next neural network from the training of the next neural network; and
use at least the first neural network configuration data and the next neural network configuration data to instantiate the chain.

US Pat. No. 10,713,298

VIDEO RETRIEVAL METHODS AND APPARATUSES

BEIJING ZHIGU RUI TUO TEC...

1. A video retrieval method, comprising:receiving video query information;
determining a semantic concept group sequence according to the video query information, the semantic concept group sequence comprising at least two semantic concept groups and group sequential information between the at least two semantic concept groups, and each semantic concept group in the at least two semantic concept groups comprising at least one simple semantic concept;
wherein the determining a semantic concept group sequence according to video query information comprises:
determining at least two simple semantic concepts and concept sequential information between the at least two simple semantic concepts according to the video query information;
wherein determining the concept sequential information between the at least two simple semantic concepts according to the video query information comprises:
analyzing conjunctions comprised in the video query information; and
determining the concept sequential information of different simple semantic concepts in the at least two simple semantic concepts according to an analysis result of the conjunctions;
clustering simple semantic concepts corresponding to a first concept sequential information into a first semantic concept group, and clustering simple semantic concepts corresponding to a second concept sequential information into a second semantic concept group to obtain the at least two semantic concept groups, wherein the at least two semantic concept groups comprise the first semantic concept group and the second semantic concept group; and
determining the semantic concept group sequence according to the at least two semantic concept groups and the group sequential information between the at least two semantic concept groups; and
retrieving videos at least according to the semantic concept group sequence.

US Pat. No. 10,713,297

CONSOLIDATING VIDEO SEARCH FOR AN EVENT

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method comprising:receiving, by a computer device, a search query from a user computer device;
determining, by the computer device, search results comprising a set of videos that satisfy the search query;
automatically displaying, by the computer device, a matrix of the search results including a horizontal axis based on a first type of video metadata of the search results and a vertical axis based on a second type of video metadata of the search results;
receiving, by the computer device, a user selected level of granularity that defines a number of rows of the matrix of search results;
displaying, by the computer device, a first selectable icon enabling a user to select the horizontal axis of the matrix, wherein a selection of the first selectable icon results in the computer device generating a first type of consolidated video based on the first type of video metadata;
displaying, by the computer device, a second selectable icon enabling the user to select the vertical axis of the matrix, wherein a selection of the second selectable icon results in the computer device generating a second type of consolidated video based on the second type of video metadata, wherein the first selectable icon and the second selectable icon are displayed simultaneously; and
generating, by the computer device based on a user-input selection, the one of the first type of consolidated video or the second type of consolidated video from the set of videos by merging a first portion of a first one of the set of videos with a second portion of a second one of the set of videos, wherein a third portion of the first one of the set of videos overlapping with a fourth portion of the second one of the set of videos is excluded.

US Pat. No. 10,713,296

AUDIO IDENTIFICATION BASED ON DATA STRUCTURE

GRACENOTE, INC., Emeryvi...

1. A computerized method comprising:accessing, using one or more hardware processors, reference audio to be represented by a reference data structure to be generated and stored in a reference database;
generating, using the one or more hardware processors, the reference data structure from the reference audio by at least:
performing a constant Q transform on multiple reference time slices of the reference audio;
binarizing the constant Q transformed reference time slices of the reference audio;
performing a two-dimensional Fourier transform on multiple reference time windows within the binarized and constant Q transformed reference time slices of the reference audio to obtain two-dimensional Fourier transforms of the reference time windows; and
sequentially ordering the two-dimensional Fourier transforms of the reference time windows in the reference data structure;
creating, within the reference database, a data association between the reference audio and the generated reference data structure that includes the sequentially ordered two-dimensional Fourier transforms of the reference time windows, the created data association indicating that the reference data structure is an identifier of the reference audio;
accessing query audio to be represented by a query data structure for comparison to the reference data structure that represents the reference audio; and
generating the query data structure from the query audio by at least:
performing a constant Q transform on multiple query time slices of the query audio;
binarizing the constant Q transformed query time slices of the query audio by, for each constant Q transformed query time slice, calculating a median value of a range of constant Q transformed query time slices that encompasses the constant Q transformed query time slice and binarizing the constant Q transformed query time slice based on the calculated median value of the range;
performing a two-dimensional Fourier transform on multiple query time windows within the binarized and constant Q transformed query time slices of the query audio to obtain two-dimensional Fourier transforms of the query time windows; and
sequentially ordering the two-dimensional Fourier transforms of the query time windows in the query data structure.

US Pat. No. 10,713,295

GENERATING CUSTOM AUDIO CONTENT FOR AN EXERCISE SESSION

Fitbit, Inc., San Franci...

1. A method of generating a customized exercise video for a user, the method being implemented using (a) a computer system comprising one or more processors and (b) a sensor device comprising one or more sensors, the method comprising:displaying a first exercise video to the user, wherein the first exercise video comprises video content of an exercise session comprising one or more components, the one or more components corresponding to one or more physical exercises and meeting one or more criteria with respect to one or more user ranks of the user;
receiving sensor data of the user from the sensor device, wherein the sensor data of the user are generated by the one or more sensors when the sensor device is attached to the user and the user is performing one or more of the one or more components, and wherein the sensor data of the user or data derived therefrom are indicative of the user's physical or physiological condition;
modifying, based on the sensor data of the user and by the one or more processors, at least one user rank of the one or more user ranks;
identifying, by the one or more processors, at least one new component meeting a criterion with respect to the at least one modified user rank; and
generating, by the one or more processors, a second exercise video comprising content of a physical exercise corresponding to the at least one new component.

US Pat. No. 10,713,294

METHOD FOR LEARNING CROSS-DOMAIN RELATIONS BASED ON GENERATIVE ADVERSARIAL NETWORKS

SK TELECOM CO., LTD., Se...

1. A system for translating data between first and second domains using generative adversarial network (GAN), the system comprising:a first generator configured to translate a first data in the first domain to a first translated data;
a second generator configured to translate a second data in the second domain to a second translated data;
a first discriminator configured to discriminate between the first data of the first domain and the second translated data translated by the second generator; and
a second discriminator configured to discriminate between the second data of the second domain and the first translated data translated by the first generator,
wherein the first generator is further configured to be adversarially trained against the second discriminator, and the second generator is further configured to be adversarially trained against the first discriminator.

US Pat. No. 10,713,293

METHOD AND SYSTEM OF COMPUTER-PROCESSING ONE OR MORE QUOTATIONS IN DIGITAL TEXTS TO DETERMINE AUTHOR ASSOCIATED THEREWITH

YANDEX EUROPE AG, Lucern...

1. A computer implemented method for processing one or more quotations in digital texts to determine an author associated therewith, the method executable by a server configured to execute a news aggregator service, the server being coupled to a plurality of digital news services via a communication network, the method comprising:receiving a plurality of digital texts from a database;
parsing each of the plurality of digital texts to extract one or more quotations therefrom, the parsing being executed by applying one or more parsing rules;
identifying at least one associated candidate author for each of the one or more quotations, the identifying being executed by applying one or more identification rules;
assigning, by a first classifier, a quotation similarity value for a given quotation with respect to each of a remaining one or more quotations, the quotation similarity value being representative of a likelihood of the given quotation originating from a same quotation with respect to each of the remaining one or more quotations;
generating a quotation cluster, the quotation cluster comprising:
one or more similar quotations, the one or more similar quotations comprising the given quotation and a subset of the remaining one or more quotations each having the similarity value above a threshold;
a set of candidate authors, the set of candidate authors comprising at least one candidate author associated with each of the one or more similar quotations;
analyzing the set of candidate authors to identify a given candidate author meeting a condition; and
storing the candidate author meeting the condition as the author of the one or more similar quotations.

US Pat. No. 10,713,292

DOCUMENT ANALYSIS APPARATUS AND DOCUMENT ANALYSIS PROGRAM

KABUSHIKI KAISHA TOSHIBA,...

1. A document analysis apparatus comprising:a first document storage circuit for storing first documents, the first documents including first words, wherein the first documents belong to respective categories constituting a hierarchical structure, and the first documents only include opinion documents for a desirable object;
a second document storage circuit for storing second documents, the second documents including second words, and the second documents include the opinion documents for the desirable object and non-opinion documents, wherein at least one of the second documents is classified into a second category, which is one of the respective categories constituting the hierarchical structure;
a document extraction circuit for extracting first extracted documents and second extracted documents from the first document storage circuit and the second document storage circuit, the first extracted documents and the second extracted documents satisfying a condition, wherein the condition is an input being accepted in response to an operation of a user;
an opinion document classification circuit for defining, as training documents, the first extracted documents and the at least one of the second documents classified into the second category among the second extracted documents, and classifying, into the opinion documents and the non-opinion documents, at least another of the second documents that does not belong to the respective categories among the second extracted documents;
an existing category classification circuit for defining, as the training documents, the stored first documents and the at least one of the second documents classified into the second category among the stored second documents, and classifying the classified opinion documents into one of the respective categories to which the training documents belong;
a document clustering circuit for defining, as an object, another opinion document that is not classified into any one of the respective categories by the existing category classification circuit, executing document clustering processing for the object, preparing a new category, and classifying the another opinion document into the new category;
a category determination circuit for defining, as the training documents, a first category to which the stored first documents belong and the second category, and determining whether or not the new category becomes a child category that is subordinate to one of the first and second categories to which the training documents belong,
wherein new first documents and new second documents are successively stored in the first document storage circuit and the second document storage circuit respectively;
a first new category determination circuit for determining whether or not the opinion documents of a predetermined ratio of the opinion documents belonging to the new category are the latest documents stored in the second document storage circuit, when the category determination circuit determines that the new category does not become the child category;
a first new category certification circuit for certifying the new category as one of the respective categories constituting the hierarchical structure, when the first new category determination circuit determines that the opinion documents are the latest documents stored in the second document storage circuit;
a second new category determination circuit for determining whether or not a ratio of a first number of the users who prepared the opinion documents belonging to the new category to a second number of the users who prepared the first extracted documents and the second extracted documents is in excess of the predetermined ratio, when the category determination circuit determines that the prepared new category does not become the child category; and
a second new category certification circuit for certifying the prepared new category as one of the respective categories constituting the hierarchical structure, when the second new category determination circuit determines that the ratio is in excess of the predetermined ratio.

US Pat. No. 10,713,291

ELECTRONIC DOCUMENT GENERATION USING DATA FROM DISPARATE SOURCES

Accenture Global Solution...

1. A computer-implemented method for providing an electronic document, the method being executed by one or more processors and comprising:receiving, by the one or more processors, text content comprising a plurality of segments, the text content being received from one or more data sources;
providing, by the one or more processors, a predefined list of topics based on a selected application, the selected application being selected from a list of applications and indicating a type of electronic document that is to be generated;
receiving, by the one or more processors, a selection of a set of topics to be included in an electronic document, the set of topics comprising one or more topics selected from the predefined list of topics by a user through a graphical user interface;
for each topic in the set of topics, providing, by the one or more processors, a set of contextual words associated with a respective topic, contextual words being determined from a lexical database, each contextual word having a respective frequency, the frequency indicating a number of times that the respective contextual word appears in definitions of the respective topic, a number of times that the respective contextual word appears in definitions of synonyms of the respective topic, and a number of times that the respective contextual word appears in examples in which the respective topic is included;
determining, by the one or more processors, a score for each segment and topic pair, the score indicating a relevance of a respective topic to a respective segment, each score being determined based on respective contextual words of the respective topic and frequencies of the respective contextual words;
for each topic, providing, by the one or more processors, a summary comprising at least one segment based on respective score; and
providing, to a user device, an electronic document comprising one or more summaries, wherein the electronic document is of the type indicated by the selected application.

US Pat. No. 10,713,290

RAPID ACCOUNT REGISTRATION WITH AUTOFILL AND FACIAL RECOGNITION

AMERICAN EXPRESS TRAVEL R...

1. A method comprising:transmitting, by a computer-based system, a phone number linked to a mobile device and a request for user information to a carrier integration server;
receiving, by the computer-based system, the user information from the carrier integration server;
autofilling, by the computer-based system, a field in an account registration page with the user information;
generating, by the computer-based system, a user interface having a first area for capturing a first image of a face of a user operating the mobile device and a second area for capturing a second image of an identification card of the user;
receiving, by the computer-based system and from the mobile device, a photograph captured from the user interface rendered on the mobile device, the photograph comprising the first image of the face of the user operating the mobile device and the second image of the identification card of the user having the face of the user;
performing, by the computer-based system, facial recognition on the photograph by comparing the first image with the second image;
determining, by the computer-based system and based on the facial recognition, that a user operating the mobile device is associated with the user information; and
creating, by the computer-based system, an account for the user.

US Pat. No. 10,713,289

QUESTION ANSWERING SYSTEM

Amazon Technologies, Inc....

1. A computer-implemented method comprising:receiving query data representing a query for information;
identifying a data structure comprising:
a plurality of nodes that each represent a respective fact, and
a plurality of links that each represent a respective relationship between facts;
identifying a first function corresponding to a potential answer to the query, the first function being dependent upon a first fact corresponding to a first node of the plurality of nodes;
selecting a first subportion of the data structure, the first subportion comprising the first function linking the first node to a second node representing an answer to the query;
identifying a second function corresponding to a potential answer to the query, the second function being dependent upon a second fact corresponding to a third node;
selecting a second subportion of the data structure, the second subportion comprising the second function linking the third node to the second node; and
determining a portion of the data structure to include the first subportion and the second subportion, such that the second node becomes a terminal node of the portion.

US Pat. No. 10,713,288

NATURAL LANGUAGE CONTENT GENERATOR

Semantic Machines, Inc., ...

1. A method for providing a conversational system that generates natural language content, comprising:maintaining, on a computing device, a dialogue state representation for a conversation between a user and an agent executing on the computing device, wherein the dialogue state representation includes a hypergraph including a plurality of hyperedges, each hyperedge having an associated natural language description;
recognizing a content generation event initiated by the agent, designating an object to be described;
selecting, with a previously-learned scoring function, a hyperedge in the hypergraph associated with a first attribute of the object;
outputting an associated natural language description of the first attribute of the object;
updating the hypergraph to indicate that the associated natural language description of the first attribute of the object was output;
recognizing a subsequent content generation event initiated by the agent, designating the same object to be described;
selecting, with the previously-learned scoring function, a different hyperedge in the hypergraph associated with a second, different attribute of the object; and
outputting an associated natural language description of the second, different attribute of the object.

US Pat. No. 10,713,287

COMPUTERIZED METHOD AND APPARATUS FOR AUTOMATED DISTRIBUTED INGEST AND PRESENTATION OF MULTI-DOMAIN METRICS

Express Scripts Strategic...

1. A computerized search method comprising:specifying a first predefined label for use with the computerized search method;
receiving first input designating a first location of a first analytic;
in response to a scheduling event:
obtaining a first document from the first location;
identifying the first predefined label within the first document;
obtaining a first datum associated with the first predefined label from the first document;
storing the first datum into a value index as a current value of the first analytic;
obtaining a second datum associated with the first predefined label from the first document; and
storing the second datum into a text index as a textual description of the first analytic;
presenting a search interface; and
in response to receiving a search query from a user via the search interface:
identifying a set of result analytics relevant to the search query based on the text index; and
using the search interface, presenting, for each analytic of the set of result analytics, a textual description of the analytic from the text index and a most recent value of the analytic from the value index.

US Pat. No. 10,713,286

STORAGE OF POINT OF INTEREST DATA ON A USER DEVICE FOR OFFLINE USE

MICROSOFT TECHNOLOGY LICE...

1. One or more computer storage media comprising computer-executable instructions that when executed by a computing device cause the computing device to perform a method of storing point of interest data for offline consumption, the method comprising:receiving digital interaction data for points of interest located in a geographic region, the digital interaction data describing interactions of people with the points of interest;
identifying a first plurality of points of interest with above a low threshold of digital interaction within the digital interaction data;
identifying a second plurality of points of interest with above a medium threshold of digital interaction within the digital interaction data, wherein the medium threshold is different from the low threshold;
identifying a third plurality of points of interest with above a high threshold of digital interaction within the digital interaction data, wherein the high threshold is different from the medium threshold and the low threshold, and wherein an individual point of interest with above the high threshold of digital interaction is also above the medium threshold and the low threshold;
generating a first-tier general offline-map-data collection comprising first-tier information for points of interest in the first plurality of points of interest;
generating a second-tier general offline-map-data collection comprising second-tier information for points of interest in the second plurality of points of interest;
generating a third-tier general offline-map-data collection comprising third-tier information for points of interest in the third plurality of points of interest; and
communicating the first-tier general offline-map-data collection, the second-tier general offline-map-data collection, and the third-tier general offline-map-data collection to a user device associated with a user with a geographic profile that includes the geographic region.

US Pat. No. 10,713,285

GEOCODING LOCATIONS NEAR A SPECIFIED CITY

Uber Technologies, Inc., ...

1. A method for locating a geographic object, the method comprising:receiving, by a computer, request data to locate a first geographic object on a digital map, the request data being indicative of at least first and second address components;
identifying, by the computer, a second geographic object having a first address component matching the first address component of the request data and a second address component differing from the second address component of the request data, the first address component of the second geographic object being found within a region defined by the second address component of the second geographic object; and
providing, for display on the digital map, indicia of the identified second geographic object, and
wherein a distance from the second geographic object to the received second address component of the first geographic object is at most a buffer distance from a geographic region represented by a union of all geographic objects having the second address component of the first geographic object.

US Pat. No. 10,713,284

PLATFORM-BASED DATA SEGREGATION

SAP SE, Walldorf (DE)

1. A system comprising:a first computing device comprising:
a first memory storing first processor-executable process steps and one or more logical database tables, each database table having one or more columns; and
a first of at least one processor to execute the first processor-executable process steps to cause the first computing device to:
receive a first query;
determine that the first query is associated with a first table including geographically-restricted data based on the first table including a partitioning column storing geographic identifiers of geographic locations in which the geographically-restricted data of the first table is to be stored, the geographically-restricted data restricted to being stored in a specific geographic location;
determine, based on the partitioning column of the first table and on the first query, (i) first partition of the first table, the first partition being associated with a first geographic identifier of the geographic identifiers stored in the partitioning column of the first table, (ii) a first remote storage location of a first portion of the first partition storing geographically-restricted data restricted to the geographic location specified by the first geographic identifier, and (iii) a first local storage location of a second replicated portion of the first partition storing a subset of data from the first partition other than the geographically-restricted data restricted to the geographic location specified by the first geographic identifier, the first local storage location being located in a geographic location different from the geographic location specified by the first geographic identifier; and
execute the first query in conjunction with the first remote storage location of the first portion of the first partition and the first local storage location of the second replicated portion of the first partition.

US Pat. No. 10,713,283

DATA SET IDENTIFICATION FROM ATTRIBUTE CLUSTERS

Microsoft Technology Lice...

1. A method comprising:receiving a first identifier for a first member, the first identifier associated with a first member profile comprising attributes of the first member;
identifying, by one or more hardware processors, a set of second members associated with the first member, the set of second members associated with a set of second identifiers, the set of second identifiers associated with a set of second member profiles comprising attributes of the set of second members and a link to one or more members;
generating, by the one or more hardware processors, a cluster comprising the first member profile and one or more member profiles of the set of second member profiles;
generating, by the one or more hardware processors, a cluster representation comprising a set of cluster attributes, the set of cluster attributes comprising at least a portion of the attributes of the first member and the attributes of the set of second members;
identifying, by the one or more hardware processors, a plurality of data sets associated with a set of core attributes, at least one core attribute of the set of core attributes corresponding to one or more attributes of the set of cluster attributes; and
causing display of an identification for at least one data set of the plurality of data sets at a display device associated with the first member, the at least one data set is selected for display based on a determination that the set of second members is deficient in the one or more core attributes, the determination being based on a level of association between the cluster and one or more core attributes associated with the at least one data set being determined to be below a threshold level, the threshold level representing a level below which the set of second members is deficient in the one or more core attributes.

US Pat. No. 10,713,282

SYSTEMS AND METHODS FOR SEAMLESS ACCESS TO REMOTELY MANAGED DOCUMENTS USING SYNCHRONIZATION OF LOCALLY STORED DOCUMENTS

OPEN TEXT SA ULC, Halifa...

7. A method for editing files stored on a remote content server comprising:providing a sync agent deployed on a client computing device coupled over a network to a content server, wherein the client computing device includes a file system and a local cache associated with the content server in the file system of the client, and wherein the sync agent is configured to send a request to the content server for a content stored at the content server, receive the content in response to the request, and store the content in the local cache associated with the content server; and
providing a cache filter disposed between an editor application deployed on the client computing device and the file system of the client computing device, the cache filter configured to intercept file system requests from the editor application when the content in the local cache is open for editing in the editor application, wherein the file system requests include a change request associated with a change to the content in the local cache, the cache filter further configured to inform the sync agent of the change request such that the sync agent makes the change request to the content server to make the change to the content on the content server and the cache filter passes the change request to the file system so that the change can be made on the content in the local cache.

US Pat. No. 10,713,281

INTELLIGENT BATCHING OF VERIFICATION REQUESTS FOR PROFILE STORES

INTUIT, INC., Mountain V...

1. A method for managing synchronization between a profile store and a source of truth that is used to update the profile store, comprising:obtaining a request to compare a first set of attributes from a profile for an entity in the profile store with a source of truth for the first set of attributes, wherein the source of truth further comprises a second set of attributes; and
processing the request on a catch-up service executing on a processor by:
performing one of:
setting a period for delaying processing of the request so that a frequency of access by the catch-up service to the second set of attributes in the source of truth does not exceed a threshold; or
setting the period for delaying processing of the request so that a number of requests identified in a pattern of requests from a source of the request are ignored before the request is processed;
during the period, reducing a load on the source of truth by ignoring additional requests to compare the profile with the source of truth; and
after the period has passed:
obtaining, over a first network connection with the profile store, the first set of attributes from the profile, wherein the profile is shared and updated by a set of remote offerings that use the profile to perform one or more tasks for the entity;
obtaining, over a second network connection with the source of truth, the second set of attributes from the source of truth, wherein the second set of attributes from the source of truth is used by the set of remote offerings to perform one or more additional tasks for the entity;
obtaining a mapping between the first set of attributes and the second set of attributes;
using the mapping to compare the first set of attributes and the second set of attributes for mismatches; and
when a mismatch between the first set of attributes and the second set of attributes is found, correcting the mismatch by modifying the first set of attributes in the profile store based on one or more values from the second set of attributes.

US Pat. No. 10,713,280

SYSTEMS AND METHODS FOR MANAGING DISTRIBUTED DATABASE DEPLOYMENTS

MongoDB, Inc., New York,...

1. A cloud distributed database, the database comprising:at least one cloud based resource, the at least one cloud based resource including processor and memory;
a database subsystem executing on the at least one cloud based resource, wherein the database subsystem comprises:
at least one replica set comprising a primary node hosting a primary database instance that accepts database write operations from client systems, and at least two secondary nodes that host copies of data of the primary database instance that replicate logged operations from the primary node;
a proxy layer configured to:
control authentication of client systems based on connection strings communicated from the client systems connecting to the at least one cloud resources;
assign a portion of the at least one cloud based resource and operating capability of the database subsystem to respective clients;
manage access to the database application for respective clients based on the client connection strings to enable transparent execution of write and read commands against the database subsystem and respective portions of the database hosted by the replica set, and communicate a result to the client system from the portion of database associated with the client system responsive to client communicated operations; and
a monitoring component, executing within the proxy layer, configured to:
monitor usage metrics for cloud resource utilization and database operation;
wherein the proxy layer is further configured to limit resource utilization by any client to pre-defined thresholds for processor, bandwidth, memory, and storage based on usage metrics from the monitoring component.

US Pat. No. 10,713,279

ENHANCED REPLICATION

Microsoft Technology Lice...

1. A method of providing enhanced replication to facilitate data protection, the method comprising:transferring health information from a plurality of host servers that host a plurality of replication targets to a source host server that hosts a replication source, wherein the health information comprises an individual health of the replication process for each of the plurality of host servers that host the plurality of replication targets;
in the source host server, transferring the health information from the source host server to an update server that initiates updates to the replication source;
in the update server, determining a composite health of the replication process based on the health information; and
in the update server, controlling the updates to the replication source based on the composite health of the replication process by at least delaying the updates.

US Pat. No. 10,713,278

FLEXIBLE CONFIGURATION OF OFFLINE SYNCHRONIZATION SCOPE

SAP SE, Walldorf (DE)

1. A computerized method executed by at least one processor, the method comprising:identifying a triggering event associated with a request to perform a synchronization of a client application executing on a client device, the request associated with a request for a partial synchronization of the client application;
obtaining a set of information defining a request context associated with the request to perform the synchronization of the client application, wherein the request context identifies a network connection speed or connection quality of the client device to a particular communications network at the time of the identified triggering event;
identifying a set of potential partial synchronization scenarios, each of the potential partial synchronization scenarios associated with a predefined synchronization context;
comparing the request context to the predefined synchronization contexts of the set of potential partial synchronization scenarios to identify a particular partial synchronization scenario corresponding to the request context; and
in response to identifying the particular partial synchronization scenario corresponding to the request context, performing a set of synchronization operations defined in the identified partial synchronization scenario.

US Pat. No. 10,713,277

PATCHING CONTENT ACROSS SHARED AND TENANT CONTAINERS IN MULTI-TENANCY DATABASE SYSTEMS

SAP SE, Walldorf (DE)

1. A system comprising:one or more computers;
a non-transitory computer-readable medium coupled to the one or more computers, the computer readable medium having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations;
wherein the computer-readable medium comprises:
a shared database container at a first software version; and
multiple tenant database containers each including data for a respective tenant;
wherein the shared database container includes shared content shared by multiple tenants; and
wherein each tenant database container includes local content that is local to a respective tenant; and
wherein the operations comprise:
receiving a first deployment package for upgrading the system to a second software version;
deploying the first deployment package to the shared database container, including:
identifying shared objects that are completely stored in the shared database container, including identifying at least one current shared table in the shared database container that is to store deployed shared content;
determining first shared content for the shared objects in the first deployment package;
identifying partially-shared objects that have a shared portion in the shared database container and a tenant portion in the tenant database container;
determining second shared content for the partially-shared objects in the first deployment package; and
deploying the determined first shared content and the determined second shared content to the shared database container as deployed shared content, wherein deploying the determined first shared content includes:
for each respective current shared table in the shared database container that is to store deployed shared content:
 creating a copy of the respective current shared table;
 determining third shared content to deploy to the respective shared table; and
 deploying the third shared content to the copy of the respective shared table; and
deploying the first deployment package to each respective tenant database container, including:
determining first local content for the partially-shared objects in the first deployment package;
deploying the first local content to the respective tenant database container;
identifying local objects that do not store data in the shared database container;
identifying second local content for the local objects in the first deployment package; and
deploying the second local content to the respective tenant database container.

US Pat. No. 10,713,275

SYSTEM AND METHOD FOR AUGMENTING CONSENSUS ELECTION IN A DISTRIBUTED DATABASE

MongoDB, Inc., New York,...

1. A computer implemented method for managing a distributed database, the method comprising:establishing at least one primary node within a plurality of nodes, wherein the plurality of nodes comprise a distributed database system and the distributed database system provides responses to database requests from database clients;
establishing at least one secondary node configured to host a replica of data of the at least one primary node from the plurality of nodes and update the replica responsive to received replicated operations from the at least one primary node;
establishing at least one arbiter node configured to host an operation log of operations executed by the at least one primary node, wherein the at least one arbiter node does not host a replica of the data; and
electing a new primary node responsive to detecting a failure of the at least one primary node, wherein electing the new primary node includes:
executing a consensus protocol to elect one of the at least one secondary node as the new primary node, wherein the consensus protocol includes participation of the at least one secondary node and the at least one arbiter node associated with the failed at least one primary node;
evaluating election criteria at the at least one secondary node during an election period;
communicating by a respective one of the at least one secondary node i) a self-vote responsive to determining that the respective one of the at least one secondary node meets the election criteria, or ii) a confirmation of a received vote of another secondary node responsive to determining that the another secondary node is more suitable to be elected as the new primary node based on the election criteria; and
evaluating by the respective one of the at least one secondary node the operation log of the at least one arbiter node as part of the acts of determining.

US Pat. No. 10,713,274

METHOD AND/OR SYSTEM FOR TRANSFORMING BETWEEN TREES AND STRINGS

Robert T. and Virginia T....

1. A method of converting signal values for a first expression for more convenient processing and/or storage, the method comprising:accessing instructions from one or more physical memory devices for execution by one or more processors;
executing the instructions accessed from the one or more physical memory devices by the one or more processors;
storing, in at least one of the physical memory devices, signal values resulting from having executed the accessed instructions on the one or more processors,
wherein the one or more physical memory devices also store a database or a portion thereof;
wherein the accessed instructions to transform the database, or the portion thereof, to one or more first expressions in a second view;
wherein the executing the transformation instructions by the one or more processors comprises:
accessing, from the at least one of the physical memory devices, signal values for a first expression in the first view;
transforming the signal values for the first expression in the first view to signal values for the first expression in the second view,
wherein the signal values for the first expression in the first view comprise at least one of a symbol value, a numerical value, or an alphabetic value; and
wherein the signal values for the first expression in the second view comprises at least one of the following expression types: a hierarchical edge or node labeled tree; and;
storing, in the memory, the signal values corresponding to the first expression in the second view, wherein the signal values before and after the transformation correspond to content in the database.

US Pat. No. 10,713,273

REACTIVATION OF SERVICE OBJECTS USING CALL BACK ADDRESS FOR A COMMUNICATION EVENT

Microsoft Technology Lice...

5. A computer-implemented method as recited in claim 1, wherein for each of the one or more service objects, the corresponding factory object is configured to recreate a corresponding type of persisted service object.

US Pat. No. 10,713,272

DYNAMIC GENERATION OF DATA CATALOGS FOR ACCESSING DATA

Amazon Technologies, Inc....

1. A system, comprising:a plurality of compute nodes of a provider network, comprising a respective processor and a memory, that implement different services of the provider network, wherein a plurality of data sets are maintained at one or more of the different services of the provider network;
a data catalog service of the different services of the provider network, the data catalog service configured to:
receive a request to create a data catalog for the plurality of data sets;
in response to the receipt of the request to create the data catalog:
locate the plurality of data sets at other ones of the different services of the provider network;
crawl the plurality of data sets at the other different services to extract respective portions;
apply one or more structure recognition techniques to the respective portions of the data sets to determine respective structural data for to provide to a client that makes the client capable of interpreting between different items within the plurality of data sets according respective schemas determined for the data sets when the client performs access requests to individual ones of the plurality of data sets; and
store the respective structural data as part of the data catalog; and
provide access to the respective structural data in the data catalog in response to one or more requests to access the data catalog.

US Pat. No. 10,713,271

QUERYING DISTRIBUTED LOG DATA USING VIRTUAL FIELDS DEFINED IN QUERY STRINGS

Oracle International Corp...

1. A computer-implemented method, comprising:receiving a plurality of log messages, wherein each log message of the plurality of log messages includes message data, and wherein the message data includes one or more detectable signatures to segment the message data into data fields;
mapping each log message of the plurality of log messages to a message structure, wherein the message structure defines a fixed portion or a variable portion of the message data as a data field;
detecting, for each log message of the plurality of log messages, one or more data fields within the message data, based at least in part on the one or more detectable signatures included in the message data and the mapping of the log message to the message structure, wherein each data field of the one or more data fields corresponds to a value present in the message data;
receiving, via a user interface, input corresponding to a query string for querying at least a portion of the plurality of log messages, the query string including one or more virtual data fields, wherein each of the one or more virtual data fields corresponds to a function of at least one data field of the detected one or more data fields, and wherein the one or more virtual data fields are not present in the detected one or more data fields or the message structure;
parsing the query string to identify each of the one or more virtual data fields;
in response to the parsing, formulating a response to the query string at least in part by:
querying one or more log data stores using the at least one data field, wherein the plurality of log messages are stored at the one or more log data stores,
receiving, for each of the one or more log data stores, partial result data in response to the querying of the log data store, the partial result data including one or more results of querying log messages stored at the log data store,
aggregating the partial result data received from each of the one or more log data stores to determine a preliminary result for the at least one data field, and
performing the function on the preliminary result to determine a formulated response to the query string that included the one or more virtual data fields;
generating a log field view representing the formulated response to the query string, wherein the formulated response to the query string presents the preliminary result; and
presenting, at the user interface, the log field view.

US Pat. No. 10,713,270

EMERGING ISSUE DETECTION AND ANALYSIS

SAP SE, Walldorf (DE)

1. A computer-implemented method comprising:receiving, by an in-memory database engine of an in-memory database, a first input commencing a first structured exploration of an original data set stored in the in-memory database, the input specifying the original data set, a first source of information external to the original data set, and a first filter criterion;
creating, by the in-memory database engine in response to the first input, a first evidence package in the in-memory database and associated with the first structured exploration;
applying, by the in-memory database engine in response to the first input, the first source of information and the first filter criterion to the original data set, to generate a first exploration layer comprising a first subset of the original data set matching the first source of information and the first filter criterion;
receiving, by the in-memory database engine, a second input confirming a relevance of the first exploration level;
storing, by the in-memory database engine in response to the second input, first evidence of the first exploration in the evidence package, the first evidence comprising the first subset, an instance of the first source of information, the first filter criterion, and an identifier of the first structured exploration;
receiving, by the in-memory database engine, a third input comprising an instruction to display the first evidence;
communicating, by the in-memory database engine in response to the third input, the first evidence to a screen
receiving, by the in-memory database engine, a fourth input to continue the first structured exploration, the input specifying a second source of information external to the original data set, and a second filter criterion;
persisting, by the in-memory database engine after receiving the fourth input, the first subset in the in-memory database outside of the evidence package;
receiving, by the in-memory database engine, instructions to preserve a memory capacity of the in-memory database; and
deleting, by the in-memory database engine after receiving the fourth input, the first subset from the in-memory database outside of the evidence package.

US Pat. No. 10,713,269

DETERMINING A PRESENTATION FORMAT FOR SEARCH RESULTS BASED ON A PRESENTATION RECOMMENDATION MACHINE LEARNING MODEL

SPLUNK INC., San Francis...

1. A computer-implemented method, comprising:generating a first presentation recommendation based on a first query, a first search result corresponding to the first query, and a first recommendation model that associates the first query and the first search result with the first presentation recommendation, wherein the first recommendation model is generated via a machine learning algorithm based on first training data;
causing the first presentation recommendation to be provided to a user;
generating a second presentation recommendation based on a second query, a second search result corresponding to the second query, and a second recommendation model that associates the second query and the second search result with the second presentation recommendation, wherein the second recommendation model is distinct from the first recommendation model and generated via the machine learning algorithm based on second training data that includes data produced in conjunction with one or more user responses to the first presentation recommendation and stored in an interaction history database; and
causing the second presentation recommendation to be provided to either the user or a different user.

US Pat. No. 10,713,268

METHODS AND SYSTEMS FOR SOCIAL AWARENESS

Massachusetts Mutual Life...

1. A computer-implemented method comprising:collecting, by a computer, raw data generated from a plurality of interactions between a plurality of users and a plurality of user interfaces, wherein the plurality of user interfaces are displayed, by the computer, on a plurality of computing devices associated with the plurality of users, wherein the plurality of interactions comprises social network chats associated with the plurality of users;
transmitting, by the computer, the raw data generated from the plurality of interactions to a social network database, wherein the raw data generated from the plurality of interactions in stored in the social network database;
tagging and indexing, by the computer, the raw data in the social network database generated from the plurality of interactions to pre-process the raw data, wherein pre-processed data is classified to identify one or more attributes associated to the data, the computer further generating a score for each user, the score corresponding to at least one of a preparedness and availability of each user;
receiving, by the computer, a request for one or more users associated with a project, wherein the request comprises an input of a plurality of project attributes for the project;
generating, by the computer, a record of the project having the plurality of project attributes;
searching, by the computer, the social network database to identify at least one project attribute from the plurality of project attributes in the record of the project associated with the plurality of users having the one or more attributes in the data in the social network database generated from the plurality of interactions; and
generating, by the computer, a record of a team by selecting each user of the plurality of users having the one or more attributes in the data in the social network database associated with the at least one project attribute from the plurality of project attributes in the record of the project, each user within the selected plurality of users having at least one of an availability and preparedness score that satisfies a threshold.

US Pat. No. 10,713,267

NETWORK ANALYSIS SYSTEM

Microsoft Technology Lice...

1. A method, comprising:maintaining social graph data in a social network database, the social graph data representing relationships between member profiles representing members in a social network system;
based on a connection criterion associated with a first member represented by a first member profile in the social networking system, the first member being identified as associated with an entity, identifying contact members represented by respective member profiles in the social network system, wherein the social graph data indicating absence of direct connection between any member from the contact members and the first member, each of the contact members associated with the connection criterion;
determining a subset of the contact members having a specified relationship characteristic indicating an association, reflected in the social graph data, between the entity and the subset of the contact members;
for one or more members in the subset of the contact members, identifying one or more connected introduction members represented in the social graph data as directly connected to a contact member from the set of the contact members and to the first member;
generating connection scores for the one or more connected introduction members, the connection scores quantifying respective connections between the respective one or more connected introduction members and the first member;
generating contact scores for members in the subset of the contact members, the contact scores generated based on a first connection between a contact member from the subset of the contact members and an introduction member from the one or more connected introduction members, a second connection between the introduction member and the first member, and the association between the contact member and the connection criterion; and
causing presentation of the one or more members in the subset of the contact members and one or more of the connected introduction members within a graphical user interface, the presentation of the subset of the contact members in an order generated according to the contact scores, the presentation of the one or more of the connected introduction members in an order generated according to the connection scores, each member from the one or more connected introduction members presented as associated with at least one member from the subset of the contact members.

US Pat. No. 10,713,266

PROCESSING A QUERY VIA A LAMBDA APPLICATION

INTERNATIONAL BUSINESS MA...

1. A method of query processing via a lambda application including a batch processing layer and a speed processing layer, the method comprising:receiving a query including an initial timeframe;
computing partial query results within the initial timeframe, wherein the partial query results within the initial timeframe include a result for data associated with the speed processing layer and results for a first set of data segments associated with the batch processing layer, and wherein the data associated with the speed processing layer is processed with respect to speed view storage based on a window of present time that moves forward as time progresses such that older data beyond which the window moves is no longer stored in or otherwise accessible via the speed view storage;
combining the partial query results within the initial timeframe into a final query result; and
computing partial query results outside of the initial timeframe including results for a second set of data segments associated with the batch processing layer.

US Pat. No. 10,713,263

RANKING ALGORITHMS USING UNIQUE BUCKETING IDENTIFIERS

GOOGLE LLC, Mountain Vie...

1. A method comprising:identifying, by a processing device, a set of content items as candidates for inclusion in a feed displayed to a user of a social network platform in a user interface of the social network platform, wherein the set of content items are hosted by a content sharing platform and are identified as candidates for inclusion in the feed based on a ranking score of each content item from the set of content items, and wherein the ranking score of each content item is generated prior to identifying one or more bucketing tokens for a respective content item from the set of content items;
for each content item from the set of content items, identifying, by the processing device, one or more bucketing tokens provided by the content sharing platform, wherein each bucketing token comprises a unique identifier that identifies a plurality of content items as being associated with a group of users of the content sharing platform that have similar interests; and
adjusting, by the processing device, a ranking score of each content item from the set of content items that has at least one bucketing token matching a bucketing token associated with the user of the social network platform, wherein the set of content items to be included in the feed displayed to the user in the user interface of the social network platform is to be modified based on adjusted ranking scores of respective content items from the set of content items.

US Pat. No. 10,713,262

COMBINED ONLINE AND OFFLINE RANKING FOR SEARCH RESULTS

A9.com, Inc., Palo Alto,...

1. A system, comprising:at least one processor; and
memory including instructions that, when executed by the processor, cause the system to:
train a first ranking function, the first ranking function generating a respective first ranking score for at least one of a set of items using a set of online data;
train a second ranking function using the respective first ranking score for the at least one of the set of items, the second ranking function generating a respective second ranking score for at least one of the set of items using the set of online data and a set of offline data;
generate a respective ranking score for each search result of a set of search results determined in response to a received search query, the respective ranking score being based at least in part upon a respective first score determined using the first ranking function and a respective second score determined using the second ranking function; and
provide at least a subset of the set of search results ordered by the respective ranking score for each search result.

US Pat. No. 10,713,259

FIELD-PROGRAMMABLE GATE ARRAY CARDS IN A STREAMING ENVIRONMENT

International Business Ma...

1. A method for increasing the performance of a stream computing application operating on one or more computer processors, the method comprising:monitoring CPU utilization levels of one or more stream operators of a stream computing application, the one or more stream operators being arranged according to an operator graph;
determining, in response to the monitoring, that a first stream operator that is configured to perform a first operation has a CPU utilization level that exceeds a CPU threshold;
determining that a field-programmable gate array (FPGA) card is configurable to perform the first operation;
configuring the FPGA card to perform the first operation;
adding the FPGA card into the operator graph;
identifying a second stream operator in the operator graph that is configured to perform a second operation on a second stream of tuples;
removing the FPGA card from the operator graph;
adding, in response to the removing the FPGA card from the operator graph, the first stream operator into the operator graph;
removing, in response to the adding the first stream operator into the operator graph, the second stream operator from the operator graph; and
re-adding, in response to the removing the second stream operator from the operator graph, the FPGA card into the operator graph.

US Pat. No. 10,713,258

SYSTEMS AND METHODS FOR VISUALIZING AND MANIPULATING GRAPH DATABASES

dRISK, Inc., Pasadena, C...

1. A graph database manipulation device comprising:at least one processor;
a memory connected to the at least one processor and storing a graph database manipulation application; and
a display device in communication with the at least one processor;
wherein the graph database manipulation application directs the at least one processor to:
obtain a graph database, wherein the graph database comprises:
a set of nodes; and
a set of edges, wherein an edge in a set of edges defines a relationship between a first node in the set of nodes and a second node in the set of nodes and an edge comprises:
edge weight metadata; and
edge display metadata, wherein the edge display metadata describes the spatial relationship between the first node and the second node;
determine a source node;
generate a set of approximated nodes by partitioning the graph database into partial segments within the graph structure;
calculate a set of approximated edges between the source node and the set of approximated nodes based on the edge weight metadata and the edge display metadata;
generate an approximate view of the graph database based on the set of approximated nodes and the set of approximated edges.

US Pat. No. 10,713,257

DATA-CENTRIC REDUCTION NETWORK FOR CLUSTER MONITORING

INTERNATIONAL BUSINESS MA...

1. A computer-implemented data-centric reduction method, the method comprising:configuring a similarity threshold and a correlation redundancy threshold for an entire data set from at least two back-end computing nodes;
reducing the entire data set to a reduced data set from the at least two back-end nodes sent to a front-end computing node by removing data based on the similarity threshold and the correlation redundancy threshold in time and space based on user-specified tolerance thresholds; and
after the front-end node receives the reduced data set, reconstructing the entire data set from the reduced data set using the similarity threshold and correlation redundancy threshold.

US Pat. No. 10,713,256

DATABASE TOOL

Bank of America Corporati...

1. An apparatus comprising:a memory configured to store:
a first cache; and
a second cache; and
a hardware processor communicatively coupled to the memory, the hardware processor configured to:
store a first query submitted by a user to a database in a transaction log;
select a set of information from the transaction log, and store the set of information in a repository, the set of information comprising:
the first query;
the date the user submitted the first query; and
an identification of the user;
determine, based on the set of information, that a probability that the user will access a first portion of the database at a future date is greater than a set threshold;
upon determining that the probability that the user will access the first portion of the database at the future date is greater than the set threshold, copy the first portion of the database into the first cache prior to the future date;
determine a second portion of the database that the user accesses at a frequency greater than a set frequency;
upon determining the second portion of the database that the user accesses at the frequency greater than the set frequency, copy the second portion of the database into the second cache;
determine that a portion of data stored in the second cache is also stored in the first cache;
upon determining that the portion of data stored in the second cache is also stored in the first cache, delete the portion of data that is stored in the second cache and is also stored in the first cache from the second cache;
receive a second query from the user;
determine that the second query is directed at data stored in the first cache;
upon determining that the second query is directed at data stored in the first cache, access the data stored in the first cache;
determine that the second query is not directed at data stored in the first cache;
upon determining that the second query is not directed at data stored in the first cache, determine that the second query is directed at data stored in the second cache; and
upon determining that the second query is directed at data stored in the second cache, access the data stored in the second cache.

US Pat. No. 10,713,255

SPOOL FILE FOR OPTIMIZING HASH JOIN OPERATIONS IN A RELATIONAL DATABASE SYSTEM

Teradata US, Inc., San D...

1. A method for spooling data for use in joining a small table with a large table in a relational database system, said method comprising the steps of:analyzing a join condition for combining records from said small and large tables and selecting qualified rows from said large table; and
writing said qualified rows to a spool file, said spool file including:
a first partition containing hash values of all bind terms for said join condition;
a second partition including a join column with a best selective bind term; and
at least one additional partition including additional join columns used in bind terms.

US Pat. No. 10,713,254

ATTRIBUTE VALUE INFORMATION FOR A DATA EXTENT

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method for providing attribute value information for a data extent comprising a set of data entries, each data entry comprising an attribute string value of at least a first attribute, each attribute string value comprising a sequence of symbols, the method comprising:determining for the first attribute at least one reference string value of a data-extent-specific reference point based on symbol frequencies at each sequence position of the attribute string values of the first attribute in a subset of the set of data entries, the resulting reference string value comprising a sequence of symbols;
determining for each of the attribute string values of the first attribute in the set of data entries an attribute-string-value-specific minimum distance for any reference string value of the data-extent-specific reference point resulting in a set of attribute-string-value-specific minimum distances for the set of data entries;
storing for the data extent the minimum distance and the maximum distance of the set of attribute-string-value-specific minimum distances as attribute value information for further use with query processing.

US Pat. No. 10,713,253

ETL-LESS ZERO-REDUNDANCY SYSTEM AND METHOD FOR REPORTING OLTP DATA

SAP SE, Walldorf (DE)

1. A computer system for processing database information for both transacting and reporting, said computer system comprising:a processor; and
a memory storing instructions that, when executed by said processor, control said computer system to perform a method including:
storing said database information in a row format,
storing said database information in a column format using vertical fragmentation,
in response to a database update request, updating said database information stored in said row format, locking said database information stored in said row format, updating said database information stored in said column format, and unlocking said database information stored in said row format after said database information stored in said column format has been updated, wherein said database information stored in said row format and said database information stored in said column format share a consistent view of said database information, and
in response to a query request to retrieve data, generating a query response based on said database information stored in said column format, wherein generating said query response accesses only one or more columns needed directly for generating said query response.

US Pat. No. 10,713,252

METHODS, SYSTEMS, AND COMPUTER READABLE MEDIUMS FOR PERFORMING AN AGGREGATED FREE-FORM QUERY

EMC IP HOLDING COMPANY LL...

1. A method for performing a single natural language query, the method comprising:receiving the single natural language query that includes aggregated free-form query information comprising a first section and a second section for requesting data pertaining to computer system elements of a computing system, wherein the second section is appended to the first section via a contingency clause, wherein the computer system elements comprise a plurality of physical resources and/or virtualized resources that are included in the computing system, wherein the aggregated free-form query information is represented as a syntax tree;
converting, using the syntax tree, the first section of the aggregated free-form query information into an original query portion, and the second section of the aggregated free-form query information into a contingency query portion for accessing at least one data set;
accessing, using the original query portion, the at least one data set to obtain result information pertaining to an initial computer system element included in the computing system; and
in response to detecting the contingency clause, using the contingency query portion and the result information returned in response to the original query portion to access the at least one data set to obtain computer system element information as specified in the single natural language query by the contingency clause for at least one descendant element or ancestor element related to the initial computer system element included in the result information, wherein the initial computer system element and each of the at least one descendant element or ancestor element are separate elements of the syntax tree.

US Pat. No. 10,713,251

PUSHING DATA TO A PLURALITY OF DEVICES IN AN ON-DEMAND SERVICE ENVIRONMENT

salesforce.com, inc., Sa...

1. A method for pushing data to a plurality of devices of an organization, comprising:receiving, at a middle tier server between a database system and the plurality of devices, a plurality of requests for data from the database system, the plurality of requests being for two or more of the plurality of devices associated with a first organization, the database system containing data for multiple organizations, including the first organization;
transmitting, by the middle tier server, the plurality of requests in bulk and instructions limiting the query to data associated with the first organization to the database system over a network connection;
receiving, by the middle tier server, results for the plurality of requests from the database system over the network connection, the received results being for every one of the transmitted plurality of requests;
filtering, at the middle tier server, the received results for information relevant to each device of the two or more devices, the filtering being based on:
a profile associated with the corresponding device of the two or more devices, the profile defining a data amount based on the capabilities of the corresponding device including the amount of memory, processing power and device size, and rules to match the relevance of the data to the user of the corresponding device, and
a signal sent from the corresponding device that is used by the middle tier server to determine information relevant to the device, the signal including geographic information related to information on the corresponding device; and
transmitting, by the middle tier server, the filtered results to the two or more devices over a different network connection, without the two or more devices contacting the database system, the two or more devices each receiving filtered results that include the information relevant to each device.

US Pat. No. 10,713,250

DISTRIBUTED DATABASE JOB DATA SKEW DETECTION

eBay Inc., San Jose, CA ...

1. A method comprising:for each of a selected plurality of queries to a distributed database:
determining a duration of a phase of the query;
determining a value of a metric correlated with the duration of the phase; and
determining a relative difference between the duration of the phase and an average duration of the corresponding phases of each of the plurality of queries;
based on the determined durations and the determined values, calculating a correlation level between the metric and the duration of the phase and a maximum relative difference between the average duration and the duration of the phase;
for a particular query, when the correlation level exceeds a threshold and the relative difference exceeds a threshold fraction of the maximum relative difference, classifying the particular query as causing a data skew in the distributed database; and
displaying a message identifying the particular query as causing a data skew in the distributed database.

US Pat. No. 10,713,249

MANAGING SNAPSHOTS AND APPLICATION STATE IN MICRO-BATCH BASED EVENT PROCESSING SYSTEMS

ORACLE INTERNATIONAL CORP...

1. A method for managing snapshots created from a Continuous Query Language (CQL) engine, comprising:receiving, by a computing device, a continuous query;
applying, by the computing device, a Directed Acrylic Graph (DAG) transformation to the continuous query to generate a query plan for the continuous query, wherein the query plan is an ordered set of steps used to access data for processing of the continuous query;
applying, by the computing device, a CQL transformation to the query plan to generate a transformed query plan;
receiving, by a computing device, a micro-batch stream of input events related to an application;
processing, by the computing device, the input events using the CQL engine to generate a set of output events related to the application, wherein the processing comprises: performing, by the CQL engine, incremental computation on each of the input events of the micro-batch stream for the continuous query based at least in part on the transformed query plan; and creating, by the CQL engine, output events for each of the input events of the micro-batch stream, wherein the set of output events comprise the output events for each of the input events of the micro-batch stream;
generating, by the computing device and using a snapshot management algorithm implemented by the CQL engine, a snapshot of a current state of a system based at least in part on the set of output events related to the application;
generating, by the computing device, a first directory structure to access snapshot information associated with the snapshot of the current state of the system;
generating, by the computing device, a second directory structure to generate a list of snapshots associated with the current state of the system; and
determining, by the computing device, based at least in part on the snapshot management algorithm, a process to get, add, or clean the list of snapshots associated with the current state of the system.

US Pat. No. 10,713,248

QUERY ENGINE SELECTION

AtScale, Inc., San Mateo...

1. A method for rule-based query engine selection, the method comprising:identifying at least one data storage environment comprising one or more query engines, the query engines accessed to operate on one or more datasets, and the query engines having one or more query engine attributes;
receiving one or more data statements that correspond to at least one subject dataset from the datasets, the data statements having one or more statement attributes;
selecting a target query engine from the query engines by evaluating one or more of the query engine selection rules subject to at least one of, the statement attributes, or the query engine attributes, selection further comprising:
applying a set of query engine selection rules in order according to a priority, the set of query engine selection rules specific to an owner of the data statements, each query engine selection rule of the set of query engine selection rules indicative of at least one of an execution time, load, responsiveness, availability, usage and memory used; and
eliminating the query engines based on satisfaction of the selection rules until a single selected query engine results, the selected query engine satisfying at least one objective of the applied set of query engine selection rules;
generating one or more data operations from the data statements, at least one of the data operations generated to achieve one or more objectives when accessing the target query engine, the objectives comprising minimization of at least one of, a query execution cost, a query execution time, or an accessed data size, the data operations formatted to be executed on the target query engine; and
executing the data operations on the target query engine to operate over the subject dataset.

US Pat. No. 10,713,247

EXECUTING QUERIES FOR STRUCTURED DATA AND NOT-STRUCTURED DATA

Amazon Technologies, Inc....

1. A system, comprising:a memory to store program instructions which, if performed by at least one processor, cause the at least one processor to perform a method to at least:
receive a query on structured data and not-structured data at a query engine, wherein the structured data is stored according to a pre-defined data model and the not-structured data is not stored according to a pre-defined data model;
generate, by the query engine, a query execution plan for the query that comprises:
one or more stateful operations to apply the query to the structured data; and
stateless operations to apply the query to the not-structured data at one or more remote query processing engines;
send, by the query engine, the stateless operations to the remote query processing engines as part of performing the query execution plan to execute the query on the structured data and not-structured data; and
generate, by the query engine, a result for the query based, at least in part, on:
respective results for the stateless operations received from the remote query processing engines; and
respective results for the stateful operations to apply the query to the structured data; and
return, by the query engine the result for the query.

US Pat. No. 10,713,246

COLUMN BASED DATA ACCESS CONTROLS

SAP SE, Walldorf (DE)

1. A system comprising:a memory storing processor-executable instructions; and
a processor to execute the processor-executable instructions to cause the system to:
receive a query specifying a result set of data from at least one database table;
determine whether at least one column of the at least one database table is subject to a column-based authorization restriction, the column-based authorization restriction to restrict access to the at least one column of the at least one database table being based on a column from a database table other than the least one database table including the at least one column;
modify the query, in an instance it is determined that at least one column of the at least one database table is subject to a column-based authorization restriction, to restrict the result set of data in accordance with the column-based authorization restriction;
execute, in response to the modifying of the query, the modified query;
execute, in an instance it is determined that at least one column of the at least one database table is not subject to a column-based authorization restriction, the query; and
save a record of the result of the execution of one of the modified query and the query in a memory.

US Pat. No. 10,713,245

UTILIZING PERSISTENT AND NON-PERSISTENT CONNECTIONS FOR GENERATING A JOB RESULT FOR A JOB

Splunk Inc., San Francis...

1. A method comprising:establishing a non-persistent connection between a first component of a first virtualized execution environment and a second component of a second virtualized execution environment;
establishing a persistent connection between the second component and a third component;
obtaining, by the second component via the persistent connection, information pertaining to a job from the third component, the job corresponding to a job request generated by the first component;
generating, by the second component, a job result for the job in view of the obtained information received from the third component via the persistent connection; and
transmitting, by the second component to the first component, the job result for the job using the non-persistent connection.

US Pat. No. 10,713,244

CALCULATION ENGINE OPTIMIZATIONS FOR JOIN OPERATIONS UTILIZING AUTOMATIC DETECTION OF FORCED CONSTRAINTS

SAP SE, Walldorf (DE)

1. A method comprising:receiving, at a calculation engine of a database management system, a query invoking a calculation scenario including a hierarchical join, the hierarchical join comprising a plurality of nodes, each of the plurality of nodes corresponding to a data source comprising a join operation or one of a plurality of database partitions;
instantiating, by the calculation engine, the calculation scenario, the instantiating of the calculation scenario optimizing the calculation scenario by at least:
determining, by the calculation engine, whether a cardinality of a first join operation in the hierarchical join is above a threshold, the first join operation operating on a first node comprising a first data source, the first join operation further operating a second node comprising a second data source, and the first join operation combining, based at least on a join attribute, data from the first data source and the second data source;
optimizing, by the calculation engine, the first join operation in response to determining the cardinality of the first join operation is above the threshold, the optimizing of the first join operation comprising:
determining that no attributes other than the join attribute is requested from the first node,
determining whether a static filter is present for the first node, the static filter preventing at least a portion of data from being retrieved from the first data source comprising the first node,
in response to detecting that the static filter is present for the first node, caching, at the first join operation, an indication of the presence of the static filter, the cached indication being reused during optimization of a second join operation that is subordinate to the first node in the hierarchical join, and
in response to determining that the static filter is absent from the first node and that no attributes other than the join attribute is requested from the first node, pruning the first node from the hierarchical join; and
executing, by the calculation engine, the query by at least performing the hierarchical join included in the optimized calculation scenario, the performing of the hierarchical join including performing the optimized first join operation without the first node pruned from the first join operation.

US Pat. No. 10,713,243

PRECOMPILED SQL QUERIES THAT ALLOW FOR DYNAMIC SELECTION OF COLUMNS

salesforce.com, inc., Sa...

1. A computer-implemented method, comprising:determining a query to be directed to a database table that comprises a plurality of table columns, wherein the query is used to retrieve database values for a first subset of one or more table columns in the plurality of table columns, wherein the plurality of table columns includes a second subset of one or more table columns from which no database values are to be retrieved for the query;
setting up one or more runtime column selection variables to identify each table column in the first subset of table columns for data retrieval and to identify each table column in the second subset of table columns not for data retrieval;
dynamically binding the one or more runtime column selection variables to a prepared query statement, wherein the prepared query statement comprises a plurality of single-column query statements joined by one or more interstitial union operators;
wherein each single-column query statement in the plurality of single-column query statements joined by one or more interstitial union operators in the prepared query statement specifies a single-column query directed to a corresponding table column in the plurality of table columns with a corresponding predicate, wherein the corresponding predicate in each such single-column query statement is to be bound at runtime dynamically with a corresponding portion of the one or more runtime column selection variables and is evaluated to be true or false in dependence on whether the corresponding table column in each such single-column query statement is in the first subset of table columns or in the second subset of table columns;
causing the prepared query statement to be executed to retrieve the database values for the first subset of table columns in the database table.

US Pat. No. 10,713,242

ENHANCING PERFORMANCE OF STRUCTURED LOOKUPS USING SET OPERATIONS

International Business Ma...

1. A computer-implemented method for providing answers to questions that do not have a direct relationship established in a database, the computer-implemented method comprising:receiving a training question and a training answer set to the training question;
determining a training question structure of the training question;
determining a training subject in the training question;
determining a plurality of paths in a database that links the training subject to a plurality of answer subsets, wherein an answer subset comprises at least one answer in the training answer set to the training question;
performing a relation scoring analysis on the plurality of answer subsets to determine a set operation and a combination of the answer subsets that yield a highest accuracy score when the set operation is applied to the combination of the answer subsets, wherein the relationship scoring analysis comprises determining a first combination of the answer subsets that yield a first highest accuracy score when a union set operation is applied, determining a second combination of the answer subsets that yield a second highest accuracy score when an intersection set operation is applied, comparing the first highest accuracy score to the second highest accuracy score, setting the first combination of the answer subsets and the union set operation as the set operation and the combination of the answer subsets that yield the highest accuracy score when first highest accuracy score is greater than the second highest accuracy score, and setting the second combination of the answer subsets and the intersection set operation as the set operation and the combination of the answer subsets that yield the highest accuracy score when second highest accuracy score is greater than the first highest accuracy score; and
storing a subset of the plurality of paths corresponding to the combination of the answer subsets that yield the highest accuracy score, the set operation performed on the combination of the answer subsets that yield the highest accuracy score, and the training question structure of the training question for use in providing answers to questions.

US Pat. No. 10,713,241

WEIGHTING AND EXPANDING QUERY TERMS BASED ON LANGUAGE MODEL FAVORING SURPRISING WORDS

International Business Ma...

1. A method implemented by an information handling system that includes a processor and a memory accessible by the processor, the method comprising:receiving a question at a question answering (QA) system that includes a plurality of words comprising a first word and a second word adjacent to the first word;
retrieving a first log likelihood value corresponding to the first word, wherein the first log likelihood value is a derivative of a first probability that the first word resides in an n-gram corpus;
retrieving a second log likelihood value corresponding to a phrase comprising the first word and the second word, wherein the second log likelihood value is a derivative of a second probability that the phrase comprising the first word and the second word resides in the n-gram corpus;
calculating a weighting of the first word based on the first log likelihood value and the second log likelihood value;
in response to determining that the weighting of the first word meets a first threshold:
detecting that the first word is included in a list of removable common words to remove from one or more queries; and
updating the list of removable common words by removing the first word from the list of removable common words;
generating one of the one or more queries based on the question, the updated list of removable common words, and the calculated weighting; and
searching, using the generated query, a corpus managed by the QA system, wherein the searching results in one or more search results.

US Pat. No. 10,713,240

SYSTEMS AND METHODS FOR RAPID DATA ANALYSIS

Interana, Inc., Redwood ...

1. A method for rapid data analysis comprising:receiving and interpreting a first query, wherein interpreting the first query comprises identifying a first set of data shards of a first dataset containing data relevant to the first query; wherein the first dataset is partitioned by a first field;
for a first query pass of the first query, collecting a first data sample from the first set of data shards, wherein collecting the first data sample comprises collecting data from each of the first set of data shards;
for the first query pass, calculating a first result to the first query based on analysis of the first data sample; and
for a second query pass of the first query that uses the first result as input, partitioning a second dataset based on a second field, wherein the second data set contains data identical to the first dataset, wherein the second field is identified by a set of shard partitioning rules, based on the first field; wherein the second field is non-identical to the first field.

US Pat. No. 10,713,239

BLOCKCHAIN-BASED DATA STORAGE AND QUERY METHOD AND DEVICE

Alibaba Group Holding Lim...

1. A computer-implemented method, comprising:receiving, by a blockchain node, a service request, the service request comprising one or more data types and respective service data corresponding to the one or more data types that are stored in a blockchain;
determining a service type and identification information corresponding to the service request;
parsing the service request to obtain each data type of the service request and service data corresponding to each data type;
determining that no relational database has been created to correspond to the service type;
in response to determining that no relational database has been created to correspond to the service type, creating a relational database to correspond to the service type; and
storing, based on a mapping relationship between a data type and service data, the service data that is obtained through parsing in the relational database corresponding to the blockchain node.

US Pat. No. 10,713,238

DATABASE METADATA IN IMMUTABLE STORAGE

Snowflake Inc., San Mate...

1. A database system comprising:at least one processor; and
a memory storing instructions that cause the at least one processor to perform operations comprising:
storing table metadata for a current version of a database table in a current version set of table-metadata files in storage;
detecting a modification to the current version of the database table, the modification resulting in a new version of the database table being stored in a new version set of table-data files, the new version set of the set of table-data files being different than a current version set of table-data files;
responsive to the detecting, generating and storing in the storage a new version set of table-metadata files, the new version set of table-metadata files comprising table metadata for the new version of the database table; and
consolidating the new version set of table-metadata files by generating a second new version set of table-metadata files, the second new version set of table-metadata files comprising metadata absent of information from files that have been deleted.

US Pat. No. 10,713,237

AUTOMATICALLY CORRECTING INVALID SCRIPTS IN WEB APPLICATIONS

INTERNATIONAL BUSINESS MA...

1. A method for correcting an invalid script in a web application, comprising:determining an invalid reference in an invalid script;
determining a storage location in a database corresponding to the invalid reference based on a data relationship mapping, in which the data relationship mapping indicates the correspondence between the reference and a storage location in the database;
querying an up-to-date value at the storage location;
determining the queried up-to-date value to be the correct value of the invalid reference;
searching a response corresponding to the invalid reference using the determined correct value to determine the location of the correct value in the response; and
creating a data correlation for the invalid reference according to the determined location and its context and updating an invalid data correlation corresponding to the invalid reference with the created data correlation.

US Pat. No. 10,713,236

SYSTEMS AND METHODS FOR ANALYSIS OF DATA STORED IN A LARGE DATASET

Panorama Software Inc., ...

1. A computer implemented method for detecting at least one anomaly in a dataset, comprising:managing a dataset including a plurality of data entities each including at least one value;
receiving a semantic model that defines associations between two or more data entities;
forming a plurality of multi dimensional data instances, each multi dimensional data instance formed from at least one of a permutation and a combination of a set of data entities from the plurality of data entities according to the semantic model, and includes at least one new calculated value calculated from at least some of said set of data entities;
analyzing the multi dimensional data instances to detect at least one anomalous value, the anomalous value representing a statistically significant deviation according to a deviation requirement, of one or more values from a set of values of the multi dimensional data instances; and
providing the detected at least one anomalous value;
wherein forming the plurality of multi dimensional data instances comprises selecting the set of data entities from the dataset according to a ranking score assigned to respective data entities;
further comprising creating a combination and/or permutation and/or aggregation of data entities according to a ranking requirement.

US Pat. No. 10,713,235

SYSTEMS AND METHODS FOR EVALUATING AND STORING DATA ITEMS

Veritas Technologies LLC,...

1. A computer-implemented method for evaluating and storing data items, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:receiving a data item to be evaluated and stored within a data item repository;
evaluating the data item by comparing the data item with a set of rules used to determine properties of data items;
appending, to a data structure that contains the data item and is separate from data structures that contain other data items stored within the data item repository, a metadata tag that indicates:
at least one determined property of the data item; and
contextual details about a state of at least one rule used to determine the property at a point in time at which the rule was used;
storing, within the data item repository, the data item with the appended metadata tag; and
after the data item has been stored, updating the set of rules used to determine properties of data items by:
searching metadata tags within the data item repository to identify a number of data items that have been evaluated by the rule within a certain period of time; and
determining whether to remove the rule from the set of rules based at least in part on whether the number of data items is below a threshold number.

US Pat. No. 10,713,234

DATA REPAIR WITHIN PRODUCTIVE SYSTEM

SAP SE, Walldorf (DE)

1. A device for securely modifying corrupt data that is stored in a productive system, the device comprising:a processor configured to
receive a request to modify one or more table entries of a base table stored in a productive environment of a productive system,
generate a child table corresponding to the base table within a secure environment of the productive system,
modify the one or more table entries from the base table,
store the modified table entries in the child table, and
execute one or more operations on the child table within the secure environment to determine if the one or more modified table entries repair the base table; and
an output configured to output a determined result of the one or more operations performed on the child table to a user interface shown on a display device.

US Pat. No. 10,713,233

INFORMATION MANAGEMENT SYSTEM

Kabushiki Kaisha Toshiba,...

1. An information management system comprising:an input support system for inputting, in installation work of an apparatus, an electronic document including a work report concerning the installation work by voice a production management database storing a work schedule;
an electronic document database storing the work report;
a progress information database storing progress information; and
a computer processor programmed to:
set an access authority for viewing or updating for each of the databases including:
setting a first access authority to a first terminal so that the first terminal can access the production management database, the electronic document database, and the progress information database;
setting a second access authority to a second terminal so that the second terminal can access the progress information database and the electronic document database but cannot access the production management database; and
setting a third access authority to a third terminal so that the third terminal can access the progress information database but cannot access the production management database and the electronic document database,
transfer, among the databases, information stored in each of the databases including:
transferring, in accordance with a storage of the work report from the second terminal to the electronic document database, the work schedule from the production management database to the progress information database; and
transferring a work result included in the work report from the electronic document database to the progress information database,
create the progress information using the transferred work schedule and the transferred work result, and
store the progress information in the progress information database, wherein the input support system includes:
a voice input unit to which voice is input; and
a computer processor programmed to:
recognize the voice input to the voice input unit, and
output character information based on recognized content of the voice to the electronic document,
the electronic document, to which the character information is output, is stored in the electronic document database,
the computer processor of the input support system is programmed to understand an intention included in the recognized content of the voice,
the input support system further includes an analysis information database in which information necessary for morpheme analysis processing, syntax analysis processing, and semantic analysis processing executed in the understanding the intention is stored,
the computer processor of the input support system is programmed to:
correct the recognized content of the voice to conform to the intention; and
output the character information based on the corrected the recognized content of the voice to the electronic document,
the computer processor of the input support system is programmed to generate synthesized voice corresponding to the character information, and
the input support system further includes a voice output unit configured to output the synthesized voice.

US Pat. No. 10,713,232

EFFICIENT DATA PROCESSING

Computational Systems, In...

1. A method for improving the operation of a computer by transferring data from an SQL database in a storage unit to a memory, the method comprising the steps of:copying the data from the SQL database to a binary file in the storage unit, the binary file having a data structure and a data type,
configuring within the memory a data file having the data structure and the data type, and
copying the binary file in the storage unit to the data file in the memory with a single read/write operation,
wherein reading the data file to locate desired data, when records of the data file are unsorted, comprising:
reading through the entire data file only once to find record positions for data containing predetermined data characteristics,
creating a first pointer table in the memory, the first pointer table including a single record position for a first instance of each of the predetermined data characteristics within the data file,
creating a second pointer table in the memory, the second pointer table including, in association with the record position for the first instance of each of the predetermined data characteristics, a subsequent record position for a next subsequent instance of each of the predetermined data characteristics within the data file, and
reading the data file starting at the record position in the first pointer table that corresponds to a desired one of the predetermined data characteristics, and if the data in the record position does not contain the desired data, iteratively reading the data file at the record position associated with the next subsequent instance in the second pointer table, until the desired data is found.

US Pat. No. 10,713,231

SYSTEMS AND METHODS FOR EVALUATING DATA INCLUDED IN DISPARATE DATABASES AND/OR DATA STRUCTURES

MASTERCARD INTERNATIONAL ...

11. A computer-implemented method for use in evaluating data included in disparate data structures, the method comprising:receiving, as an input, an identification of a batch file, the batch file including: a first aggregation job and a second aggregation job, the batch file, a first target file associated with the first aggregation job, and a second target file associated with the second aggregation job, wherein the first target file associates the first aggregation job with a first database and a date range, and wherein the second target file associates the second aggregation job with a second database different than the first database, the first database including a different type of file system and/or platform than the second database; and
executing the first and second aggregation jobs, wherein executing the first and second aggregation jobs comprises:
requesting a first aggregate of a first data in a first data structure of the first database based on the date range;
receiving the first aggregate of the first data specific to the date range;
loading the first aggregate in an aggregate data structure in a memory of a computing device;
requesting a second aggregate of second data in a second data structure of the second database based on the date range, wherein at least a portion of said second data is duplicative of said first data;
receiving the second aggregate of the second data specific to the date range;
loading the second aggregate in the aggregate data structure in the memory of the computing device; and
comparing the first and second aggregate in the aggregate data structure to verify whether the first data and the second data match.

US Pat. No. 10,713,230

CUSTOM ENTITIES AND FIELDS IN A MULTI-TENANT DATABASE SYSTEM

salesforce.com, inc., Sa...

1. A method comprising:defining, at a server system that is communicatively coupled to at least one storage device, a multi-tenant data structure in the at least one storage device including a data table having a plurality of data columns and a plurality of rows, wherein at least two of the rows of the data table are each specific to different tenants and store data for a corresponding one of the different tenants;
receiving, at the server system from a first tenant a first definition for a first data column of the plurality data columns, the first definition designating a first data field of the first data column for storing data that is of a first data type,
receiving, at the server system from a second tenant a second definition for the data column, the second definition designating a second data field of the first data column for storing data that is of a second data type, wherein the second data type is different than the first data type;
storing in metadata of the multi-tenant data structure, at the at least one storage device by the server system, the first definition for the first data column and the second definition for the first data column by:
storing, in the metadata at the at least one storage device, an identifier of the first tenant in association with an identifier of the first data column and an identifier of the first data type, and
storing, in the metadata at the at least one storage device, an identifier of the second tenant in association with the identifier of the first data column and an identifier of the second data type;
receiving, by the server system from the first tenant, a first data value of the first data type to be stored in the first data column;
storing, at the at least one storage device by the server system, the first data value of the first data type received from the first tenant using the first data field of the first data column;
receiving, by the server system from the second tenant, a second data value of the second data type to be stored in the first data column; and
storing, at the at least one storage device by the server system, the second data value of the second data type received from the second tenant using the second data field of the first data column.

US Pat. No. 10,713,229

INDEX GENERATING DEVICE AND METHOD, AND SEARCH DEVICE AND SEARCH METHOD

NEC CORPORATION, Tokyo (...

1. An index generating device configured to generate an index in which a plurality of nodes each of which includes at least one entry that indicates a datum to be indexed are hierarchized, the index generating device comprising:a memory storing instructions; and
at least one processor configured to process the instructions to implement:
an index generating unit configured to, using a degree of approximation between data computed by a similarity computation unit, generate the index that includes a lower order node and a higher order node, the higher node including an entry, the entry having a link relation with the lower order node and indicating a representative datum, a degree of approximation between the representative datum and a datum being indicated by an entry in the lower order node, and the degree of approximation between the representative datum and the datum indicated by the entry in the lower order node being greater than or equal to a degree of approximation threshold value appended to the link relation; and
a threshold setting unit configured to set the degree of approximation threshold value to a value that increases with descent in hierarchy,
wherein the threshold setting unit is further configured to set, based on a determination that a number of entries of the higher order node exceeds a predetermined entry threshold value, as a new degree of approximation threshold value, one of:
a value obtained by recursive division between the greatest degree of approximation and an already set degree of approximation threshold value, or
a value obtained from the degree of approximation of the representative datum with respect to another entry included in the higher order node.

US Pat. No. 10,713,228

GENERATING AND ACCESSING A DATA TABLE

International Business Ma...

1. A method of using an index shared between a plurality of tables to access a data sharing space (DSS) storing a set of rows from a base table having a plurality of rows with stored data, the method comprising:identifying, in response to a first query for a first table of the plurality of tables, first data values of the index, wherein the index is a data sharing space directory (DSSD) that is configured with index values that map the locations of the set of rows stored in the DSS;
identifying a first set of individual binary bit values using the first query;
indicating the first data values based on the first set of individual binary bit values;
retrieving, using index elements corresponding to the first data values, a first set of rows from the DSS;
identifying, in response to a second query for a second table of the plurality of tables, second data values and at least some of the first data values of the index;
identifying a second set of individual binary bit values using the second query;
indicating the second data values and the at least some of the first data values based on the second set of individual binary bit values;
retrieving, using the index elements corresponding to the second data values and the at least some of the first data values, a second subset of the set of rows from the DSS;
checking the first table for a share parameter in response to the first query;
checking the second table for a share parameter in response to the second query; and
applying the second query to the second subset of the set of rows.

US Pat. No. 10,713,227

EVENT-RELATED MEDIA MANAGEMENT SYSTEM

Uberfan, LLC, Minneapoli...

1. A method of generating intelligent media content, the method comprising:storing event-related data associated with a plurality of events including a particular event in at least one computer readable storage device, the event-related data including event segment data identifying segments of the events including a particular segment of the event;
receiving media content items using at least one computing device, wherein the at least one computing device comprises a plurality of computing devices coupled together, the media content items including a particular media content item;
identifying contextual information associated with the particular media content item using the at least one computing device, wherein the contextual information comprises at least one of: data associated with metadata of the particular media content item, and data associated with content of the particular media content item;
determining that the particular media content item relates to the particular event of the plurality of events based at least in part on the contextual information, using the at least one computing device;
automatically tagging the particular media content item with the particular event using the at least one computing device;
comparing the contextual information to the event segment data for the event to identify a relationship between the particular media content item and the particular segment of the event using the at least one computing device;
automatically tagging the particular media content item with the particular segment of the event as a result of the identified relationship using the at least one computing device;
generating and storing a text-based contextual description for the particular media content item based at least in part on one or more of the particular event and the particular segment of the event;
receiving a second particular media content item of the media content items;
identifying second contextual information associated with the second particular media content item;
determining that the second particular media content item relates to the particular event of the plurality of events based at least in part on the second contextual information;
automatically tagging the second particular media content item with the particular event;
comparing the second contextual information to the event segment data for the event to identify a relationship between the second particular media content item and the particular segment of the event;
automatically tagging the second particular media content item with the particular segment of the event, wherein the tagging of the particular segment of the event to the particular media content item and to the second particular media content item indicates a relationship between the particular media content item and the second particular media content item; and
providing access to the particular media content item and the second particular media content item based at least in part on the relationship between the particular media content item and the second particular media content item in response to a single query received from a user.

US Pat. No. 10,713,226

MANAGING DATA USING ARCHIVING

Workday, Inc., Pleasanto...

1. A system for archiving, comprising:an active memory;
an archive memory;
an interface configured to:
receive an indication to archive an object in the active memory, wherein an object tree is comprised of a plurality of objects, wherein the plurality of objects of the object tree are stored in the active memory, wherein a subtree of the object tree comprises the object and a subset of the plurality of objects, wherein the object has a relation to an other object in the active memory, wherein the object tree comprises the other object and the subtree does not comprise the other object, wherein the object is an root object of the subtree and the subset of the plurality of objects include one or more member objects of the subtree; and
a processor configured to:
in response to receiving the indication to archive the object prepare the object to be archived, wherein to prepare the object to be archived, the processor is configured to:
flag the object as archive prepared by setting an attribute bit associated with the object in an object data table;
monitor the object for accesses, comprising determining a number of object accesses associated with the object; and
determine a number of object accesses associated with the object that do not have archive permission;
archive in the archive memory the object and the subset of the plurality of objects based on the determined number of object access associated with the object and the determined number of object accesses associated with the object that do not have archive permission; and
maintain the relation between the other object stored in the active memory and the archived object stored in the archive memory, wherein to maintain the relation between the other object stored in the active memory and the archived object stored in the archive memory, the processor is configured to enable the archived object stored in the archive memory to be accessed from the other object stored in the active memory by traversing the object tree stored in the active memory from the other object to the archived object stored in the archive memory.

US Pat. No. 10,713,225

CONTENT DATABASE GENERATION

PEARSON EDUCATION, INC., ...

1. A system for alerting a user device when an objective is mastered according to a piecewise Gaussian distribution updated according to a Bayesian method, the system comprising:a user device;
a server to perform actions of:
receiving a response from the user device, the response comprising an identity of a user;
receiving user attribute data, wherein the user attribute data comprises a piecewise Gaussian distribution model of a user skill level and a user error value;
determining a first mastery level of the user from the user skill level and the user error value;
identifying a next objective, wherein:
the next objective is an aggregation of data packets; and
the aggregation of data packets is at a second mastery level,
wherein the second mastery level is more difficult than the first mastery level;
providing a data packet from the aggregation of data packets to the user via the user device;
receiving a response from the user via the user device, wherein the response indicates the user has mastered the next objective;
updating the user attribute data according to a Bayesian method, wherein the update to the user attribute data updates the piecewise Gaussian distribution model; and
generating and provide an alert to the user device indicating mastery of the next objective, wherein the alert comprises code to direct the user device to provide an indicator of the alert.

US Pat. No. 10,713,224

IMPLEMENTING A CONTINUITY PLAN GENERATED USING SOLUTION DATA MODELING BASED ON PREDICTED FUTURE EVENT SIMULATION TESTING

BANK OF AMERICA CORPORATI...

1. A system for implementing a continuity plan generated using solution data modeling based on predicted future event simulation testing, the system comprising:one or more memory devices having computer readable code stored thereon; wherein the one or more memory devices comprises a plurality of databases comprising a model database and a plan database;
one or more processing devices operatively coupled to the one or more memory devices, wherein the one or more processing devices are configured to execute the computer readable code to:
generate one or more solution data models comprising a plurality of asset systems and a plurality of users, wherein each of the plurality of asset systems is associated with at least one user of the plurality of users and wherein at least a first of the plurality of asset systems is associated with at least a second of the plurality of asset systems;
store the one or more solution data models in the model database;
identify, based at least in part on historical event data that indicates a relationship among at least one of a plurality of historical events and at least one of the plurality of asset systems, a potential event associated with at least a first asset of the plurality of asset systems, wherein the potential event has matching characteristics of at least one of the plurality of historical events;
extract a first solution data model associated with the first asset from the model database;
identify one or more relationships associated with the first asset based on the extracted first solution data model, wherein the one or more relationships are communication links associated with the first asset and at least one of one or more servers, one or more applications, and one or more users;
formulate a continuity plan for the potential event based on the one or more relationships associated with the first asset; and
test the continuity plan by creating a simulation of the potential event and implementing the continuity plan for the simulated potential event.

US Pat. No. 10,713,223

OPPORTUNISTIC GOSSIP-TYPE DISSEMINATION OF NODE METRICS IN SERVER CLUSTERS

SALESFORCE.COM, INC., Sa...

1. A method for dissemination of server metrics in a cluster of server nodes and a plurality of clients in communication with the cluster of server nodes, comprising:receiving, at a first server node in the cluster of server nodes, client stored metric information from a client of the plurality of clients, the client stored metric information being piggybacked onto a read or write (R/W) request from the client;
reconciling, at the first server node, the client stored metric information with server stored metric information that is stored by the first server node;
generating first updated metric information;
transmitting, by the first server node, the first updated metric information to the client, the first updated metric information being piggybacked onto a R/W reply from the first server node;
receiving, at a second server node in the cluster of server nodes, the client stored metric information from the client, the client stored metric information being piggybacked onto a R/W request from the client, the client stored metric information having been updated based on the first updated metric information;
reconciling, at the second server node, the client stored metric information with server stored metric information that is stored by the second server node;
generating second updated metric information; and
transmitting, by the second server node, the second updated metric information to the client, the second updated metric information being piggybacked onto a R/W reply from the second server node.

US Pat. No. 10,713,222

CONVERSION OF DATA FOR OPERATING SYSTEMS

1. A method, comprising:receiving, by a hardware processor, a request for a file system object, the request for the file system object specifying a write access, a hardware component, and a software application;
determining, by the hardware processor, a software driver associated with the hardware component;
retrieving, by the hardware processor, a block of data associated with the write access; and
converting, by the hardware processor, the block of data from a format used by the software application into a different format used by the software driver;
wherein the block of data is converted for the write access specified by the request for the file system object.

US Pat. No. 10,713,221

DUAL LAYER DEDUPLICATION FOR A FILE SYSTEM RUNNING OVER A DEDUPLICATED BLOCK STORAGE

EMC IP Holding Company LL...

1. A method for dual layer deduplication for a file system running over a deduplication block storage system, comprising:accessing a file by a file system driver of the file system, the file stored as one of a plurality of files in the file system;
breaking the file down into multiple blocks;
generating chunks from the blocks, wherein for at least one of the chunks adding a trail of zeros until a size of a respective one of the chunks is a multiple of a block size of the deduplication block storage system, and
performing, by the deduplication block storage system, deduplication on the chunks and compression on deduplicated chunks having the trailing zeros;
wherein the file includes data and metadata that describes a structure of the data, the metadata for each file including a list of locations where the file is chunked.

US Pat. No. 10,713,220

INTELLIGENT ELECTRONIC DATA CAPTURE FOR MEDICAL PATIENT RECORDS

Koninklijke Philips N.V.,...

1. A device for editing an electronic medical record (EMR), the device comprising:a mobile device including
a touch-sensitive display,
a communication link, and
at least one electronic processor programmed to cause the mobile device to perform an EMR data entry method, wherein the at least one electronic processor is configured to:
display a medical document on the touch-sensitive display,
overlay an EMR data entry fillable form having user-editable fields on the touch-sensitive display as a partially transparent overlay superimposed on the displayed medical document,
display a visible link between text content in the displayed medical document and the user-editable field of the overlaid EMR data entry fillable form into which the text content is to be transferred,
transfer the text content from the displayed medical document into at least one of the user-editable fields of the overlaid EMR data entry fillable form, and
after filling out the overlaid EMR data entry fillable form, upload at least content of the user-editable fields of the filled out EMR data entry fillable form to the EMR via the wireless communication link.

US Pat. No. 10,713,219

METHODS AND APPARATUS FOR DYNAMIC IMAGE ENTRIES

Yearbooker, Inc., New Yo...

1. An image generating apparatus for generating an interactive communication based upon a static replication of a hardcopy, the apparatus comprising:an image capture device for generating digital image data representative of a plurality of disparate pages of a hardcopy volume, wherein each disparate page of the plurality of disparate pages memorializes a designated page of the hardcopy volume as static image data;
a server for post processing the digital image data representative of a plurality of pages of the hardcopy volume, said server comprising a processor in logical communication with the image capture device and in logical communication with a smart device via a digital communications network; and
executable software stored on the server and executable on demand, the executable software operative with the processor to cause the server to:
receive the static image data memorializing a first page of the plurality of disparate pages of the hardcopy volume;
associate a set of Cartesian Coordinates with specific segregated spatial areas of the static image data of the first page of the plurality of disparate pages of the hardcopy volume;
receive from the smart device operated by a first user the set of Cartesian Coordinates;
receive from the smart device operated by the first user and via the digital communications network an identification of the first user;
receive from the smart device operated by the first user and via the digital communications network, a GPS position;
associate a weather condition with the GPS position on a date of receipt of the receipt of the GPS position;
generate a dynamic image entry based upon the weather condition associated with the GPS position as a memorybooker entry, the dynamic image entry comprising a moving animation;
receive from the smart device operated by the first user a designation of a recipient, wherein the recipient is a second user;
generate a memorybooker interface comprising the dynamic image entry placed over the static image of the first page of the plurality of disparate pages of the hardcopy;
transmit to a smart device operated by a second user, a second user interface comprising a notification that the memorybooker entry has been received from the first user and an interactive control functional operative to transmit an indication generated by the second user, the interactive control accepting or rejecting the memorybooker entry;
receive from the smart device operated by the second user an indication accepting the memorybooker entry; and
based upon receipt of the indication accepting the memorybooker entry, transmit the memorybooker entry to the smart device operated by the second user comprising the media entry designated for the second user by the first user.

US Pat. No. 10,713,218

SYSTEM AND METHOD TO OPTIMALLY APPLY LOCAL RETENTION IN A REMOTE REPOSITORY

International Business Ma...

1. A system, comprising:one or more computers programmed for:
storing one or more content items and one or more hold anchors in at least one repository;
storing one or more tracking objects and one or more representational anchor objects in at least one database system, wherein each of the tracking objects represents one of the content items and each of the representational anchor objects represents one of the hold anchors;
using a first one of the hold anchors for placing one or more holds on one or more of the content items in the repository for a first defined period of time, and representing and tracking the holds using a first one of the representational anchor objects and one or more of the tracking objects in the database system for the first defined period of time;
when the first defined period of time expires, using a second one of the hold anchors for placing the holds on the one or more of the content items in the repository system for a second defined period of time, and representing and tracking the holds using a second one of the representational anchor objects and the one or more of the tracking objects in the database system for the second defined period of time;
wherein each of the holds are placed only through the first or second one of the hold anchors and represented by the first or second one of the representational anchor objects; and
recovering from a failure of the repository or database system by performing the steps of:
(1) in the database system, locating one of the representational anchor objects with a latest start time;
(2) in the repository, finding the hold anchors that have a timestamp later than the latest start time;
(3) in the repository, finding the content items that have been placed on one of the holds for the hold anchors found in step (2);
(4) in the database system finding the tracking objects that represent the content items found in step (3);
(5) in the database system, performing a fixup on the representational anchor objects for the tracking objects found in step (4), if the tracking objects are associated with a different one of the representational anchor objects, wherein the fixup is applied so that the representational anchor objects on the database system agree with the hold anchors on the repository;
(6) in the database system, adding the tracking objects found in step (4) to a set B, if the tracking objects represent the content items that have been placed on one of the holds;
(7) in the repository, releasing or tracking the content items that have been placed on one of the holds, for the tracking objects found in step (4), if the tracking objects and the representational anchor objects indicate that the content items are not on one of the holds;
(8) in the repository, optionally removing the hold anchors that do not have corresponding representational anchor objects in the database system;
(9) in the database system, finding the tracking objects that represent the content items that have been placed on one of the holds due to any of the hold anchors found in step (2) and then adding the tracking objects to a set A; and
(10) in the database system, determining the tracking objects in a set C, wherein the set C=set A?set B; and (11) in the repository, placing one of the holds on the content items represented by the tracking objects in the set C.

US Pat. No. 10,713,217

METHOD AND SYSTEM TO MANAGING PERSISTENT STORAGE USING PERFECT HASHING

EMC IP Holding Company LL...

1. A method for managing persistent storage, the method comprising:generating a perfect hash function (PHF) using a snapshot for a plurality of files stored in the persistent storage;
populating a bit vector using the PHF and a plurality of segment references to obtain a populated bit vector, wherein each of the plurality of segment references is associated with at least one candidate file of a plurality of candidate files and wherein the plurality of candidate files is a subset of the plurality of files;
updating the bit vector using the PHF and a second plurality of segment references to obtained an updated bit vector, wherein each of the second plurality of segment references is associated with at least one non-candidate file of a plurality of non-candidate files and wherein the plurality of non-candidate files is a second subset of the plurality of files;
making a determination that a projected freed amount of space in the persistent storage is below a threshold amount, wherein the projected freed amount of space is determined using the updated bit vector; and
performing an action based on the determination.

US Pat. No. 10,713,216

USING RELATIVE GENERATION NUMBERS TO DEDUPLICATE FILE SYSTEM EVENTS

EMC IP Holding Company LL...

1. A method comprising:receiving a set of change notify requests received from a set of clients, wherein change notify requests are associated with at least one target file or target directory;
generating a set of user space filter buffers, wherein user space filter buffers are associated with change notify requests;
generating a hash table to store event entries wherein each event entry includes at least an event logical inode number (“LIN”), a parent LIN, an event type, and a generation number;
maintaining a hash table generation number associated with the hash table;
adding event entries to subsets of user space filters based on the event LIN associated with the event entry; and
notifying clients associated with the subset of user space filter buffers.

US Pat. No. 10,713,215

ALLOCATING NON-CONFLICTING INODE NUMBERS

International Business Ma...

1. A method for allocating non-conflicting inode numbers between files generated at a first location and files generated at a second location, the method comprising:providing an inode number allocation rule table comprising an inode number allocation rule column and an allocation status column, the inode number allocation rule column listing a plurality of inode number allocation rules for generating unique inode numbers for files associated with the first location, the second location, and an unassigned location, wherein the allocation status column indicates an assigned status for each inode number allocation rule of the plurality of inode number allocation rules that are assigned to one of the first location and the second location and an unassigned status for each inode number allocation rule of the plurality of inode number allocation rules that are not yet assigned to one of the first location and the second location, wherein the inode number allocation rule table includes at least one inode number allocation rule having the unassigned status, wherein the unassigned status indicates an availability of the at least one inode number allocation rule for assignment to one of the first location and the second location, and wherein the first location is on a first server and the second location is on a second server;
generating a fileset at the first location comprising:
referencing the inode number allocation rule table to identify the at least one inode number allocation rule having the unassigned status;
assigning the at least one inode number allocation rule having the unassigned status to the fileset at the first location;
changing, in the allocation status column of the inode number allocation rule table, the unassigned status of the at least one inode number allocation rule to the assigned status;
registering, in the inode number allocation rule table, information associated with the fileset comprising at least one of a fileset ID, a mount point, and an identification for the first location; and
generating a file at the first location comprising:
determining the fileset within which to generate the file; and
allocating an inode number for the file based on the assigned inode number allocation rule associated with the determined fileset.

US Pat. No. 10,713,214

HARDWARE ACCELERATOR FOR OUTER-PRODUCT MATRIX MULTIPLICATION

HABANA LABS LTD., Caesar...

1. Computational apparatus, comprising:a systolic array of processing elements arranged in a grid of rows and columns, each processing element comprising a multiplier and first and second accumulators and being configured such that in each of a sequence of processing cycles, the processing elements perform the following steps concurrently:
the processing elements in a first row of the array receive a first vector of first operands, while the processing elements in a first column of the array receive a second vector of second operands;
each processing element, except in the first row and first column, receives the first and second operands from adjacent processing elements in a preceding row and column of the array, respectively, multiplies the first and second operands together to generate a product, and accumulates the product in the first accumulator; and
each processing element passes a stored output data value from the second accumulator to a succeeding processing element along a respective column of the array, receives a new output data value from a preceding processing element along the respective column, and stores the new output data value in the second accumulator; and
synchronization logic, which is coupled to load a succession of the first and second vectors into the first row and first column of the array, and upon completion of processing of the succession by the array, to trigger the processing elements to transfer respective data values from the first accumulator to the second accumulator for output from the array.

US Pat. No. 10,713,213

SYSTEMS AND METHODS FOR MULTI-ARCHITECTURE COMPUTING

Intel Corporation, Santa...

1. A computing device, comprising:a processor system including a first processing core having a first instruction set architecture (ISA) and a second processing core having a second ISA different from the first ISA;
a memory device coupled to the processor system, wherein a first binary representation of a program and a second binary representation of the program are stored as a multi-architecture binary executable in the memory device, and the first binary representation and the second binary representation utilize at least one data structure compatible with both the first ISA and the second ISA;
a dynamic loader to operate on the processor system to, when the first processing core is to run the program, selectively load the first binary representation to run the program with the first processing core;
scheduling logic to operate on the processor system to halt execution of the program by the first processing core and start execution of the program by the second processing core;
checkpointing logic to record a state of the program executing on the first processing core and to provide the state to the second processing core so that the program can be halted on the first processing core and resumed on the second processing core; and
unwinding logic to cause a program stack of the program to unwind to a previous function call prior to resumption of execution of the program by a second processing core.

US Pat. No. 10,713,211

PRE-REGISTERING MEMORY REGIONS FOR REMOTE DIRECT MEMORY ACCESS IN A DISTRIBUTED FILE SYSTEM

Red Hat, Inc., Raleigh, ...

1. A method comprising:pre-registering, by at least one processing device at a client device, multiple input/output (IO) buffers comprising memory regions at the client device for a remote direct memory access (RDMA) interface at the client device, wherein the client device provides an application executed by the client device with access to a distributed file system comprising multiple server devices using the RDMA interface, and wherein the IO buffers are pre-registered during initialization of the RDMA interface prior to providing the application with access to the distributed file system using the RDMA interface;
receiving a request to access a file in the distributed file system from the application at the client device;
responsive to determining that data of the file has been designated for caching, designating a first IO buffer among the IO buffers as a cache for the data from the file; and
receiving the data for the file in the first IO buffer from the distributed file system using the RDMA interface.

US Pat. No. 10,713,210

DISTRIBUTED SELF-DIRECTED LOCK-FREE RDMA-BASED B-TREE KEY-VALUE MANAGER

MICROSOFT TECHNOLOGY LICE...

1. A system, comprising:a plurality of networked computing devices in communication via remote direct memory access-enabled network interface controllers;
a dynamic B-Tree based key-value store comprising nodes distributed across two or more of the networked computing devices, each node further comprising a plurality of key-value/pointer pairs;
a plurality of the networked computing devices concurrently performing self-directed lock-free reads of the key-value store;
a plurality of the networked computing devices concurrently performing self-directed lock-free writes to particular memory locations of the key-value store; and
each lock-free write being performed via a combination of a remote direct memory access-based compare and swap operation to reserve one of the particular memory locations of the key-value store by modifying a reservation bitmap via the remote direct memory access-based compare and swap operation followed by a remote direct memory access-based write to that reserved memory location, and upon successful completion of the remote direct memory access-based write to the reserved memory location, another remote direct memory access-based compare and swap operation to further modify the reservation bitmap to indicate that the reserved memory location is available.

US Pat. No. 10,713,209

RECALIBRATION OF PHY CIRCUITRY FOR THE PCI EXPRESS (PIPE) INTERFACE BASED ON USING A MESSAGE BUS INTERFACE

Intel Corporation, Santa...

1. An apparatus comprising:physical layer (PHY) circuitry;
a memory to implement a message bus register, wherein a set of control and status signals are mapped to bits of the message bus register, and the set of control and status signals comprises a recalibration request signal mapped to a particular one of the bits of the message bus register; and
an interface to couple to a controller, wherein the interface comprises a PHY Interface for the PCI Express (PIPE)-based interface, and the interface comprises:
a set of data pins comprising transmit data pins to send data to the controller and receive data pins to receive data from the controller;
a particular set of pins to implement a message bus interface, wherein a write command is to be received from the controller over the message bus interface to write a value to the particular bit; and
recalibration circuitry to perform a recalibration of the PHY circuitry based on the value written to the particular bit.

US Pat. No. 10,713,208

REMOTELY POWERED, MULTISITE SENSING SYSTEM WITH A SHARED, TWO-WIRE BUS FOR POWER AND COMMUNICATION

Senseonics, Incorporated,...

12. A method comprising:using a first sensor of a sensing system to generate a first data signal;
using a second sensor of the sensing system to generate a second data signal, wherein the second sensor and the first sensor are spatially separated;
using a shared bus of the sensing system to provide the first and second data signals from the first and second sensors to an interface device of the sensing system, wherein the shared bus is connected to the interface device, the first sensor, and the second sensor; and
using the interface device to convey the first and second data signals to a transceiver external to the sensing system.

US Pat. No. 10,713,207

USB TO SYNCHRONOUS SERIAL INTERFACE WITH EXTERNAL CLOCK SIGNAL

Venturi, LLC, Huntsville...

1. An apparatus, comprising:an application-specific integrated circuit (ASIC) that is configurable in a multi-protocol generic mode and in an adaptive clock mode, wherein the ASIC is configured to:
implement a multi-protocol generic command processor in the multi-protocol generic mode where the ASIC is operable to be commanded so as to execute a generic bus command that converts between a Universal Serial Bus (USB) protocol and any commanded one of a plurality of synchronous serial protocols in the multi-protocol generic mode;
generate an internally generated clock signal;
synchronize the internally generated clock signal in accordance with an externally generated clock signal in the adaptive clock mode;
synchronize the execution of the generic bus command with the internally generated clock signal in the adaptive clock mode so that the ASIC thereby synchronizes the execution of the generic bus command in accordance with the externally generated clock signal; and
a computer device configured to communicate with the ASIC in accordance with the USB protocol, wherein the computer device is configured to set the ASIC to operate in the multi-protocol generic mode and in the adaptive clock mode, and to issue the generic bus command to the ASIC when the ASIC has been set to operate in the multi-protocol generic mode and in the adaptive clock mode.

US Pat. No. 10,713,206

METHOD FOR OPERATING A DEVICE IN ONE OF MULTIPLE POWER MODES AND CORRESPONDING DEVICE, SYSTEM, COMPUTER READABLE PROGRAM PRODUCT AND COMPUTER READABLE STORAGE MEDIUM

INTERDIGITAL CE PATENT HO...

1. A method to be implemented in a first communication device adapted to be powered via a wired first communication interface of said first communication device and to be configured as a master device or as a slave device for exchanging data with at least one second communication device via said wired first communication interface of said first communication device, said method comprising, when said first communication device is connected to a second communication device via said first communication interface and is configured as a master device, with respect to said second communication device:obtaining a product identifier of a third communication device interconnecting said first communication interface of said first communication device with a second communication interface of said second communication device; and
operating in a first operating mode, compatible with a first power consumption, or in a second operating mode, leading to a second power consumption higher than said first power consumption, depending on said obtained product identifier.

US Pat. No. 10,713,205

UNIVERSAL SERIAL BUS (USB) DISCONNECTION SWITCH SYSTEM, COMPUTER PROGRAM PRODUCT, AND METHOD

DIGITAL 14 LLC, Abu Dhab...

1. A computer program product comprising computer executable instructions stored on a non-transitory computer readable medium that when executed by a processor instruct the processor to:determine that a USB port integrated with a computing device is in electrical communication with at least one hardware component of the computing device via a data bus;
access a setting within the computing device indicating a first predefined condition of the computing device for causing a switch to physically disconnect the data bus from the at least one hardware component of the computing device;
determine that the first predefined condition of the computing device is satisfied, the first predefined condition including at least one of:
the computing device being connected to an untrusted external device, or
a network to which the computing device is connected being identified as unsecure; and
control the switch to physically disconnect the data bus from the at least one hardware component of the computing device, responsive to the determination that the USB port is in electrical communication with the at least one hardware component via the data bus and the determination that the first predefined condition of the computing device is satisfied.

US Pat. No. 10,713,204

CONTROLLING A MODE OF COMMUNICATION BETWEEN A HOST COMPUTER AND A DETACHABLE PERIPHERAL DEVICE

Hewlett-Packard Developme...

1. A method comprising:communicating data between a host computer and a peripheral device, wherein the peripheral device comprises a keyboard, the peripheral device is docked to the host computer, and communicating data between the host computer and the peripheral device comprises communicating keyboard input data from the keyboard to the host computer using a wireless mode of communication;
detecting a transition of the host computer from operating in a first power conservation state associated with a first power consumption to operating in a second power conservation state associated with a second power consumption less than the first power consumption; and
in response to the detection of the transition, automatically transitioning from using the wireless mode of communication to communicate the keyboard input data from the keyboard to the host computer to using a wired mode of communication to communicate the keyboard input data from the keyboard to the host computer.

US Pat. No. 10,713,203

DYNAMIC PARTITION OF PCIE DISK ARRAYS BASED ON SOFTWARE CONFIGURATION / POLICY DISTRIBUTION

CISCO TECHNOLOGY, INC., ...

1. An apparatus comprising:at least one Peripheral Component Interconnect Express (PCIe) switch having an input port operatively connected to a respective CPU and at least one output port; and
at least one multiplexer connected between the at least one output port of the at least one PCIe switch and a PCIe disk array, the at least one multiplexer configured to alternate a connection of the PCIe disk array between a first configuration and a second configuration in response to a change in a configuration policy, a surprise addition without notification, or a surprise removal without notification, the first configuration being the at least one multiplexer connected to a single PCIe switch in one x4 port mode or two x2 port mode, the second configuration being the at least one multiplexer connected to two PCIe switches in x2 port mode, the at least one multiplexer configured to dynamically affect a switch-over between the first configuration and the second configuration.

US Pat. No. 10,713,202

QUALITY OF SERVICE (QOS)-AWARE INPUT/OUTPUT (IO) MANAGEMENT FOR PERIPHERAL COMPONENT INTERCONNECT EXPRESS (PCIE) STORAGE SYSTEM WITH RECONFIGURABLE MULTI-PORTS

SAMSUNG ELECTRONICS CO., ...

1. A method for quality of service (QoS)-aware input/output (IO) management for a peripheral component interconnect express (PCIe) device, the method comprising:receiving, in a receiver interface, an Input/Output (IO) request from a software application, the IO request comprising data and a data characteristic associated with the data for communicating the data over a data access port, the data characteristic providing an urgency for communicating the data over the data access port;
determining, in a transfer mode selector, a data transfer mode selection based on the data characteristic associated with the data for communicating the data over the data access port, the data transfer mode being selected being one of a throughput-oriented mode, a latency-sensitive mode, and a balanced mode; and
communicating, by a block distribution unit, the data over the data access port in response to the IO request, and according to the data transfer mode.

US Pat. No. 10,713,200

USB ADAPTER AND CABLE

NCR Corporation, Atlanta...

1. A system comprising:a terminal device including a switch and a controller;
a peripheral device; and
a cable electrically coupling the terminal device to the peripheral device, the cable including:
a first end electrically coupled to the terminal device,
a second end electrically coupled to the peripheral device, and
a logic circuit electrically coupling the first end to the second end, the logic circuit comprising a first comparator and a second comparator, the logic circuit operative to:
manipulate a first signal transmitted by the controller and received at the first comparator,
receive at the second comparator, from the controller, a second signal,
transmit, by the first comparator, a third signal to the controller, and
transmit, by the second comparator, a fourth signal to the controller, the controller operative to:
determine that the third and fourth signals are within predetermined ranges, and
transmit a fifth signal to the switch to close the switch when the electrical signal and the fourth signal are within the predetermined ranges.

US Pat. No. 10,713,199

HIGH BANDWIDTH SOUNDWIRE MASTER WITH MULTIPLE PRIMARY DATA LANES

QUALCOMM Incorporated, S...

1. A method comprising:causing a first master device to transmit a clock signal over a clock lane of a SoundWire bus that is coupled to the first master device, wherein a first slave device, which is operated in accordance with a SoundWire protocol, is coupled to the clock lane and a first data lane of the SoundWire bus and wherein a second slave device, which is operated in accordance with the SoundWire protocol, is coupled to the clock lane and a second data lane of the SoundWire bus;
causing the first master device to transmit first control information to the first slave device over the first data lane under control of the clock signal and in accordance with the SoundWire protocol; and
causing second control information to be transmitted to the second slave device over the second data lane under control of the clock signal and concurrently with transmission of the first control information to the first slave device, wherein the second slave device is configured to receive the second control information while operating in accordance with the SoundWire protocol,
wherein the first control information is different from the second control information.

US Pat. No. 10,713,198

DIRECT MEMORY ACCESS CONTROL UNIT FOR A PROCESSING UNIT THAT INCLUDES A WORKING MEMORY

Robert Bosch GmbH, Stutt...

1. A direct access memory control unit comprising:a terminal for connecting the direct memory access control unit to a bus system that connects a processing unit to a working memory of the processing unit and to a communication module, the direct access memory control unit being connected to the working memory via the bus system using the terminal and being connected to the communications module via the bus system using the terminal, wherein the direct memory access control unit is configured to:
read in, from at least two information blocks that are provided by the processing unit for transmission to the communication module, pieces of control information that are stored in the working memory and characterize a priority of the respective information block for the transmission to the communication module, wherein the direct access memory control unit reads in the pieces of control information from the working memory via the bus system using the terminal;
ascertain a sequence for the transmission of the information blocks to the communication module as a function of the respective priority; and
transmit, via the bus system using the terminal, the information blocks from the working memory to the communication module according to the ascertained sequence using a direct memory access, using the bus system using the terminal, from the working memory to the communication module.

US Pat. No. 10,713,197

MEMORY SYSTEM, MEMORY INTERFACING DEVICE, AND INTERFACING METHOD PERFORMED IN THE MEMORY SYSTEM

SAMSUNG ELECTRONICS CO., ...

1. A method of interfacing a memory controller and a memory device in a memory system, comprising:transmitting a control signal between the memory controller and the memory device via a time division multiplexing (TDM) interface using a TDM communication process; and
transmitting data comprising a plurality of bits between the memory controller and the memory device via a serializer/deserializer (SERDES) interface using a SERDES communication process,
wherein the control signal transmitted via the TDM interface using the TDM communication process is transmitted in parallel with the data transmitted via the SERDES interface using the SERDES communication process,
wherein data communication in the memory system is performed via a physical channel and a plurality of virtual channels corresponding to the physical channel,
wherein the control signal indicates which of the plurality of virtual channels which bits included in the data are to be transmitted on.

US Pat. No. 10,713,196

FLEXIBLE AND SCALABLE ACCELERATOR ARCHITECTURE

Intel Corporation, Santa...

1. An accelerator disposed remote from a plurality of processor circuits, the accelerator comprising:queue manager circuitry to:
receive a request from one of a plurality of processor circuits, the request including information indicative of a priority and data representative of a pointer to a first location in system memory circuitry; and
enqueue the pointer to one of a plurality of queue circuits:
a plurality of accelerator circuits;
hardware resource management circuitry to dynamically allocate the plurality of accelerator circuits between the plurality of processor circuits;
direct memory access (DMA) circuitry coupled to the plurality of accelerator circuits, the DMA circuitry to:
receive the pointer from the queue manager circuitry;
read data at the first location in the system memory circuitry;
fetch input data from a second location in the system memory circuitry;
select at least one of the plurality of accelerator circuits based on the dynamic allocation of accelerator circuits to the respective processor by the hardware resource management circuitry;
provide the input data to the selected at least one of the plurality of accelerator circuits allocated to the respective processor;
receive output data from the selected at least one of the plurality of accelerator circuits allocated to the respective processor; and
transfer the output data to a third memory location in the system memory circuitry.

US Pat. No. 10,713,195

INTERRUPTS BETWEEN VIRTUAL MACHINES

Intel Corporation, Santa...

14. A system comprising:a system memory in which to store a first virtual machine control structure for a sending virtual machine, a second virtual machine control structure for a target virtual machine, and a posted interrupt descriptor; and
a first processor including:
an instruction decoder to decode an instruction set of the first processor, the instruction set including a first instruction responsive to which the processor is to send an interrupt from the sending virtual machine to the target virtual machine, the first instruction to be issued by guest software running in the sending virtual machine, the first instruction having a parameter to be used as a handle to specify the target virtual machine; and
an execution unit, implemented at least partially in hardware, to execute the first instruction on the sending virtual machine without causing a virtual machine exit, execution of the instruction to include using the handle to find the posted interrupt descriptor to be used to post the interrupt to the target virtual machine.

US Pat. No. 10,713,194

CALIBRATION ON HIGH-SPEED IO INTERFACES

International Business Ma...

1. A computer-implemented method comprising:acquiring, by one or more processing units, a series of valid control codes for a calibration stage in a channel corresponding to a plurality of calibration cycles from a calibration logic in a receiver;
analyzing, by one or more processing units, the series of valid control codes to obtain changing characteristics for the calibration stage in the channel, wherein the changing characteristics comprise at least one characteristic selected from a group consisting of: a stability for the calibration stage in the channel, and a deviation tendency for the calibration stage in the channel;
adjusting, by one or more processing units, the calibration logic for the calibration stage in the channel in one or more subsequent calibration cycles, by generating, using one or more processing units, a first control signal for controlling the calibration logic for the calibration stage in the channel in one or more subsequent calibration cycles, based on the changing characteristics;
wherein the first control signal comprises a certain number, and the first control signal is used for controlling the calibration logic for the calibration stage in the channel to keep a current valid control code unchanged for the calibration stage in the channel in a subsequent number of calibration cycles; and
wherein generating the first control signal further comprises:
in response to determining that quality degradation for the calibration stage in the channel occurs, based on the changing characteristics, generating, by one or more processing units, a second control signal for controlling the calibration logic for the calibration stage in the channel to generate a new valid control code for the calibration stage in the channel in the one or more subsequent calibration cycles.

US Pat. No. 10,713,193

METHOD FOR REMOTELY TRIGGERED RESET OF A BASEBOARD MANAGEMENT CONTROLLER OF A COMPUTER SYSTEM, AND COMPUTER SYSTEM USING THE SAME

Mitac Computing Technolog...

1. A method for remotely triggered reset of a baseboard management controller of a computer system, the computer system including a first computer node, a second computer node and a control unit, the first computer node including a first baseboard management controller that is electrically coupled to the control unit and that is linked to a computer device via a network, the second computer node including a second baseboard management controller that is electrically coupled to the control unit, said method comprising:(A) receiving, by the first baseboard management controller, from the computer device and via the network, a reset command which indicates that reset of the second baseboard management controller should be triggered;
(B) transmitting, by the first baseboard management controller and to the control unit, a control signal that corresponds to the reset command; and
(C) transmitting, by the control unit and to the second baseboard management controller, a reset signal that corresponds to the control signal, so as to trigger the reset of the second baseboard management controller.

US Pat. No. 10,713,191

SEMICONDUCTOR APPARATUS

SK hynix Inc., Icheon-si...

1. A semiconductor apparatus comprising:first transmitters allocated to a first data byte;
second transmitters allocated to a second data byte;
a switching circuit configured to couple a ground terminal with a power supply node of each of the second transmitters when a control signal has a first value, and couple a power supply terminal with the power supply node of each of the second transmitters when the control signal has a second value, and
a voltage detection circuit configured to generate the control signal depending on a result of detecting voltages of the output nodes of the second transmitters.

US Pat. No. 10,713,190

TRANSLATION LOOK-ASIDE BUFFER PREFETCH INITIATED BY BUS MASTER

Xilinx, Inc., San Jose, ...

1. A circuit arrangement comprising:a bus master circuit including a control register configured to store a value that controls a state of a sequential access signal, the bus master circuit configured to:
issue a plurality of read requests that specify respective virtual addresses, including a first read request that specifies a first virtual address of a first page; and
issue, in response to the state of the sequential access signal and before data of the first page is returned to the bus master circuit, a dummy read request of the plurality of read requests that specifies a second virtual address of a second page; and
a memory management unit (MMU) circuit coupled to the bus master circuit and including:
a translation look-aside buffer (TLB) circuit having a plurality of mappings of virtual addresses to physical addresses;
a translation logic circuit configured to translate the respective virtual addresses to the physical addresses using the mappings of the TLB circuit and to signal a TLB miss in response to absence of a mapping of a virtual address of the respective virtual addresses to a physical address in the TLB;
a first control circuit coupled to the translation logic circuit and configured to determine from a page table, a mapping of a virtual address of the respective virtual addresses, including the second virtual address, to a physical address in response to the signaled TLB miss; and
wherein the translation logic circuit is further configured to update the TLB circuit with the mapping determined from the page table.

US Pat. No. 10,713,189

SYSTEM AND METHOD FOR DYNAMIC BUFFER SIZING IN A COMPUTING DEVICE

QUALCOMM Incorporated, S...

1. A method for dynamically controlling buffer size in a computing device in a portable computing device (“PCD”), the method comprising:determining with a monitor module of a system on a chip (“SoC”) a first use case for the PCD, a plurality of components of the SoC collectively being operable in the first use case, each of the plurality of components having a first activity level in the first use case, the PCD being powered by a battery and comprising a hand-held device;
setting each of a plurality of buffers to a non-zero first buffer size based on the first use case, wherein
each of the plurality of buffers is associated one of the plurality of components of the SoC,
the first buffer size for each of the buffers is based on the first activity level and power consumption of the associated component of the SoC; a depth of at least one buffer for the first buffer size is decreased by turning off power or by gating a portion of the at least one buffer based on reduced activity and reduced power consumption of an associated component during the first activity level;
determining with the monitor module a second use case for the PCD different from the first use case, the plurality of components of the SoC collectively being operable in the second use case, each of the plurality of components having a second activity level in the second use case; and
setting each of the plurality of buffers to a non-zero second buffer size based on the second use case, wherein the second buffer size for each buffer is based on the second activity level and power consumption of the associated component of the SoC, the second buffer size different from the first buffer size; a depth of at least one buffer for the second buffer size is decreased by turning off power or by gating a portion of the at least one buffer based on reduced activity and reduced power consumption of an associated component during the second activity level, such that decreased depth of buffers during the first and second use cases reduces overall power consumption of the PCD and improves life of the battery.

US Pat. No. 10,713,188

INTER-PROCESS SIGNALING SYSTEM AND METHOD

Atmel Corporation, San J...

1. An inter-process signaling system comprising:a plurality of masters;
a plurality of resources shared by the plurality of masters; and
an inter-process signal module coupled to the plurality of masters and the plurality of resources, the inter-process signal module including:
a semaphore flag (SFLAG) register containing at least one bit per resource that indicates whether a resource is free or busy;
an SFLAG set (SFLAGSET) register for selectively setting individual bits in the SFLAG register; and
an SFLAG clear (SFLAGCLR) register for selectively clearing individual bits in the SFLAG register.

US Pat. No. 10,713,187

MEMORY CONTROLLER HAVING DATA ACCESS HINT MESSAGE FOR SPECIFYING THE GIVEN RANGE OF ONE OR MORE MEMORY ADDRESSES

ARM Limited, Cambridge (...

1. A data processing apparatus, comprising:issue circuitry configured to issue data access requests to a first data source; and
prediction circuitry configured to determine whether to send a data access hint message to a second data source, the data access hint message indicating a possible subsequent data access request,
wherein the data processing apparatus is configured to send a data access request to the first data source and a data access hint message to the second data source which is configured to fulfil the data access specified by the data access request when the first data source is unable to fulfil that data access,
wherein the prediction circuitry is configured to determine whether to send the data access hint message to the second data source in response to information, received from one or both of the first data source and the second data source, indicating whether the second data source fulfilled one or more previous data access requests.