Microsoft Azure Data Lake Store: An Introduction

The Azure Data Lake Store service provides a platform for organizations to park – process and analyse – vast volumes of data in any format. 

With increasing volumes of data to manage, enterprises are looking for appropriate infrastructure models to help them apply analytics to their big data, or simply to store them for undetermined future use.

What is data lake?

In simple terms, a data lake is a repository for large quantities and varieties of both structured and unstructured data in their native formats.

A data lake maintains data in their native formats and handles the three Vs of big data (Volume, Variety, Velocity) while providing tools for analysis, querying, and processing. Data lake eliminates all the restrictions of a typical data warehouse system by providing unlimited space, unrestricted file size, schema on read, and various ways to access data. With the emergence of Hadoop (including HDFS and YARN), the benefits of data lake – became a practical reality for just about anyone – previously available only to the most resource-rich companies like Google, Yahoo, and Facebook. Now, Organizations who had been generating and gathering data on a large scale but had struggled to store and process them in a meaningful way, have more options.

Azure Data Lake

Azure Data Lake is the new kid on the data lake block from Microsoft Azure. Here is some of what it offers:

  • The ability to store and analyse data of any kind and size.
  • Multiple access methods including U-SQL, Spark, Hive, HBase, and Storm.
  • Built on YARN and HDFS.
  • Dynamic scaling to match your business priorities.
  • Enterprise-grade security with Azure Active Directory.
  • Managed and supported with an enterprise-grade SLA.

Azure Data Lake can, broadly, be divided into three parts:

  • Azure Data Lake store – The Data Lake store provides a single repository where organizations upload data of just about infinite volume. The store is designed for high-performance processing and analytics from HDFS applications and tools, including support for low latency workloads. In the store, data can be shared for collaboration with enterprise-grade security.
  • Azure Data Lake analytics – Data Lake analytics is a distributed analytics service built on Apache YARN that compliments the Data Lake store. The analytics service can handle jobs of any scale instantly with on-demand processing power and a pay-as-you-go model that’s very cost effective for short term or on-demand jobs. It includes a scalable distributed runtime called U-SQL, a language that unifies the benefits of SQL with the expressive power of user code.
  • Azure HDInsight – Azure HDInsight is a full stack Hadoop Platform as a Service from Azure. Built on top of Hortonworks Data Platform (HDP), it provides Apache Hadoop, Spark, HBase, and Storm clusters.

Azure Data Lake Store

According to Microsoft, Azure Data Lake store is a hyper-scale repository for big data analytics workloads and a Hadoop Distributed File System (HDFS) for the cloud. It…

  • Imposes no fixed limits on file size.
  • Imposes no fixed limits on account size.
  • Allows unstructured and structured data in their native formats.
  • Allows massive throughput to increase analytic performance.
  • Offers high durability, availability, and reliability.
  • Is integrated with Azure Active Directory access control.

Some have compared Azure Data Lake store with Amazon S3 but, beyond the fact that both provide unlimited storage space, the two really don’t share all that much in common. If you want to compare S3 to an Azure service, you’ll get better mileage with the Azure Storage Service. Azure Data Lake store, on the other hand, provides an integrated analytics service and places no limits on file size. Here’s a nice illustration:

Azure Data Lake store can handle any data in their native format, as is, without requiring prior transformations. Data Lake store does not require a schema to be defined before the data is uploaded, leaving it up to the individual analytic framework to interpret the data and define a schema at the time of the analysis. Being able to store files of arbitrary size and formats makes it possible for Data Lake store to handle structured, semi-structured, and even unstructured data.

Azure Data Lake store file system (adl://)

Azure Data Lake Store can be accessed from Hadoop (available with an HDInsight cluster) using the WebHDFS-compatible REST APIs. However, Azure Data Lake store introduced a new file system called AzureDataLakeFilesystem(adl://). adl:// is optimized for performance and available in HDInsight. Data is accessed in the Data Lake store using:

adl://<data_lake_store_name>.azuredatalakestore.net

Azure Data Lake store security:

Azure Data Lake store uses Azure Active Directory (AAD) for authentication and Access Control Lists (ACLs) to manage access to your data. Azure Data Lake benefits from all AAD features including Multi-Factor Authentication, conditional access, role-based access control, application usage monitoring, security monitoring and alerting. Azure Data Lake store supports the OAuth 2.0 protocol for authentication within the REST interface. Similarly, Data Lake store provides access control by supporting POSIX-style permissions exposed by the WebHDFS protocol.

Azure Data Lake store pricing

Data Lake Store is currently available in US-2 region and offers preview pricing rates (excluding Outbound Data transfer):
Azure Data Lake store - cost

Conclusion

Azure Data Lake is an  important new part of Microsoft’s ambitious cloud offering. With Data Lake, Microsoft provides service to store and analyse data of any size at an affordable cost.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s