数据湖听起来很简单:把数据或信息汇集到一个结合处理速度和存储空间的大数据系统――Hadoop集群或内存解决方案,那样业务部门就能访问数据,获取新的洞察力。不过,与IT行业的许多技术一样,现实比梦想困难得多。

  Pentaho公司的创始人兼首席技术官詹姆斯·狄克逊(James Dixon)发明了这个术语,他表示,其中一方面是由于对数据湖应该是什么存在着误解。他从来就没有打算用数据湖来描述从所有企业应用程序获取数据的巨大的Hadoop存储库。

  数据湖是什么东东?

  狄克逊说:“有人问数据湖是什么时,我告诉他们,它就是你以前在磁带上拥有的东西。拿来你在磁带上的东西,把它倒入到数据湖,然后开始探索该数据。我们的看法是,只把需要的数据倒入到Hadoop;如果你想结合来自数据湖的信息和客户关系管理(CRM)系统里面的信息,我们就进行连接,只有需要时才执行这番数据结合。”

  尽管狄克森的初衷并非如此,但这个术语具有更广泛的含义,而且有着更大的希望。人们开始将大数据湖视作通过把所有数据放入到一个超快、易于访问的存储库,解决集成难题的一种方法。

  实际上,存储库反而变成了一个缓慢、僵化的数据沼泽。大数据需要特殊的专长来分析数据。使用原始数据得出的结论在数据质量和治理方面发出了危险信号。

  尼克·霍德克(Nick Heudecker)是Gartner的IT领导者数据和分析部门的数据管理研究人员,他说:“每个人都想把数据湖视作IT行业的银弹。之前有没有这样的一种银弹?我还在等待。我认为,一旦你跨过了那个发现阶段,就需要做更多工作。就数据湖而言,那同一基础设施有所帮助,但是一旦你使用该数据来回答你生成的问题,就需要更深入地探究专业信息管理世界。”

  所以鉴于数据湖现状,你如何利用它们、为贵企业带来最大优势?专家们表示,数据湖有四个关键的最佳实践:

  ·了解数据湖的使用场合

  ·别忘了现有的数据管理最佳实践,比如确立强大的数据管理

  ·知道数据湖的业务理由,因为这将决定合适的架构

  ·要注意元数据

  1. 了解数据湖的使用场合

  想建立一个成功的数据湖,企业需要摈弃这种想法:数据湖让你可以在一个地方收集所有数据。数据湖并非取代企业数据管理系统和实践――至少从大数据的现状来看不是这样,明白这一点同样很重要。

  MapR公司的数据和应用程序高级副总裁杰克·诺里斯(Jack Norris)说:“企业组织仍在谈论数据湖,但它们也认识到,不是所有数据湖都一样。某些数量的功能是你所需要的,或者我们听人谈起过数据沼泽,很难让数据流进流出,数据就停滞在那里。”

  考虑到数据湖没有按计划那样奏效,它仍然切实可行吗?专家们表示,是的,前提是你得了解其局限性。

  霍德克说:“在我看来,它就是数据科学沙盒。你在这里处理数据,试图找到新的洞察力。一旦你找到了那新的洞察力,任由数据处于原始格式合理吗?我会认为,这并不合理,因为你现在需要优化数据。你需要确保数据得到治理,确保数据在语义上一致,并满足业务使用者的要求,所以在我看来,数据湖好比实验室。你可以用它处理其他事情,不过对我来说,我在建议客户时,我会尽量建议他们这么考虑其数据湖。”

  这不像听起来那么有局限性。比如说,霍德克特别指出,企业使用数据湖从部署的物联网获取洞察力。TDWI Research的数据管理研究主任菲利普·拉索姆(Philip Russom)表示,数据湖身兼多职,比如为敏捷数据仓库和报告提供更大的灵活性。数据湖还经常为Hadoop集群和数据集成充当数据着陆区和集结区。

  拉索姆在电子邮件中说:“在极端状态下,数据湖直接从数据源摄取原始状态的数据,不经过任何清理、标准化、重新建模和改动等操作。处理原始的、未改动的详细源数据的目的在于,新的、独特的分析需求出现时,可以在运行时实时改动数据。这假设,一旦你改变数据用于特定的用途,输出数据对其他用途而言就有点局限性。”

  2. 运用现有的数据管理最佳实践

  拉索姆补充道,可以跨越这些比较简单的使用场合,但那需要的不仅仅是将数据倒入到数据湖。

  他在邮件中写道:“现在有些用户多年来一直在使用某种形式的数据湖(甚至是在新的Hadoop上),我们可以从它们成熟的运用中学到经验。用户已明白,如果要求数据湖的一些部分(很少是整个数据湖)采用某种结构,就能够从数据湖得到更大的用途(即商业价值)。”

  这也意味着,企业组织在分析数据湖存储系统或与企业应用程序集成时,不能忽视过去二三十年好不容易获取的数据经验教训。审计跟踪记录、数据完整性、数据管理、数据治理和数据所有权,这些都仍然适用。

  3. 知道数据湖的业务理由

  技术专家们喜欢说,IT项目应该始于业务,但在这里,这是确定如何构建数据湖的关键的第一步。业务理由并不是仅仅影响架构,而是决定架构。

  比如说,狄克逊特别指出,该公司采访Hadoop集群的早期采用者后,80%到90%的使用场合针对结构化数据,而不是非结构化数据。想确定你的数据是否可以建立在传统关系数据库、Hadoop集群或另一种NoSQL替代数据库,关键在于知道自己的业务使用场合将是什么,它需要哪种类型的数据。据霍德克声称,比如说,关系数据库就适合物联网传感器数据,这意味着你可以节省招聘NoSQL人才的成本。

  业务理由还将决定你要不要使用任何NoSQL解决方案上的某种SQL支持。如果数据将被转移到企业分析工具,那么你要考虑如何支持数据最佳实践。

  诺里斯说:“重点绝不仅仅是数据,而是始终关于你要做什么工作。使用场合是什么,你可以运用什么应用程序来处理该数据以便从中受益。”

  4. 支持元数据

  最后,要注意元数据。元数据一再出现,它是确保数据湖是可行战略而不是数据墓地的关键。这里的好消息是,大数据和分析厂商在推出将元数据添加到数据湖及其他大数据存储系统的新工具。比如说,元数据注入就是Pentaho Business Analytics 6.1的一个关键部分。

  狄克逊说:“现阶段,人们认识到大数据确实带来了其他数据存储系统无法带来的东西。现在它的表现要像其他企业级应用程序。现在它需要安全,需要监控、日志和审计,它需要元数据,变得更稳健、更实用、更人性化。我认为,这是它变得更像是企业IT的标准工具的结果。”

  霍德克表示,元数据也是Gartner发现的一个新趋势的关键:对数据进行“联系,而不是收集”。相比将数据转移到越来越大的集群或数据仓库,让数据待在原地来得更省钱、更容易、更高效。

  他说:“最大的挑战是元数据和元数据管理,这也是企业应该最关注的方面。如果你非常清楚地了解数据的元数据,就能解决你在忙于工作时可能会延迟或延期的许多事情。所以,只要拥有良好的元数据,你就能搞定治理,就能搞定安全,就能搞定任何数据质量问题。”

  “只要你专注于此,那么就能建立坚实的基础,然后在需求不断变化,你对使用场合的了解变得更明确时,不断夯实这个基础。”

