Abstract:
A computing device configured to determine when an alarm is triggered for a drilling operation is provided. Measured drilling data that includes a value measured for an input variable during a previous connection event of a drilling operation is received. A predicted value for a fluid flow back measure is determined by executing a predictive model with the measured drilling data as an input. The predictive model is determined using previous drilling data that includes a plurality of values measured for the input variable during a second drilling operation. The second drilling operation is a previous drilling operation at a different geographic wellbore location than the drilling operation. A fluid flow back measurement datum determined from sensor data is compared to the determined predicted value for the fluid flow back measure. An alarm is triggered on the drilling operation based on the comparison.
Abstract:
Systems and methods are provided for a data processing system having multiple executable threads that is configured to generate a cross-product matrix in a single pass through data to be analyzed. An example system comprises memory for receiving the data to be analyzed, a processor having a plurality of executable threads for executing code to analyze data, and software code for generating a cross-product matrix in a single pass through data to be analyzed. The software code includes threaded variable levelization code for generating a plurality of thread specific binary trees for a plurality of classification variables, variable tree merge code for combining a plurality of the thread-specific trees into a plurality of overall trees for the plurality of classification variables, effect levelization code for generating a plurality of sub-matrices of the cross-product matrix using the plurality of the overall trees for the plurality of classification variables, and cross-product matrix generation code for generating the cross- product matrix by storing and ordering the elements of the sub-matrices in contiguous memory space.
Abstract:
Tops of geological layers can be automatically identified using machine-learning techniques as described herein. In one example, a system can receive well log records associated with wellbores drilled through geological layers. The system can generate well clusters by applying a clustering process to the well log records. The system can then obtain a respective set of training data associated with a well cluster, train a machine-learning model based on the respective set of training data, select a target well-log record associated with a target wellbore of the well cluster, and provide the target well-log record as input to the trained machine-learning model. Based on an output from the trained machine-learning model, the system can determine the geological tops of the geological layers in a region surrounding the target wellbore. The system may then transmit an electronic signal indicating the geological tops of the geological layers associated with the target wellbore.
Abstract:
Apparatuses, systems and methods are disclosed for tolerating fault in a communications grid. Specifically, various techniques and systems are provided for detecting a fault or failure by a node in a network of computer nodes in a communications grid, adjusting the grid to avoid grid failure, and taking action based on the failure. In an example, a system may include receiving grid status information at a backup control node, the grid status information including a project status, storing the grid status information within the backup control node, receiving a failure communication including an indication that a primary control node has failed, designating the backup control node as a new primary control node, receiving updated grid status information based on the indication that the primary control node has failed, and transmitting a set of instructions based on the updated grid status information.
Abstract:
In a computing device supporting a failover in an event stream processing (ESP) system, an event block object is received. A first status of the computing device as active or standby is determined. When the first status is active, a second status of the computing device as newly active or not newly active is determined. Newly active is determined when the computing device is switched from a standby to an active status. When the second status is newly active, a last published event block object identifier that uniquely identifies a last published event block object is determined. A next event block object is selected from a non-transitory computer-readable medium accessible by the computing device. The next event block object has an event block object identifier that is greater than the determined last published event block object identifier. The selected next event block object is published to an out-messaging network device.
Abstract:
A navigable multimedia system displaying a navigable motion video (16) based representation of an environment having paths, wherein at least one clip is associated with each path, and allowing for spontaneous navigation of the paths in response to user input. The system provides for seamless transition from a video clip of one path to one of an intersecting path and from one field of view along a path to another field of view on that path. The system provides for hotspots associated with features in the environment and bitmap representations of objects to be placed in receptacles associated with certain portions of the environment wherein said hotspots and receptacles remain associated with environmental features and wherein said objects appear in proper perspective regardless of viewer position. A method for creating a navigable motion video environment comprising the steps of capturing (13) in video clips having optical properties an environment field of view along natural paths through the environment, capturing M-view sprites and other elements and correlating with map clips, adding and editing hotspots, receptacles, and other multimedia production components and binding into final production.
Abstract:
An apparatus includes a processor to: instantiate collection threads, data buffers of a queue, and aggregation threads: within each collection thread, assemble a row group from a subset of the multiple rows, reorganize the data values row-wise to columnar organization, and store the row group within a data buffer of the queue; operate the buffer queue as a FIFO buffer; within each aggregation thread, retrieve multiple row groups from multiple data buffers of the queue, assemble a data set part from the multiple row groups, transmit, to storage device(s) via a network, the data set part; and in response to each instance of retrieval of a row group from a data buffer of the buffer queue for use within an aggregation thread, analyze a level of availability of at least storage space within the node device to determine whether to dynamically adjust the quantity of data buffers of the buffer queue.
Abstract:
An apparatus includes a processor component of a first node device caused to receive data block encryption data and an indication of size of an encrypted data block distributed to the first node device for decryption, and in response to the data set being of encryptd data: receive an indication of the quantity of sub-blocks within the encrypted data block, and a hashed identifier for each data sub-block; use the data block encryption data to decrypt the encrypted data block to regenerate data set portions from the data sub-blocks; analyze the hashed identifier of each data sub-block to determine whether all data set portions are distributed to the first node device for processing; and in response to a determination that at least one data set portion is to be distributed to a second node device for processing, transmit the at least one data set portion to the second node device.
Abstract:
A first computing device manages a cluster of event stream processing (ESP) engines (ESPEs). A local ESP model is created based on information read from a manager configuration file that includes first connection information to connect to the second computing device and second connection information to connect the third computing device. An ESPE is instantiated on the first computing device based on the created local ESP model. The event block object is received from the second computing device in a first source window of the instantiated ESPE. A remote ESP model is deployed to a remote third computing device. The manager configuration file includes an indicator of the remote ESP model. The third computing device to receive the processed event block object is selected. The processed event block object is published to a second source window defined by the remote ESP model deployed to the third computing device.
Abstract:
A method of determining an optimal value for a control of a drilling operation is provided. Drilling data from a drilling operation is received. The drilling data includes a plurality of values measured for each of a plurality of drilling control variables during the drilling operation. An objective function model is determined using the received drilling data. The objective function model maximizes a rate of penetration for the drilling operation. Measured drilling data is received that includes current drilling data values for a different drilling operation. An optimal value for a control of the different drilling operation is determined by executing the determined objective function model with the measured drilling data that includes the current drilling data values for the different drilling operation as an input. The determined optimal value for the control of the different drilling operation is output.