Ultralow latency seismic interpretation on AWS Local Zones
Seismic Interpretation is the extraction of subsurface geologic information from seismic data. Due to the large data volumes and a move to 3D seismic interpretation, end users typically require high-spec workstations with 3D graphics cards and large, high-resolution monitors to make the most efficient use of the expensive data and machines. High latency in the responsiveness of manipulating and rendering the image on screen often results in a poor geoscientist user experience. We will demonstrate how users can relieve these pain points using Amazon Web Services (AWS).
NICE DCV is a high-performance remote display protocol that provides customers with a secure way to deliver remote desktops and application streaming from any cloud or data center to any device, over varying network conditions. With NICE DCV and Amazon Elastic Compute Cloud (Amazon EC2)—which provides secure and resizable compute capacity for virtually any workload—customers can run graphics-intensive applications remotely on Amazon EC2 instances and stream their user interfaces to simpler client machines, reducing the need for expensive, dedicated workstations.
AWS Local Zones are a type of infrastructure deployment that places compute, storage, database, and other select AWS services close to large population and industry centers. AWS Local Zones help you to run applications that require single-digit millisecond latency by bringing AWS infrastructure closer to your end users and business centers.
Perth, Australia, is a hub for energy companies that have a large base of geoscience users within their city offices. Users in Perth access the AWS Region in Sydney, and they experience a latency in the range of 45–50 milliseconds. They may also still have data stores and systems on premises. For the most demanding use cases that benefit from ultralow-latency, the AWS Perth Local Zone provides latency of around 2–5 milliseconds.
NICE DCV in combination with AWS Local Zones helps to provide high-performance, graphical remote workstations to these geoscience users while still providing the benefits of a pay-as-you go model and the elasticity of the cloud. There is no need to provision dedicated workstation hardware that sits unused and idle when users are not at the desktops. Conversely, if teams expand, then you can quickly acquire new remote workstations without having the delays that come with the procurement of physical hardware.
There are AWS Local Zones all over the world, and they are continuing to expand to additional cities. For an up-to-date list of AWS Local Zone locations, please see the AWS Global Infrastructure page.
In this blog, we’ll walk through the installation of an open-source seismic interpretation software package called OpendTect. We’ll also load a sample dataset and demonstrate the ultralow latency from Perth as an example.
|Time to read||10 minutes|
|Time to complete||2 hours|
|Cost to complete||<$15|
|Services used||Amazon EC2, AWS Local Zones, NICE DCV|
The solution architecture has been closely modeled on technology services used by our valued energy customers. We have provided a template to deploy the required infrastructure that underpins the solution using AWS Cloud Development Kit (AWS CDK), which accelerates cloud development using common programming languages to model your applications. We encourage you to deploy this in your own test environment if you would like to explore this further.
This template includes an Amazon Virtual Private Cloud (Amazon VPC), which helps you to define and launch AWS resources in a logically isolated virtual network, in the parent Region of Sydney. The Amazon VPC is extended to Perth by building a subnet in the Perth AWS Local Zone. We also use AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD), which activates your directory-aware workloads and AWS resources to use managed AD on AWS, to provide a corporate identity store. The provided template creates a highly available pair of domain controllers connected to your Amazon VPC. The domain controllers run in different Availability Zones. Host monitoring and recovery, data replication, snapshots, and software updates are automatically configured and managed for you. You configure the service and perform administrative management of users, groups, computers, and policies. When deploying a new service, you should always consider the shared responsibility model to understand your security obligations.
For low-latency access to an AWS Local Zone, this architecture requires a shared storage service to host our seismic dataset. Amazon FSx for NetApp ONTAP provides fully managed shared storage in the AWS Cloud with the popular data access and management capabilities of ONTAP. NetApp has nearly 30 years of experience supporting on-premises network-attached storage in the energy industry and has established large storage footprints, so Amazon FSx for NetApp ONTAP was a natural fit to provide a highly available storage platform in the parent Region. This service also provides multiprotocol support, facilitating simultaneous network file system (NFS) and server message block (SMB) access to the same file share, as required by the differing vendor solutions running on both Windows and Linux.
The template provided in this blog can be used to deploy a highly available pair of nodes across Availability Zones. It will also configure a storage virtual machine that is secured by AWS Managed Microsoft AD domain authentication.
To provide compute and storage affinity in the AWS Local Zone, a solution is needed to replicate existing storage assets from Sydney to Perth. To facilitate this, an Amazon EC2 instance was built in the AWS Local Zone. This instance acts as a destination replication target from the shared file system hosted in Sydney. NetApp Global File Cache was installed and configured on the Amazon EC2 instance in the Perth AWS Local Zone. NetApp Global File Cache creates a software fabric that caches “active datasets” in distributed offices to deliver transparent data access and optimal performance on a global scale.
Once configured, this solution provided a copy of all relevant interpretation project data in Perth, verifying that our instance can access shared storage with minimal latency. The provided solution is modeled on technology that closely aligns with customer landscapes and vendor technologies that we are engaging with day-to-day. The intent is to showcase a solution to a very real challenge that our customers are asking for help with today.
Getting started in the AWS Local Zone
Launching AWS Local Zones and a new instance to run NICE DCV can be done in around an hour. We have a detailed walkthrough already published here.
To build all this infrastructure with code, we have developed an AWS CDK application to automatically deploy the base infrastructure, including the AWS Local Zone Amazon EC2 instances and Amazon FSx for NetApp ONTAP cluster.
In our case, to demonstrate the capabilities required for seismic interpretation, we will provision a g4dn.2xlarge instance. This instance has a single dedicated NVIDIA T4 GPU attached to provide 3D graphical acceleration to your workflow. It also has a local instance store 225GB NVMe SSD in addition to persistent block storage of GP2 volumes provided through Amazon Elastic Block Store (Amazon EBS)—an easy-to-use, scalable, high-performance block-storage service—in the AWS Local Zone. The local NVMe SSD provides high-performance temporary storage for local application caches or for storing temporary datasets that have been copied from the shared storage.
Installation walkthrough of OpendTect and sample data source
OpendTect is a free, open-source seismic interpretation system for visualizing, analyzing, and interpreting 2D, 3D, and 4D seismic data. While large energy companies use commercial software for their seismic interpretation needs, OpendTect provides a simple and affordable way to demonstrate the capability of AWS Local Zones in providing ultralow latency virtual desktops for your applications.
A sequence of tasks is provided below to demonstrate how to download and install OpendTect, install a sample dataset, and load it for analysis. This blog includes statistics from our testing that uses NICE DCV to demonstrate the latency differences between the Perth and Sydney Regions; however, we encourage you to test for yourself in an AWS Local Zone close to your location, because results will vary based on your geographic proximity to the destination local zone.
To start with, we will remote onto the server running in the AWS Local Zone:
- From the AWS CDK output script, get the public IP address for the server.
- Download and install the NICE DCV client: docs.aws.amazon.com/dcv/latest/userguide/client.html.
- In the console, navigate to the Amazon EC2 console and find the instance called “nice-dcv-perth-instance.”
- Find the public IP address for this instance and record it.
- Retrieve the Administrator password for Windows for the Amazon EC2 console following these instructions: docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/connecting_to_windows_instance.html#connect-rdp.
- Open your NICE DCV client and input your NICE DCV server’s IP address or DNS name that you took note of in step 1.
- By default, NICE DCV will use its own self-signed certificate for the connection. You will need to trust this certificate before connecting by selecting the Trust & Connect button on the pop-up window.
- Enter “Administrator” for the username and enter the password retrieved in step 3.2.
Once connected, you can download the installation client here: dgbes.com/download.
Now, we will install OpendTect:
1. Run the installation program. Choose to install the free version.
2. Leave the default installation settings and choose “Install.”
3. Choose to add the default Firewall rules.
4. Choose the default location for the survey data root.
5. Choose to install the F3 Demo Survey data. We will use this for loading seismic data and basic visualization within the tool.
6. After installation of the demo survey, select it for survey selection, and it should be loaded in OpendTect.
We now have a demo data set loaded and ready to visualise within OpendTect.
Demonstration of low-latency seismic interpretation
After loading the demo dataset, we should have a number of elements loaded in the tree on the left-hand side.
To load some of these elements for visualisation, follow these steps:
1. Right-click on “3D Horizon” in the tree and select “Add,” and then select the default 1-Top and 2-Base horizons.
2. Right click on “Cross-line” and choose “Add,” and again select the default options.
3. From there, you should have your 3D Horizons and Cross-line loaded and ready for viewing.
You can now proceed to rotate and interact with the loaded seismic data set.
Virtual desktop infrastructure statistics and performance
In our particular case, we are located in Perth, Australia. The closest AWS Region is Sydney, which is over 3,900 km (2,400 mi) away. Typical latency to the Sydney Region from Perth is in the low 40-millisecond range.
By using the Perth Local Zone, located in the same metro area as the end user of the application, we are able to significantly reduce the latency to the server and increase performance of rendering and responsiveness of the application.
For our testing, we connected over the internet; however, we could further optimize latency by using the AWS Direct Connect (which helps create a dedicated network connection to AWS) Point of Presence (POP) in Perth for ultralow-latency and private connectivity.
To showcase the performance, we started spinning the seismic data within OpendTect and then took streaming statistics from the NICE DCV client (you can access these statistics from the properties menu). The image below shows a round-trip network latency of 5 milliseconds.
In this blog post, we demonstrated how you can use AWS Local Zones to bring subsurface workloads closer to office locations using Amazon EC2. Additionally, we showcased how NICE DCV can be used to reduce latency for graphically intensive workloads while facilitating end-user access from inexpensive end-user workstations. Finally, we demonstrated how workload data can be replicated from a parent Region to an edge location using Amazon FSx for NetApp ONTAP and NetApp caching clients. When combined, these three aspects verify that a performant solution is delivered for seismic interpretation workloads.
If you’d like to discuss how to optimize the procedure described in this blog for your specific use case, we’d love to hear from you. Simply reach out to your account team or contact the AWS Energy team.