This Guidance shows how to store and use vector data, which is a type of data made up of objects that represent a physical location such as a farm field, location in a field, or entire agricultural region. It displays best practices for querying, storing, and processing vector data and shows how those components connect in the AWS Cloud. Customers can build solutions for agriculture that use geospatial vector data and reduce performance problems common with other data systems.
Architecture Diagram

Step 1
Generated geometric data on the farm in mobile, web, and in-cab applications is sent to the AWS Cloud through Amazon API Gateway and is backed by AWS Lambda or AWS Fargate.
Well-Architected Pillars

The AWS Well-Architected Framework helps you understand the pros and cons of the decisions you make when building systems in the cloud. The six pillars of the Framework allow you to learn architectural best practices for designing and operating reliable, secure, efficient, cost-effective, and sustainable systems. Using the AWS Well-Architected Tool, available at no charge in the AWS Management Console, you can review your workloads against these best practices by answering a set of questions for each pillar.
The architecture diagram above is an example of a Solution created with Well-Architected best practices in mind. To be fully Well-Architected, you should follow as many Well-Architected best practices as possible.
-
Operational Excellence
To improve operational efficiency, enable logging to Amazon CloudWatch for each AWS service. This includes: Amazon Relational Database Service (Amazon RDS), AWS IoT Core metrics, API Gateway logs and metrics, Lambda logs and metrics, and containers through Fargate. CloudWatch logs enable the user to understand the system performance and if business outcomes are being achieved through logging and monitoring for event detection, workload metrics, and activity patterns. Configure alarms, event notifications, and establish different subscriptions to events through Amazon Simple Notification Service (Amazon SNS).
API Gateway can enable logging to CloudWatch to help the customer understand the API requests and backend responses from Lambda. The API Gateway console is integrated with CloudWatch, enabling visualization, tracking, and custom alarms of backend performance metrics such as API calls, execution errors, latency, and error rates.
AWS IoT Core rules can be established to report on devices experiencing issues to CloudWatch.
-
Security
Amazon Cognito centralizes access to data and resources. AWS IAM Identity Center (successor to AWS Single Sign-On) is used to federate and create temporary credentials for access by scientists and engineers. Machine access uses AWS Identity and Access Management (IAM) roles with least-privilege access.
Resources are protected through IAM and at the virtual private cloud (VPC) level. Network isolation of managed services is enabled at the Region and VPC level, with role-based access control (RBAC) and IAM firewall options to control network access.
Data in Amazon S3, Timestream, and Aurora is encrypted at rest.
-
Reliability
This Guidance incorporates managed services with serverless technologies for receiving data, processing data, and storing data. Each managed service implemented in the Guidance has an availability design goal of at least 99.9%.
API Gateway is capable of processing up to hundreds of thousands of concurrent API calls with support for traffic management, cross-origin resource sharing (CORS), authorization, and access controls. Backups are stored in Amazon S3 and can be managed through AWS Backup, which also supports point-in-time recovery and continuous backups for Amazon S3. Use AWS Backup to create secure, scheduled, and automated copies of Timestream tables to add an extra layer of resilience to resources. Aurora backup retention periods are configurable and automatically retain and backup cluster volume data for the length of the retention period.
For enhanced resiliency and disaster recovery requirements, Aurora offers the ability to configure certain database versions as a global database in certain Regions, providing more comprehensive failover capabilities than the failover provided by a default Aurora database (DB) cluster.
There are limits customers need to be aware of. Lambda sets an initial default quota of 1,000 concurrent function calls in the deployed Region. A customer can increase the reliability of their application by monitoring the status of their application’s function call metrics within their CloudWatch console and request an increase in the default concurrent functional call quota.
-
Performance Efficiency
The services in this Guidance were selected to meet expectations for processing vector data at scale within AWS. Each service selected natively supports vector data or can easily be enabled with open-source extensions. The services were selected due to their high availability, resiliency, removal of undifferentiated heavy lifting, and efficiency.
Timestream allows for flexibility within data storage due to the expected changes in telematics and IoT hardware, sensors, and schemas that are common within agricultural implementations of IoT.
-
Cost Optimization
The use of a serverless infrastructure avoids over provisioning of resources, while AWS Managed Services takes away the management burden from the customer. This allows them to focus more on their core business needs, save on operational cost, and auto-scale their AWS infrastructure.
This Guidance has a variable load based on the user configurations including the volume of data being sent, the frequency of data being sent, and the data lifecycle management. It minimizes data transfer costs by consolidating data for analysis from third-parties and AWS Data Exchange into a data lake.
API Gateway offers API configurations that charge based on the number of API calls made and the amount of data being transferred out.
The optional usage of Fargate in this Guidance allows the customer to optimize cost through per-second time of usage and selection of a virtual Central Processing Unit (vCPU), memory, Operating System, CPU Architecture, and storage. Furthermore, customers can achieve additional savings through Fargate Spot pricing.
-
Sustainability
This Guidance incorporates serverless technologies with auto-scaling to ensure the Guidance scales to match the load with only the minimum resources. The instances deployed through Fargate can be customized and optimized to meet required workloads without excessive resources.
Compute and memory sizes can be right-sized at all levels of the design to minimize resource utilization. Managed services like AWS Glue and SageMaker distribute sustainability impact across all tenants of the service.
Implementation Resources

A detailed guide is provided to experiment and use within your AWS account. Each stage of building the Guidance, including deployment, usage, and cleanup, is examined to prepare it for deployment.
The sample code is a starting point. It is industry validated, prescriptive but not definitive, and a peek under the hood to help you begin.
Related Content

[Title]
Disclaimer
The sample code; software libraries; command line tools; proofs of concept; templates; or other related technology (including any of the foregoing that are provided by our personnel) is provided to you as AWS Content under the AWS Customer Agreement, or the relevant written agreement between you and AWS (whichever applies). You should not use this AWS Content in your production accounts, or on production or other critical data. You are responsible for testing, securing, and optimizing the AWS Content, such as sample code, as appropriate for production grade use based on your specific quality control practices and standards. Deploying AWS Content may incur AWS charges for creating or using AWS chargeable resources, such as running Amazon EC2 instances or using Amazon S3 storage.