扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共2页)
Hive文件和非Hive文件
Hive文件允许开发人员查询Hadoop分布式系统内的数据并使用一个类似结构化查询语言(SQL)的语言。越来越多的人知道结构化查询语言可以编写的Hadoop分布式系统并行编程技术的本地代码,这使得使用Hive文件能有一个有吸引力的和更便宜的办法来招聘新的人才,或者让开发人员学习Java程序设计语言和编程技术代码编程模式。
然而,在作出关于Hive文件作为你的大数据解决方案的任何决定之前,有一些非常重要的权衡需要注意:
•HiveQL(Hive文件结构化查询语言的方言)只允许您查询结构化数据。
•Hive文件本身并没有一个Extract/Transform/Load(ETL)工具。所以尽管你可以节省钱使用Hadoop分布式系统和Hive文件作为您的数据库,内部开发人员也可以运行结构化查询语言的技能组合,但是维护定制加载脚本和随需求变化准备数据支付费用。
•Hive底层使用HDFS和Hadoop MapReduce计算方法。看来这意味着,其原因就像已经讨论过的那样,从传统的关系数据库管理系统到习惯于正常的结构化查询语言响应时间的最终用户,可能要对Hive文件使用的有点笨拙的批处理方法来“查询”而感到失望了。
这是实时的Hadoop分布式系统吗? 并非真的如此。
让我们来探索一些使Hadoop分布式系统不适用于实时应用的技术因素。Hadoop分布式系统的MapReduce计算方法沿用了一个Map预处理步骤和一个Reduce数据聚合/提炼的步骤。虽然有可能对实时流数据应用这种Map操作,但是Reduce就不能了。
这是因为Reduce步骤要求所有输入的数据首先要为每一个独特的数据键进行映射和整理。然而对这个涉及到缓冲区的过程有一个攻击,甚至黑客都无法进行实时操作,因此缓冲区只能持有少量的数据。
某些NoSQL产品也使用MapReduce来分析工作负载。因此当这些数据存储库可以执行接近实时的数据查询时,它们也不是用于实时分析的工具。
尽管还有其它的一些大数据的谣言需要粉碎,Hadoop分布式系统也无法作为关系数据库管理系统的更换。Hive文件的各种缺点和编程工具对实时流数据的应用的不适应性是目前在我们的观察中存在的最大的障碍。
最后,要实现关于对大数据的承诺,需要透过表象去了解合适的应用。信息技术(IT)组织必须冲破大数据泡沫,并将自己对Hadoop分布式系统的努力集中到提供真正的、不同的价值的领域。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。