In the oil and gas industry, data is often generated from a variety of sources for clients that seek to remain privy to the latest trends in exploration and production technology. When data is not consistent or inaccessible, decisions made by such clients may not be the most well-informed, potentially resulting in production inefficiencies. Furthermore, enterprises of all types and sizes are coping with a wider variety of data at a very large scale, making it more difficult than ever to realize production insights. At the same time with the growth in cloud based commodity computing, it is becoming increasingly difficult to package insights for delivery to customers and clients.
Methods, apparatus, systems, and computer-readable media are set forth for processing exploration and production data to make such data more readily available for clients seeking to leverage the data for analytics and other services. In some implementations, a method implemented by one or more processors is set forth as including operations such as causing a user interface to be presented at an application workspace. The application workspace can include one or more selectable elements corresponding to one or more applications associated with an exploration and production system. The operations can also include receiving a selection of a first selectable element and a second selectable element. The first selectable element and the second selectable element can each be associated with separate applications of the one or more applications. The operations can further include causing data to be shared between the separate applications according to a backend process for managing exploration and production related data. Optionally, the method can include, generating, based on the data shared between the separate applications, a stored workspace environment entry that identifies each of the separate applications. In some implementations, the operations can include receiving a separate selection of an analysis application. The analysis application can be configured to provide real-time data based on the data shared between the separate applications. The real-time data can include a production rate, a construction metric, or a quality of service metric. The data shared between the separate applications can includes geographic data corresponding to the exploration and production system. In other implementations, the method can include an operation of receiving a separate selection at the user interface to remove an associated application from the stored workspace environment. Receiving the separate selection can cause a portion of the data shared between the separate applications to be disassociated from the stored workspace environment. The separate applications can include at least a web application that is hosted by a remote device that is separate from a server device that hosts the stored workspace environment.
Some implementations also include a system including one or more processors and memory configured to store instructions that, when executed by one or more processors, cause the one or more processors to perform any of the aforementioned operations, as well as a non-transitory computer readable medium configured to store instructions that, when executed by one or more processors, cause the one or more processors to perform any of the aforementioned operations.
These and other advantages and features, which characterize the invention, are set forth in the claims annexed hereto and forming a further part hereof. However, for a better understanding of the invention, and of the advantages and objectives attained through its use, reference should be made to the Drawings, and to the accompanying descriptive matter, in which there is described example embodiments of the invention. This summary is merely provided to introduce a selection of concepts that are further described below in the detailed description, and is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in limiting the scope of the claimed subject matter.
The described implementations relate to systems, methods, and apparatus for processing exploration and/or production data to make such data more readily available for clients seeking to leverage the data for analytics and other services. In this regard, the term “exploration and production” may refer to exploration-related activities, production-related activities or activities associated with both exploration and production aspects of natural resource recovery. A database that provides exploration and production data can reference numerous data entities that can identify portions of an exploration and production system. For instance, data entities can identify different oil fields and relationships between the different oil fields. Specifically, the implementations relate to a workspace that is configurable and allows multiple exploration and production application components to be built into a user-defined workflow. The workspace can include a component that provides access to multiple different exploration and production applications. The workspace can further include a component that can be integrated into a user-defined workspace to allow for web application access via the workspace. In some implementations, a quality reporting service can operate in the background (e.g., as a background script or application) for analyzing data provided for the workspace and delivering further data via the dynamic workspace component.
The components of a user-defined workspace can be applications that are native web applications and/or launch points or shortcuts to other applications. The components can be delivered from applications in multiple environments (e.g., cloud endpoints, enterprises, data centers, and/or any other environment). Furthermore, the components can incorporate various activities and functions according to their relationship to exploration and production workflows. This can allow for more efficient switching between applications. Moreover, while a user is working with a component application of a workspace, the data being accessed by the component application can be available across multiple applications. The availability of such data can be made possible through a backend infrastructure of the workspace, and any changes to the data can be presented in real-time through other component applications, as desired. Component applications can include, for example, data loaders, real-time or near real-time production dashboards, real-time or near real-time drilling dashboards, application launchers, high performance computing results, drill planning, and/or document delivery systems, among others.
Computer facilities may be positioned at various locations about the oilfield 100 (e.g., the surface unit 134) and/or at remote locations. Surface unit 134 may be used to communicate with the drilling tools and/or offsite operations, as well as with other surface or downhole sensors. Surface unit 134 is capable of communicating with the drilling tools to send commands to the drilling tools, and to receive data therefrom. Surface unit 134 may also collect data generated during the drilling operation and produces data output 135, which may then be stored or transmitted.
Sensors (S), such as gauges, may be positioned about oilfield 100 to collect data relating to various oilfield operations as described previously. As shown, sensor (S) is positioned in one or more locations in the drilling tools and/or at rig 128 to measure drilling parameters, such as weight on bit, torque on bit, pressures, temperatures, flow rates, compositions, rotary speed, and/or other parameters of the field operation. Sensors (S) may also be positioned in one or more locations in the circulating system.
Drilling tools 106.2 may include a bottom hole assembly (BHA) (not shown), generally referenced, near the drill bit (e.g., within several drill collar lengths from the drill bit). The bottom hole assembly includes capabilities for measuring, processing, and storing information, as well as communicating with surface unit 134. The bottom hole assembly further includes drill collars for performing various other measurement functions.
The bottom hole assembly may include a communication subassembly that communicates with surface unit 134. The communication subassembly is adapted to send signals to and receive signals from the surface using a communications channel such as mud pulse telemetry, electro-magnetic telemetry, or wired drill pipe communications. The communication subassembly may include, for example, a transmitter that generates a signal, such as an acoustic or electromagnetic signal, which is representative of the measured drilling parameters. It will be appreciated by one of skill in the art that a variety of telemetry systems may be employed, such as wired drill pipe, electromagnetic or other known telemetry systems.
Generally, the wellbore is drilled according to a drilling plan that is established prior to drilling. The drilling plan generally sets forth equipment, pressures, trajectories and/or other parameters that define the drilling process for the wellsite. The drilling operation may then be performed according to the drilling plan. However, as information is gathered, the drilling operation may need to deviate from the drilling plan. Additionally, as drilling or other operations are performed, the subsurface conditions may change. The earth model may also need adjustment as new information is collected.
The data gathered by sensors (S) may be collected by surface unit 134 and/or other data collection sources for analysis or other processing. The data collected by sensors (S) may be used alone or in combination with other data. The data may be collected in one or more databases and/or transmitted on or offsite. The data may be historical data, real time data, or combinations thereof. The real time data may be used in real time, or stored for later use. The data may also be combined with historical data or other inputs for further analysis. The data may be stored in separate databases, or combined into a single database.
Surface unit 134 may include transceiver 137 to allow communications between surface unit 134 and various portions of the oilfield 100 or other locations. Surface unit 134 may also be provided with or functionally connected to one or more controllers (not shown) for actuating mechanisms at oilfield 100. Surface unit 134 may then send command signals to oilfield 100 in response to data received. Surface unit 134 may receive commands via transceiver 137 or may itself execute commands to the controller. A processor may be provided to analyze the data (locally or remotely), make the decisions and/or actuate the controller. In this manner, oilfield 100 may be selectively adjusted based on the data collected. This technique may be used to optimize portions of the field operation, such as controlling drilling, weight on bit, pump rates, or other parameters. These adjustments may be made automatically based on computer protocol, and/or manually by an operator. In some cases, well plans may be adjusted to select optimum operating conditions, or to avoid problems.
Wireline tool 106.3 may be operatively connected to, for example, geophones 118 and a computer 122.1 of a seismic truck 106.1 of
Sensors (S), such as gauges, may be positioned about oilfield 100 to collect data relating to various field operations as described previously. As shown, sensor S is positioned in wireline tool 106.3 to measure downhole parameters which relate to, for example porosity, permeability, fluid composition and/or other parameters of the field operation.
Sensors (S), such as gauges, may be positioned about oilfield 100 to collect data relating to various field operations as described previously. As shown, the sensor (S) may be positioned in production tool 106.4 or associated equipment, such as Christmas tree 129, gathering network 146, surface facility 142, and/or the production facility, to measure fluid parameters, such as fluid composition, flow rates, pressures, temperatures, and/or other parameters of the production operation.
Production may also include injection wells for added recovery. One or more gathering facilities may be operatively connected to one or more of the wellsites for selectively collecting downhole fluids from the wellsite(s).
While
The field configurations of
Data plots 208.1-208.3 are examples of static data plots that may be generated by data acquisition tools 202.1-202.3, respectively, however, it should be understood that data plots 208.1-208.3 may also be data plots that are updated in real time. These measurements may be analyzed to better define the properties of the formation(s) and/or determine the accuracy of the measurements and/or for checking for errors. The plots of each of the respective measurements may be aligned and scaled for comparison and verification of the properties.
Static data plot 208.1 is a seismic two-way response over a period of time. Static plot 208.2 is core sample data measured from a core sample of the formation 204. The core sample may be used to provide data, such as a graph of the density, porosity, permeability, or some other physical property of the core sample over the length of the core. Tests for density and viscosity may be performed on the fluids in the core at varying pressures and temperatures. Static data plot 208.3 is a logging trace that generally provides a resistivity or other measurement of the formation at various depths.
A production decline curve or graph 208.4 is a dynamic data plot of the fluid flow rate over time. The production decline curve generally provides the production rate as a function of time. As the fluid flows through the wellbore, measurements are taken of fluid properties, such as flow rates, pressures, composition, etc.
Other data may also be collected, such as historical data, user inputs, economic information, and/or other measurement data and other parameters of interest. As described below, the static and dynamic measurements may be analyzed and used to generate models of the subterranean formation to determine characteristics thereof. Similar measurements may also be used to measure changes in formation aspects over time.
The subterranean structure 204 has a plurality of geological formations 206.1-206.4. As shown, this structure has several formations or layers, including a shale layer 206.1, a carbonate layer 206.2, a shale layer 206.3 and a sand layer 206.4. A fault 207 extends through the shale layer 206.1 and the carbonate layer 206.2. The static data acquisition tools are adapted to take measurements and detect characteristics of the formations.
While a specific subterranean formation with specific geological structures is depicted, it will be appreciated that oilfield 200 may contain a variety of geological structures and/or formations, sometimes having extreme complexity. In some locations, generally below the water line, fluid may occupy pore spaces of the formations. Each of the measurement devices may be used to measure properties of the formations and/or its geological features. While each acquisition tool is shown as being in specific locations in oilfield 200, it will be appreciated that one or more types of measurement may be taken at one or more locations across one or more fields or other locations for comparison and/or analysis.
The data collected from various sources, such as the data acquisition tools of
Each wellsite 302 has equipment that forms wellbore 336 into the earth. The wellbores extend through subterranean formations 306 including reservoirs 304. These reservoirs 304 contain fluids, such as hydrocarbons. The wellsites draw fluid from the reservoirs and pass them to the processing facilities via surface networks 344. The surface networks 344 have tubing and control mechanisms for controlling the flow of fluids from the wellsite to processing facility 354.
As shown in
In one or more embodiments, the system 400 includes data warehouse 410. The data warehouse 410 may correspond to one or more repositories. The data warehouse (410) ingests (e.g., obtains and stores) the data values from the OG data sources 406.1, 406.2, 406.3. The data warehouse 410 is effectively a consolidated source of data items regarding an oilfield.
In one or more embodiments, the system 400 includes the graph engine 412. The graph engine 412 applies one or more transformations (e.g., pipelines) to the data items to generate one or more transformed data items. Application of one or more transformations may be triggered by various conditions (e.g., changes in temperature, pressure, depth, composition in well, etc.). Application of one or more transformations may occur at set times or milestones. One or more transformations may be custom designs. One or more transformation include machine learning. Example transformations include: data cleansing (bound checks, NaN), conversion to different format, aggregates based on one or more state changes, statistical calculations (variance, mode, standard deviation).
In one or more embodiments, the system 414 includes the graph database 414. The graph database 414 implements a knowledge graph for an oilfield. In other words, the graph database 414 is an OG graph database. The graph database 414 includes one or more nodes connected by one or more edges. Each node may correspond to one or more entities in the oilfield. Each edge is a relationship between two or more nodes. In one or more embodiments, the graph engine 412 modifies (e.g., populates, enriches, shrinks, etc.) the graph database 414 based on the transformed data items. This may include modifying existing nodes and edges, removing existing nodes and edges, and/or inserting new nodes and new edges. The nodes or edges may include the transformed data items. For example, nodes may correspond to wells, client/customer ID, chemicals used in the oilfield. Edges may correspond to any links between these nodes & disconnected data silos.
As shown in
In one or more embodiments, the system 400 includes the graph database query engine 422. The graph database query engine 422 receives user requests regarding an oilfield entity and generates a result to the request. The result may be generated by traversing the graph database 414. The result may be a summary or digest regarding the oilfield entity. For example, the user request may be: “Give me a summary of all wells fractured between December 01 and December 31 in year XXXX for client A.”
In one or more embodiments, the system 400 includes multiple APIs 420.1, 420.2. It is through the APIs 420.1, 420.2 that users may issue request and obtain (e.g., view, print) results in response to the request. APIs provide data to monitoring front-end and may have a rich user interface to view data close to real-time in the form of heat maps, line plots, etc.
In some implementations, the remote device 502 can host a quality of service application 512, which can operate as a background service to analyze user data over a network 516, such as the internet and/or one or more public or private networks. The quality of service application 512 can then deliver real-time data, based any analysis, via the dynamic application workspace 504. In some implementations, the application workspace 504 can include or otherwise access a production topography application 506 capable of providing status data related to the production operations occurring at different geographic locations. The production data can identify a geographic location of a production operation, a status of the production operation, a type of production operational (e.g., oil, gas, etc.), a rate of production of the operation, and/or any other metric that can be associated with an oil and/or gas production operation.
In some implementations, the application workspace 504 can include or otherwise access a subsurface application 508 capable of providing data related to subsurface condition at a location of a production operation. For instance, a production operation (e.g., an oil drilling operation) can be identified by the production topography application 506 and also the subsurface application 508. The production topography application 506 can provide status related data regarding production rates for the production operation. Additionally, the subsurface application 508 can provide data related to subsurface conditions at or proximate to the production operation. For instance, the subsurface conditions can be monitored by one or more sensors that can be in direct or indirect communication with the remote device 502, or other device that is accessible to the subsurface application 508. The subsurface application 508 can then share the subsurface condition data with the production topography application 506 and/or any other application of the application workspace 504 in order to provide additional insights and analysis to a user.
In other implementations, the application workspace 504 can include a well construction application 510 capable of product data related to a construction of a well for an exploration and production system. The well construction application 510 can receive data directly or indirectly from a wellsite where the well is being constructed. Data from the wellsite can be shared with other applications of the application workspace 504 in order for users to make decisions about to best proceed with well construction.
In yet other implementations, the application workspace 504 can include stored workspace environments 514. A stored workspace environment 514 can include one or more applications designated by a user for receiving data. For instance, a user can designate multiple applications to be presented at a user interface of the remote device 502 and for sharing data between the applications. The designated applications can be identified in one or more entries stored at the remote device 502 in association with a stored workspace environment 514. In this way, the user can select the stored workspace environment 514 as a shortcut for interacting with multiple connected applications, without having to individually open each application again.
In some implementations, the application workspace 504 can be provided at a user interface of a web browser that is capable of accessing various applications over a network. The user interface can operate as an application canvas for connecting multiple different applications associated with one or more different exploration and production systems. A user interface can represent various graphical elements associated with the different applications. For instance, the graphical elements can represent real-time data as graphs, charts, images, and/or other visualizations that can provide a user with a snapshot of certain aspects of an exploration and production system. In some implementations, information presented at the user interface can be based on data provided from multiple different applications that have been connected or otherwise in communication as a result of selections made by a user of the application workspace 504. Data can be communicated between applications through backend architecture of the application workspace 504. When a user seeks to end a session at the application workspace 504, the user can choose to store the arrangement of applications as a stored workspace environment 514. Thereafter, when a user seeks to initialize the applications again, the user can select the corresponding stored workspace environment 514, thereby causing the backend architecture to reinitialize for sharing data between the applications.
The method 600 can further include an operation 604 of receiving a selection of a first selectable element and a second selectable element. The first selectable element and the second selectable element can each be associated with separate applications of the one or more applications. For instance, the first selectable element can identify a first application and the second selectable element can identify a second application. Each of the first application and the second application can be hosted at separate server devices that are connected over a network that is accessible to the exploration and production system.
The method 600 can also include an operation 606 of causing data to be shared between the separate applications according to a backend process for managing exploration and production related data. The backend process can be employed by architecture of the application workspace. For instance, although frontend architecture can allow a user to make selections about the applications to link for a particular workspace environment, the backend architecture of the application workspace can allow applications to share resources. For instance, the first application can be a planning and/or economics related application and the second application can be a well construction application. By sharing resources, such as collected data and/or schedule data, progress metrics and/or material usage estimates can be generated in real-time for the user to observe at the application workspace.
The method 600 can further include an operation 608 of generating, based on the data shared between the separate applications, a stored workspace environment entry that identifies each of the separate applications. The stored workspace environment entry can be stored at a remote device that hosts the application workspace, and/or a server device that is otherwise available to the application workspace. The stored workspace environment entry can be stored in a table or other database that includes other entries corresponding to other stored workspace environments. The stored workspace environments can be generated at the direction of one or more different users, companies, or other entities. For instance, multiple different users can collaborate on linking multiple different applications for generating a stored workspace environment, which they can access individually or simultaneously from separate devices.
In some implementations, common usages of different components may be tracked, and can result in one component being automatically suggested to a user when another component is executed or started. In addition, in some implementations, connections between components may be used to implicitly establish suggestion relationships between components. Further, in some embodiments, different components may have access to only a portion of a full data model, and as such the composite operation of all of the components may utilize a greater portion of the full data model. In addition, data may automatically flow from component to component, and in some instances, tracked user behavior may be used to suggest placement of different components relative to one another to establish likely producer/consumer relationships between components.
Embodiments may be implemented on a computing system. Any combination of mobile, desktop, server, router, switch, embedded device, or other types of hardware may be used. For example, as shown in
The computer processor(s) 702 may be an integrated circuit for processing instructions. For example, the computer processor(s) may be one or more cores or micro-cores of a processor. The computing system 700 may also include one or more input devices 710, such as a touchscreen, keyboard, mouse, microphone, touchpad, electronic pen, or any other type of input device.
The communication interface 712 may include an integrated circuit for connecting the computing system 700 to a network (not shown) (e.g., a local area network (LAN), a wide area network (WAN) such as the Internet, mobile network, or any other type of network) and/or to another device, such as another computing device.
Further, the computing system 700 may include one or more output devices 708, such as a screen (e.g., a liquid crystal display (LCD), a plasma display, touchscreen, cathode ray tube (CRT) monitor, projector, or other display device), a printer, external storage, or any other output device. One or more of the output devices may be the same or different from the input device(s). The input and output device(s) may be locally or remotely connected to the computer processor(s) 702, non-persistent storage 704, and persistent storage 706. Many different types of computing systems exist, and the aforementioned input and output device(s) may take other forms.
Software instructions in the form of computer readable program code to perform embodiments may be stored, in whole or in part, temporarily or permanently, on a non-transitory computer readable medium such as a CD, DVD, storage device, a diskette, a tape, flash memory, physical memory, or any other computer readable storage medium. Specifically, the software instructions may correspond to computer readable program code that, when executed by a processor(s), is configured to perform one or more embodiments.
The computing system 700 in
Although not shown in
The nodes (e.g., node X 802, node Y 804) in the network 806 may be configured to provide services for a client device 808. For example, the nodes may be part of a cloud computing system. The nodes may include functionality to receive requests from the client device 708 and transmit responses to the client device 808. The client device 808 may be a computing system, such as the computing system shown in
The computing system or group of computing systems described in
The above description of functions present only a few examples of functions performed by the computing system of
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this disclosure, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as disclosed herein. Accordingly, the scope of the invention should be limited only by the attached claims.
While several implementations have been described and illustrated herein, a variety of other means and/or structures for performing the function and/or obtaining the results and/or one or more of the advantages described herein may be utilized, and each of such variations and/or modifications is deemed to be within the scope of the implementations described herein. More generally, all parameters, dimensions, materials, and configurations described herein are meant to be exemplary and that the actual parameters, dimensions, materials, and/or configurations will depend upon the specific application or applications for which the teachings is/are used. Those skilled in the art will recognize, or be able to ascertain using no more than routine experimentation, many equivalents to the specific implementations described herein. It is, therefore, to be understood that the foregoing implementations are presented by way of example only and that, within the scope of the appended claims and equivalents thereto, implementations may be practiced otherwise than as specifically described and claimed. Implementations of the present disclosure are directed to each individual feature, system, article, material, kit, and/or method described herein. In addition, any combination of two or more such features, systems, articles, materials, kits, and/or methods, if such features, systems, articles, materials, kits, and/or methods are not mutually inconsistent, is included within the scope of the present disclosure.
This application claims priority to and the benefit of a US provisional application having Ser. No. 62/557,974, filed 13 Sep. 2017, which is incorporated by reference herein.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2018/050880 | 9/13/2018 | WO | 00 |
Number | Date | Country | |
---|---|---|---|
62557974 | Sep 2017 | US |