数据湖是一种方法 数据湖的四个最佳实践相关推荐

  1. python与excel做数据可视化-用Python进行数据可视化的10种方法

    原标题:用Python进行数据可视化的10种方法 2015-11-19 关于转载授权 大数据文摘作品,欢迎个人转发朋友圈,自媒体.媒体.机构转载务必申请授权,后台留言"机构名称+转载&quo ...

  2. python预处理标准化_tensorflow预处理:数据标准化的几种方法

    tensorflow预处理:数据标准化的几种方法 发布时间:2018-08-09 19:39, 浏览次数:1774 , 标签: tensorflow 数据归一化问题是数据挖掘中特征向量表达时的重要问题 ...

  3. WPF中在XAML中实现数据类型转换的两种方法

    WPF中在XAML中实现数据类型转换的两种方法 原文:WPF中在XAML中实现数据类型转换的两种方法 熟悉数据绑定的朋友都知道,当我们在Model中获取一个对象的数据,常常需要对其进行数据转换后显示在 ...

  4. 数据增加的两种方法(二)

    数据增加的两种方法(二) 开发工具与关键技术:SQL Server 2014.数据增加的两种方法(二) 作者:袁何恩 撰写时间:2019年7月26日 今天,我要和大家分享的技术是新增数据的两种方法. ...

  5. 对表型数据框进行去冗余 phe 表型信息提取 临床信息提取 自建函数提取 种方法数据框里面进行取子集操作,坐标、列名和逻辑判断每列满足某个要求每行满足某个要求按条件筛选数据库dataframe

    NA 去掉删除多余的na 向量是否存在两个以及两个以上等于0的值 na NA 如何计算R中向量中大于某个值的元素数量 R如何按条件查找数据并删除符合条件的数据所在的行 判定一个向量是否包含0这个元素_ ...

  6. 用于处理机器学习大数据文件的7种方法

    机器学习数据文件太大而不能装入内存数据集是很常见的. 这会导致以下问题: 如何加载多个G的数据文件? 当我尝试运行我的数据集时算法崩溃;我该怎么办? 您能帮助纠正内存不足的错误吗? 在这篇文章中,我想 ...

  7. 小程序页面之间数据传递的五种方法

    小程序页面之间数据传递的五种方法 目录 小程序页面之间数据传递的五种方法 **使用 `wx.navigateTo()` 时,在 url 中拼接,这种方法适用于数据量少的情况** **使用 `wx.na ...

  8. java数据输入的步骤_Java学习日志1.4 Scanner 数据输入的三种方法

    Scanner sc = new Scanner(System.in); /注意in 是InputStream的缩写,是字节输入流的意思. 整句话的含义就是: new 一个对象,接受从键盘输入的数据, ...

  9. 在R中子集化数据框的5种方法

    由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. 通常,我们在使用大型数据集时,只会对其中的一小部分感兴趣,用以进行特定分析. 那么,我们应该如 ...

最新文章

  1. pptpd免radius限速、限连接+自由定制功能脚本
  2. JAVA_Thread_deadlock
  3. 关于socket的一些总结
  4. iOS -- SKPhysicsJointSpring类
  5. tensorflow api训练3(ckpt转成pb和pbtxt)完结
  6. html 判断输入的是手机号码,用js验证手机号码格式是否正确
  7. 【游戏策划】Excel的使用技巧(一)
  8. 10天java基础学习笔记五
  9. 最新彻底禁止win10自动更新
  10. 微信小程序报错“对应的服务器证书无效”
  11. XtraReport通过动态设置打印模板进行标签打印
  12. 聊聊数据库~5.SQL运维上篇
  13. windows系统修复
  14. linux中常用的加密总结--base64编码解码与openssl实现
  15. 亲测3种个人在线网站建设的方法
  16. 求最长上升子序列长度和输出序列
  17. 顺祝商祺 - 顺颂商祺
  18. ChatGPT秒杀了所有408考研编程题……
  19. C# GDI+双倍缓冲技术
  20. html+下拉列表项太多,下拉列表的选项太多?试试这个

热门文章

  1. Folksam数据泄露将100万瑞典人的信息泄露给谷歌、Facebook等巨头
  2. 深入google glass
  3. word域操作及操作页码实例
  4. 抖音、快手变长,B站、趣头条变短
  5. 抖音、拼多多、趣头条告诉我们:一切商业均有机会
  6. java图片镜像代码_java图片基本操作-缩放,旋转,镜像,拼接
  7. dita-ot html_将HTML迁移到DITA,第2部分,扩展迁移以获得更可靠的结果
  8. 变味的校园App:网游色情内容泛滥,K12成重灾区...
  9. Python实现可视化界面多线程豆瓣电影信息爬虫,并绘制统计图分析结果
  10. 室内人员定位系统-贵重资产定位系统-蓝牙信标