Salesforce.com Patent Applications

SIMPLIFIED ENTITY LIFECYCLE MANAGEMENT

Granted: March 23, 2017
Application Number: 20170083175
The technology disclosed offers a declarative framework that implements a machine for multi-step progression of interaction with an entity. The declarative framework is usable over and over for a broad range of applications because it provides a simple rule-based authoring tool that can be used for specifying different elements and components of a complex state machine, including state definitions, state transition triggers, state transition conditions and state transition actions. Once…

MAINTAINING THROUGHPUT OF A STREAM PROCESSING FRAMEWORK WHILE INCREASING PROCESSING LOAD

Granted: March 23, 2017
Application Number: 20170083368
The technology disclosed relates to maintaining throughput of a stream processing framework while increasing processing load. In particular, it relates to defining a container over at least one worker node that has a plurality workers, with one worker utilizing a whole core within a worker node, and queuing data from one or more incoming near real-time (NRT) data streams in multiple pipelines that run in the container and have connections to at least one common resource external to the…

MANAGING PROCESSING OF LONG TAIL TASK SEQUENCES IN A STREAM PROCESSING FRAMEWORK

Granted: March 23, 2017
Application Number: 20170083378
The technology disclosed relates to managing processing of long tail task sequences in a stream processing framework. In particular, it relates to operating a computing grid that includes a plurality of physical threads which processes data from one or more near real-time (NRT) data streams for multiple task sequences, and queuing data from the NRT data streams as batches in multiple pipelines using a grid-coordinator that controls dispatch of the batches to the physical threads. The…

MANAGING RESOURCE ALLOCATION IN A STREAM PROCESSING FRAMEWORK

Granted: March 23, 2017
Application Number: 20170083380
The technology disclosed relates to managing resource allocation to task sequences in a stream processing framework. In particular, it relates to operating a computing grid that includes machine resources, with heterogeneous containers defined over whole machines and some containers including multiple machines. It also includes initially allocating multiple machines to a first container, initially allocating first set of stateful task sequences to the first container, running the first…

PROCESSING EVENTS GENERATED BY INTERNET OF THINGS (IoT)

Granted: March 23, 2017
Application Number: 20170083386
The technology disclosed relates to processing events generated by Internet of Things (IoT) devices. In particular, it relates to storing a machine-readable declarative specification of stateful event processing of an automated multi-step progression of monitoring of Internet of Things (IoT) devices that generate events. It includes compiling into tangible memory, in response to the declarative specification, a state processing network that implements a multi-step progression of…

RECOVERY STRATEGY FOR A STREAM PROCESSING SYSTEM

Granted: March 23, 2017
Application Number: 20170083396
The technology disclosed relates to discovering multiple previously unknown and undetected technical problems in fault tolerance and data recovery mechanisms of modern stream processing systems. In addition, it relates to providing technical solutions to these previously unknown and undetected problems. In particular, the technology disclosed relates to discovering the problem of modification of batch size of a given batch during its replay after a processing failure. This problem…

SYTEMS AND METHODS FOR MAKING VISUAL DATA REPRESENTATIONS ACTIONABLE

Granted: March 23, 2017
Application Number: 20170083589
The disclosed technology includes systems and methods for making visual representations actionable. This technology makes it possible to drill into data, identify records and take action directly, enhancing customized data visualization representations. The technology disclosed relates to a platform for ultra-fast, ad-hoc data exploration and faceted navigation on integrated, heterogeneous data sets. The disclosed systems and methods for adding and customizing quick actions make it…

SIMPLIFIED ENTITY ENGAGEMENT AUTOMATION

Granted: March 23, 2017
Application Number: 20170085445
The technology disclosed offers a declarative and visualization framework that implements a state machine for multi-step progression of interaction with an entity. The declarative framework is usable over and over for a broad range of applications because it provides a simple rule-based authoring tool that can be used for specifying different elements and components of a complex state machine, including state definitions, state transition triggers, state transition conditions and state…

SYSTEM HAVING IN-MEMORY BUFFER SERVICE, TEMPORARY EVENTS FILE STORAGE SYSTEM AND BACKUP EVENTS FILE UPLOADER SERVICE

Granted: March 16, 2017
Application Number: 20170075627
Computer-implemented methods and systems are provided. The system includes a data store that is configured to store events in an event table, a temporary events file storage system (TEFSS), and a cluster of application servers. The cluster includes a first application server that generates events, and a second application server that includes an events file uploader service. When the first application server is unable to directly write events to the data store, an indirect events writer…

HANDLING MULTIPLE TASK SEQUENCES IN A STREAM PROCESSING FRAMEWORK

Granted: March 16, 2017
Application Number: 20170075693
The technology disclosed improves existing streaming processing systems by allowing the ability to both scale up and scale down resources within an infrastructure of a stream processing system. In particular, the technology disclosed relates to a dispatch system for a stream processing system that adapts its behavior according to a computational capacity of the system based on a run-time evaluation. The technical solution includes, during run-time execution of a pipeline, comparing a…

PROVIDING STRONG ORDERING IN MULTI-STAGE STREAMING PROCESSING

