Anaplan has introduced a new feature called “CloudWorks” recently, wherein Anaplan can connect with any Cloud storage service provider like AWS S3, Azure Blob, Google Big Query to import data files into Anaplan Model manually or automatically. It’s a 2-way connection, which means you can push data from Anaplan model into cloud storage service as well.
Amazon AWS has captured 32% of the market, followed by Azure at 19% & Google at 7% respectively. From Anaplan perspective, all 3 cloud storage services work well, so it’s up to individual businesses to identify which cloud storage works well given their business requirement.
In this topic, we will analysis AWS S3 & Azure Blob, try to figure out which one provides more bang for the buck
Key Features of AWS S3 & Azure Blob
A. Quick Overview
AWS S3 is simple cloud storage service, where you could store, retrieve & backup any amount of data at any point of time. S3 is an object-based storage which means all data are stored as objects.
Azure Blob is Microsoft storage cloud service which can be used to store images, documents, videos, audios etc.
Azure is “storage account” oriented storage tier setting
Both AWS S3 and Azure Cool Blob Storage can be scalable according to active user demands. Both provides auto scaling in form “AWS Auto Scaling” for AWS, & “Auto scale” for Azure either vertically or horizontally.
C. Life Cycle Management
This feature helps you to optimize your storage space & be more cost effective. You can create a predefined rule to automate data transitions between different storage classes (Hot to cool storage, then archive or deletion, if required). Using this feature, user can optimize their standard cloud storage by transitioning data (which is no longer useful) from let say from S3 Standard to S3 Glacier/Deep Glacier, as there are certain cost benefits associated to different storage classes. Both AWS & Azure provides different range of storage classes & associated benefits
D. Data Encryption
AWS S3 uses Client-side encryption & Server-side encryption (AWS AES-256 encryption key, whereas Azure Blob provides Client-side encryption only
This is very handy feature to have especially if you are uploading data with the same file name. Usually, when you upload data with the same file name, the data from the latest file overrides existing data stored in the storage account. If this is what you want in the first place, then it’s okay, however if you want to keep the existing data along with the new one then its important to enable “Versioning”. AWS S3 & Azure Blob, both provides file versioning capabilities
F. Access Control
It is part of Identity and Access Management(IAM) which controls user access to various buckets, objects, container, blobs, data etc.
For example – AWS S3 follows Bucket policy. The policy can be created using JSON format manually or automatically. Similar features exist in Azure Blob, wherein user can disable public access to the storage account even if containers & blobs access level is set for Public
G. Cross Region Application
This feature allows objects/blobs/data to be shared with other users belonging to the same account in same region, or same account in different region or separate account in different region. Azure Blob allows you to create replication rule for replicate all blobs, or specific blobs as per your requirement
Data Integration with Anaplan
In terms of Data Integration (as part of CloudWorks), you need to create “Bucket” in AWS S3 & “Container” in Azure Blob respectively.
- AWS S3 Bucket – Objects cannot be independent; hence they need to store under a Bucket. You can create hundreds of buckets to store thousands of objects in each AWS account
- Azure Blob Container – Container is like a folder to store all data objects/blobs. A storage account can have hundreds of containers storing thousands of blobs
How to create AWS Bucket and Azure Container
To create an AWS Bucket, you need to have a ASW S3 account. Once, you are registered
- Open AWS Management Console. Select “S3” under “All Services”
- Click on “Create Bucket” to create a new bucket
- Enter Bucket Name & Region (Note: Bucket Name should be unique)
To create an Azure Container, you need to have a Microsoft Azure account. Once, you are registered
- Create a “Storage Accounts”
- Once created, open the new storage account & click on “Container” to create the container
- Enter Container Name & specify the public access level (Note: Container Name should be unique)
How to Load Objects (in Buckets) and Blobs (Container)
To upload objects into the bucket – AWS S3
- Select the Bucket
- Click on Upload. Once, the file is uploaded, it will reflect under the bucket
To upload blobs into the container – Azure Blob
- Select the container
- Click on Upload. Once, the file is uploaded, it will reflect under the container
How to Integrate AWS S3 Bucket and Azure Blob using Anaplan CloudWorks?
There are 2 aspects into Anaplan CloudWorks – Connection & Integration
First, we need to establish the connection with the AWS S3 Bucket or Azure Blob, & to do that there are some mandatory details which needs to be entered/updated in Anaplan CloudWorks page-
- Connection Name
- Access Key ID > Copy the details from the AWS account
- Secret Access Key > Copy the details from the AWS account
- Bucket > Name of the Bucket from where you want to import the data
- Connection Name
- Storage Account Name > Copy the details from the Azure account
- SAS token > Copy the details from the Azure account
- Container > Name of the container from where you want to import the data
Once the connection is established, you will get to see the status as Connected
To import files from AWS S3 Bucket or Azure Blob, click “Create Integration > Import/Export” & enter/update the mandatory details like –
- Integration Name
- Connection Type > AWS S3 or Azure Blob
- Anaplan Workspace Name
- Model Name
- Action Type > Import
- Data Source > Select the data file from the AWS S3 Bucket or the Azure Blob which needs to be imported
There are couple of more additional benefits into Anaplan CloudWorks –
- You can export data from Anaplan into AWS S3 Bucket or Azure Blob
- It allows you to schedule integration jobs, which means you can specify time, frequency etc. & it will run automatically & complete the integration process with no manual intervention
Cloud storage service has come a long way in last 10 years, & businesses are gradually making a transition from on-premises into cloud storage not just because it is cost effective, but it also provides a seamless coverage of their future requirements. Moreover, these storage accounts can be integrated with other ETL tool like AWS GLUE and Azure Data Factory. With respect to pricing, both offers competitive pricing, hence its up to respective businesses to identify & select the best possible scenarios for their business requirement.