机房360首页
当前位置:首页 » 技术前沿 » 管理企业数据流的最佳实践(上)

管理企业数据流的最佳实践(上)

来源:机房360 作者:Harris编译 更新时间:2018-1-3 7:05:03

摘要:在大数据和快速数据得到广泛应用之前,数据移动的挑战很简单:将数据从相当静态的数据库移动到数据仓库中合适的位置,或者以标准化的方式在数据库和应用程序之间移动数据。这个过程类似于工厂生产线。

      在新的世界中,组织必须为变革做准备,并不断监控和调整数据移动系统的性能。
  
  在大数据和快速数据得到广泛应用之前,数据移动的挑战很简单:将数据从相当静态的数据库移动到数据仓库中合适的位置,或者以标准化的方式在数据库和应用程序之间移动数据。这个过程类似于工厂生产线。
  
  相比之下,新兴的世界是来自多种来源的多对多的、流式的、批量的或者微批量的数据,并被多个应用程序所使用。大数据处理操作更像是城市交通网格这样一种共享资源网络,而不是传统数据所采用的线性路径。此外,其来源和应用程序由单独的各方,甚至第三方控制。因此,当模式或语义不可避免地发生变化时(称为数据漂移),可能会对下游分析造成严重破坏。
  
  由于现代数据是动态的,处理移动中的数据不仅是开发人员的设计时间问题,而且是运行时间问题,需要日常管理和随着时间的推移而变化的运营视角。在这个新的世界里,组织必须建立变革的架构,不断监视和调整数据移动系统的性能。
  
  如今,数据移动应该被看作是一个连续的、不断变化的操作,其性能是主动管理的。这个由两部分组成的系列提供了以下12个最佳实践作为实际建议,帮助企业管理作为系统的数据移动性能,并从数据中获得最大价值。
  
  1.尽量限制手工编码
  
  编写自定义代码将来自源的数据提取到数据存储中是司空见惯的事情。考虑到大数据的动态性,这种做法是危险的。自定义代码会在数据流中造成脆弱性,对数据模式的微小更改可能会导致流丢失数据或完全失败。而且,由于仪表必须明确设计,但通常没有这样实施,所以数据流可能变成黑盒子,不能提供流水线健康的可视性。最后,低级编码会导致组件之间更紧密的耦合,从而难以升级企业的基础设施,并且扼杀组织敏捷性。
  
  如今,现代数据采集系统可以在数据源类型,中间处理系统(如Kafka和其他消息队列)和数据存储之间创建无代码的即插即用连接。从这样的系统中获得的好处是灵活性而不是脆弱性,获得可见性而不是不透明性,以及独立升级数据处理组件的能力。如果企业担心定制或可扩展性,这些工具通常会增加内置的连接器,支持强大的表达式语言或插入自定义代码的能力。
  
  2.最小化模式规范和意图驱动
  
  虽然这是传统数据世界的标准要求,但大数据的完整模式规范导致了工程时间和资源的浪费。消费应用程序通常只使用几个关键字段进行分析,而大数据源通常具有控制不良的模式,这些模式随着时间的推移而变化,并强制进行持续的维护。
  
  数据流系统不应该依赖完整的模式规范,而应该是意图驱动的,从而只为与下游分析有关的那些领域提供指定条件和转换。这种简约的方法减少了开发和实施管道所需的工作和时间。这也使得数据流更加可靠,因为出错少。
  
  3.规划流式数据分析和批处理
  
  尽管所有关于流式数据分析得到更多的关注,企业数据仍然是基于过去30年来开发的应用程序和源数据库的批处理驱动的世界。因此,当企业规划网络安全、物联网和其他利用流式数据分析的新应用程序时,企业必须考虑到此数据通常必须与批处理源(如主数据或事务数据)结合或进行分析。实际的需求不是建立一个纯粹的流媒体框架,而是需要将流媒体整合到传统的批量驱动结构中,同时保持或提高整个数据操作的性能和可靠性。
  
  4.摄取原始数据时进行清理
  
  早期Hadoop用户的原始口头禅是应该只在商店中存储不可变的原始数据。当技术进步满足现实世界的要求时,人们已经了解到,在摄取数据时没有对数据进行消毒。原始数据就像未经处理的水会使人生病一样。这种方法催生了Gartner公司的“数据沼泽”隐喻。通过让数据科学家清理每个消费活动的数据来消除这种风险是一种常见的方法,但显然是对资源的低效使用。另外,存储原始输入总是会导致企业在数据库中拥有个人数据和其他敏感信息,从而降低了安全性和合规风险。
  
  使用现代数据流系统,企业可以并应该在摄取原始数据时进行清理。基本的卫生处理包括简单的“逐行排列”转换,强制执行企业数据政策、规范化或标准化数据格式。更先进的消毒方法包括滚动平均和其他时间序列计算,数据科学家和业务分析人员可以广泛利用其结果。
  
  尽可能靠近数据源来消毒数据使得数据科学家的工作效率更高,使他们能够专注于针对特定用途的“数据争夺”,而不是重新进行应该集中和自动化的通用转换。
  
  5.解决数据漂移问题
  
  大数据管理面临的一个棘手的挑战就是处理数据漂移问题:源系统的操作,维护和现代化导致的数据特征的不可预知、不可避免的不断变化。它以三种形式出现:结构漂移(模式变化),语义漂移(语义改变)或基础设施漂移(数据处理软件的变化,其中包括虚拟化,数据中心和云计算迁移)。
  
  数据漂移会影响数据保真度、数据操作的可靠性,并最终影响数据科学家和工程师的生产力。它会增加企业的成本,延误了分析时间,导致基于污染或不完整的数据做出糟糕的决策。
  
  如果企业的最终目标是通过向尽可能多的用户提供尽可能多的数据(例如通过Hive或Impala查询)来实现数据访问的民主化,那么应该查找能够检测和响应模式更改的数据移动工具和系统,并保持Hive元数据同步,或者至少提醒进行更改。
  
  6.不要依靠托管文件传输
  
  新的数据集通常是无界的和连续的,如不断变化的日志、点击流,以及物联网传感器输出。对这些动态源类型使用托管文件传输或其他基本机制会创建一个脆弱的架构,这将需要不断的维护以保持可行性。
  
  文件的内容、结构和格式各不相同,因此有必要对其进行反思。这意味着将无法看到应该传达给消费系统和应用程序的更改。
  
  如果用户打算依靠文件传输机制,请考虑预处理这些文件以使数据格式标准化,以简化检查和分析,或者采用为其执行此操作的摄入工具或框架。
  
  如今的数据比以往任何时候都更有活力,因此必须以与过去完全不同的方式进行管理。部署这些管理当今连续流数据的最佳实践,将使企业从大数据投资中获得最大收益。
  
  编辑:Harris

机房360微信公众号订阅
扫一扫,订阅更多数据中心资讯

本文地址:http://www.jifang360.com/news/201813/n3939101159.html 网友评论: 阅读次数:
版权声明:凡本站原创文章,未经授权,禁止转载,否则追究法律责任。
相关评论
正在加载评论列表...
评论表单加载中...
  • 我要分享
推荐图片