Data lake

Example of a database that can be used by a data lake (in this case structured data)

A data lake is a system or repository of data stored in its natural/raw format,[1] usually object blobs or files. A data lake is usually a single store of data including raw copies of source system data, sensor data, social data etc.,[2] and transformed data used for tasks such as reporting, visualization, advanced analytics, and machine learning. A data lake can include structured data from relational databases (rows and columns), semi-structured data (CSV, logs, XML, JSON), unstructured data (emails, documents, PDFs), and binary data (images, audio, video).[3] A data lake can be established on premises (within an organization's data centers) or in the cloud (using cloud services).

Background

[edit]

James Dixon, then chief technology officer at Pentaho, coined the term by 2011[4] to contrast it with data mart, which is a smaller repository of interesting attributes derived from raw data.[5] In promoting data lakes, he argued that data marts have several inherent problems, such as information siloing. PricewaterhouseCoopers (PwC) said that data lakes could "put an end to data silos".[6] In their study on data lakes they noted that enterprises were "starting to extract and place data for analytics into a single, Hadoop-based repository."

Examples

[edit]

Many companies use cloud storage services such as Google Cloud Storage and Amazon S3 or a distributed file system such as Apache Hadoop distributed file system (HDFS).[7] There is a gradual academic interest in the concept of data lakes. For example, Personal DataLake at Cardiff University is a new type of data lake which aims at managing big data of individual users by providing a single point of collecting, organizing, and sharing personal data.[8]

Early data lakes, such as Hadoop 1.0, had limited capabilities because it only supported batch-oriented processing (Map Reduce). Interacting with it required expertise in Java, map reduce and higher-level tools like Apache Pig, Apache Spark and Apache Hive (which were also originally batch-oriented).

Criticism

[edit]

Poorly-managed data lakes have been facetiously called data swamps.[9]

In June 2015, David Needle characterized "so-called data lakes" as "one of the more controversial ways to manage big data".[10] PwC was also careful to note in their research that not all data lake initiatives are successful. They quote Sean Martin, CTO of Cambridge Semantics:

We see customers creating big data graveyards, dumping everything into Hadoop distributed file system (HDFS) and hoping to do something with it down the road. But then they just lose track of what’s there. The main challenge is not creating a data lake, but taking advantage of the opportunities it presents.[6]

They describe companies that build successful data lakes as gradually maturing their lake as they figure out which data and metadata are important to the organization.

Another criticism is that the term data lake is not useful because it is used in so many different ways. [11] It may be used to refer to, for example: any tools or data management practices that are not data warehouses; a particular technology for implementation; a raw data reservoir; a hub for ETL offload; or a central hub for self-service analytics.

While critiques of data lakes are warranted, in many cases they apply to other data projects as well.[12] For example, the definition of data warehouse is also changeable, and not all data warehouse efforts have been successful. In response to various critiques, McKinsey noted[13] that the data lake should be viewed as a service model for delivering business value within the enterprise, not a technology outcome.

Data lakehouses

[edit]

Data lakehouses are a hybrid approach that can ingest a variety of raw data formats like a data lake, yet provide ACID transactions and enforce data quality like a data warehouse.[14][15] A data lakehouse architecture attempts to address several criticisms of data lakes by adding data warehouse capabilities such as transaction support, schema enforcement, governance, and support for diverse workloads. According to Oracle, data lakehouses combine the "flexible storage of unstructured data from a data lake and the management features and tools from data warehouses".[16]

See also

[edit]

References

[edit]
  1. ^ "The growing importance of big data quality". The Data Roundtable. 21 November 2016. Retrieved 1 June 2020.
  2. ^ "What is a data lake?". aws.amazon.com. Retrieved 12 October 2020.
  3. ^ Campbell, Chris. "Top Five Differences between DataWarehouses and Data Lakes". Blue-Granite.com. Archived from the original on 14 March 2016.
  4. ^ Woods, Dan (21 July 2011). "Big data requires a big architecture". Forbes.
  5. ^ Dixon, James (14 October 2010). "Pentaho, Hadoop, and Data Lakes". James Dixon’s Blog. James Dixon. Retrieved 7 November 2015. If you think of a datamart as a store of bottled water – cleansed and packaged and structured for easy consumption – the data lake is a large body of water in a more natural state. The contents of the data lake stream in from a source to fill the lake, and various users of the lake can come to examine, dive in, or take samples.
  6. ^ a b Stein, Brian; Morrison, Alan (2014). Data lakes and the promise of unsiloed data (PDF) (Report). Technology Forecast: Rethinking integration. PricewaterhouseCoopers.
  7. ^ Tuulos, Ville (22 September 2015). "Petabyte-Scale Data Pipelines with Docker, Luigi and Elastic Spot Instances". NextRoll.
  8. ^ Walker, Coral; Alrehamy, Hassan (2015). "Personal Data Lake with Data Gravity Pull". 2015 IEEE Fifth International Conference on Big Data and Cloud Computing. pp. 160–167. doi:10.1109/BDCloud.2015.62. ISBN 978-1-4673-7183-4. S2CID 18024161.
  9. ^ Olavsrud, Thor (8 June 2017). "3 keys to keep your data lake from becoming a data swamp". CIO. Retrieved 4 January 2021.
  10. ^ Needle, David (10 June 2015). "Hadoop Summit: Wrangling Big Data Requires Novel Tools, Techniques". Enterprise Apps. eWeek. Retrieved 1 November 2015. Walter Maguire, chief field technologist at HP's Big Data Business Unit, discussed one of the more controversial ways to manage big data, so-called data lakes.[permanent dead link]
  11. ^ "Are Data Lakes Fake News?". Sonra. 8 August 2017. Retrieved 10 August 2017.
  12. ^ Belov, Vladimir; Kosenkov, Alexander N.; Nikulchev, Evgeny (2021). "Experimental Characteristics Study of Data Storage Formats for Data Marts Development within Data Lakes". Applied Sciences. 11 (18): 8651. doi:10.3390/app11188651.
  13. ^ "A smarter way to jump into data lakes". McKinsey. 1 August 2017.
  14. ^ What is a Data Lakehouse? | Databricks
  15. ^ What is a Data Lakehouse? | Snowflake
  16. ^ What is a Data Lakehouse? | Oracle