Granted: March 16, 2017
Application Number: 20170075721
The technology disclosed relates to providing strong ordering in multi-stage processing of near real-time (NRT) data streams. In particular, it relates to maintaining current batch-stage information for a batch at a grid-scheduler in communication with a grid-coordinator that controls dispatch of batch-units to the physical threads for a batch-stage. This includes operating a computing grid, and queuing data from the NRT data streams as batches in pipelines for processing over multiple…

SYSTEM HAVING IN-MEMORY BUFFER SERVICE, TEMPORARY EVENTS FILE STORAGE SYSTEM AND EVENTS FILE UPLOADER SERVIC

Granted: March 16, 2017
Application Number: 20170075735
Computer-implemented methods and systems are provided for writing events to a data store. An application server generates events, the data store that stores the events, and a temporary events file storage system (TEFSS) temporarily stores groups of events as events files. When events are unable to be written directly to the data store, an indirect events writer is invoked that includes event capture threads each being configured to generate a particular events file, and write it to the…

METHODS AND SYSTEMS FOR EXECUTING TESTS USING GROUPED/FILTERED TEST CLASSES DURING TESTING OF AN APPLICATION

Granted: March 16, 2017
Application Number: 20170075791
Computer implemented methods and systems are provided for executing tests in a system that includes a user system and a cloud-based computing platform communicatively coupled to the user system. The user system includes a processing system, memory and an input system that receives input parameters specified by a user of the user system. The memory can store a test class filter module executable by the processing system. Upon being executed by the processing system, the test class filter…

METHODS AND SYSTEMS FOR COMPUTING CODE COVERAGE USING GROUPED/FILTERED SOURCE CLASSES DURING TESTING OF AN APPLICATION

Granted: March 16, 2017
Application Number: 20170075794
Computer implemented methods and systems are provided for computing code coverage in a system that includes a user system and a cloud-based computing platform. The user system includes a processing system, memory and an input system that receives input parameters specified by a user of the user system. The memory can store a source class filter module executable by the processing system. Upon being executed by the processing system, the source class filter module can, based on one or…

SECURE ISOLATION OF SCRIPTING FROM NATIVE GRAPHIC RENDERING OF ANIMATED DATA VISUALIZATIONS

Granted: March 16, 2017
Application Number: 20170076091
The disclosed technology includes systems and methods for secure isolation of scripting from graphical representations in a unified charting framework. The technology disclosed relates to a platform for ultra-fast, ad-hoc data exploration and faceted navigation on integrated, heterogeneous data sets. The disclosed apparatus and methods for secure isolation of scripting from graphics make it possible to securely share live data as rendered on a live dashboard, for both desktop and mobile…

RECURSIVE CELL-BASED HIERARCHY FOR DATA VISUALIZATIONS

Granted: March 16, 2017
Application Number: 20170076471
The disclosed technology includes systems and methods for a recursive cell-based hierarchy for data visualization. The technology disclosed relates to a platform for ultra-fast, ad-hoc data exploration and faceted navigation on integrated, heterogeneous data sets. The disclosed apparatus and methods for secure isolation of scripting from graphics make it possible to securely share live data as rendered on a live dashboard, for both desktop and mobile application environments, without…

SWITCHING BETWEEN RESTRICTED-ACCESS WEBSITES ON MOBILE USER DEVICES

Granted: March 9, 2017
Application Number: 20170070884
A system stores first information, provided by a first user input via a mobile operating system, which enables access to a first restricted access website. The system stores a first screenshot and first data associated with the first restricted access website in response to a first user request, via the mobile operating system, to switch to a second restricted access website. The system stores second information, provided by a second user input via the mobile operating system, which…

GENERATING FEATURE VECTORS FROM RDF GRAPHS

Granted: March 2, 2017
Application Number: 20170061320
The technology disclosed describes systems and methods for generating feature vectors from resource description framework (RDF) graphs. Machine learning tasks frequently operate on vectors of features. Available systems for parsing multiple documents often generate RDF graphs. Once a set of interesting features to be considered has been established, the disclosed technology describes systems and methods for generating feature vectors from the RDF graphs for the documents. In one example…

EVALUATING PERSONALIZED RECOMMENDATION MODELS

Granted: March 2, 2017
Application Number: 20170061325
A personalized recommendation model scores each object in an interaction set of objects with which a user interacted and in a ransom set of objects with which the user lacks known interaction. A system sorts each scored object based on a decreasing order of each corresponding score, and identifies a high scoring set of the sorted objects with a number (equal to the number of objects in the interaction set of objects) of highest corresponding scores. The system aggregates a corresponding…

QUANTITATIVE METRICS FOR ASSESSING STATUS OF A PLATFORM ARCHITECTURE FOR CLOUD COMPUTING

Granted: March 2, 2017
Application Number: 20170061338
An architecture for realizing a customer system on a cloud computing platform is defined in terms of a plurality of architecture types, each type (AT) defined by plural architecture type units (ATUs), each ATU comprising a set of ATU Details. The ATU Details are ordered into a series of discrete stages. Maturity of the architecture is determined as a single architecture pulse (AP) numeric value for each architecture type. The pulse reflects the extent to which the ATUs of the…