Oil and Gas Tank Level Forecasting
Today, most facilities operate reactively to problems in tank levels. This often leads to spills, emergency shutdowns, expensive remediation costs, regulatory issues, costly repairs and fines. Tank level forecasting helps manage and abate these and other problems.
Forecasts are created by harnessing the power of real-time and historical data readily available from sensors, meters and records, which helps to:
- Prevent tank spillage and emergency shutdowns
- Discover hardware malfunction or failure
- Schedule maintenance, shutdowns, and logistics
- Optimize operations and facility efficiency
- Detect pipeline leaks and slugging
- Reduce costs, fines, and downtime
The tank level forecasting process starts at the well input. Oil is measured as it comes into the facility via meters and is sent to tanks. Levels are monitored and recorded in tanks during the refining process and then oil, gas, and water output are recorded via sensors, meters, and records. Forecasts are then made using data from the facility; for example, forecasts can be made every 15 minutes.
The Cortana Intelligence Suite is adaptable and can be customized to meet different requirements that facilities and corporations have.
> **Note:** You can read more about this solution and deployment guides in the [Tank Level Forecasting solution](https://github.com/Azure/cortana-intelligence-tank-level-forecast) published on GitHub.
The Cortana Intelligence Suite provides advanced analytics tools through Microsoft Azure — data ingestion, data storage, data processing and advanced analytics components — all of the essential elements for building a tank level forecasting solution.
This solution combines several Azure services to provide powerful advantages. Event Hubs collects real-time tank level data. Stream Analytics aggregates the streaming data and makes it available for visualization. Azure SQL Data Warehouse stores and transforms the tank level data. Machine Learning implements and executes the forecasting model. Power BI visualizes the real-time tank level as well as the forecast results. Finally, Data Factory orchestrates and schedules the entire data flow.
After deployment, see the post deployment instructions [here](https://github.com/Azure/cortana-intelligence-tank-level-forecast/blob/master/Automated%20Deployment%20Guide/Post%20Deployment%20Instructions.md).
## Solution Diagram

## Technical details and workflow
1. The data feeds into the **Azure Event Hubs** and **Azure SQL Data Warehouse** service as data points or events, that will be used in the rest of the solution flow.
2. **Azure Stream Analytics** analyze the data to provide near real-time analytics on the input stream from the event hub and directly publish to Power BI for visualization.
3. The **Azure Machine Learning** service is used to make forecast on the tank level of particular region given the inputs received.
4. **Azure SQL Data Warehouse** is used to store the prediction results received from the **Azure Machine Learning** service. These results are then consumed in the **Power BI** dashboard.
5. **Azure Data Factory** handles orchestration, and scheduling of the hourly model retraining.
6. Finally, **Power BI** is used for results visualization, so that users can monitor the tank level from a facility in real time and use the forecast level to prevent spillage.
## Disclaimer
©2017 Microsoft Corporation. All rights reserved. This information is provided "as-is" and may change without notice. Microsoft makes no warranties, express or implied, with respect to the information provided here. Third party data was used to generate the Solution. You are responsible for respecting the rights of others, including procuring and complying with relevant licenses in order to create similar datasets.