论文部分内容阅读
摘要:当前在进行大数据应用过程中存在三方面的问题,分别是大数据的存储、分析和管理的问题,如果不能有效解决这些问题,将会直接影响其发展和应用。下面在总结前人经验的基础上,根据当前研究所得到的成果,提出有效的解决策略,希望给有关人士一些借鉴。
关键词:Hadoop平台;大数据;应用系统
当前移动电子商务、云计算、互联网得到的快速发展,在整个数据库市场中大数据占据很重要的地位,而且这一趋势还在继续发展,由此可见,基于Hadoop平台的大数据将会得到广泛的推广。大数据具有广度宽、深度深、规模大的特点,而且处理时间短,要求处理效果高,当前在应用中存在一定问题,下面就深入分析这方面的问题。
1分析大数据的存储问题和解决方案
1.1大数据的存储问题
HDFS属于一种分布式文件系统,其中一个文 件以多个block的形式存放在多个Namenode节点上,每个block有多个副本,副本存放的位置根据HDFS放置算法来决定,但是在这方面还要注意,在HDFS中缺省block副本数和大小,但是对于所缺省的参数可以重新进行设置,对于CLIENT文件,可以临时设置两个参数,有效提高了系统的灵活性,在文件中其逻辑处理单元、重要性、大小都不同。由此可见,HDFS可以对非结构化数据进行存储,对数据实施分布式计算,具有较高的性价比,系统运行可靠性比较高,通过增加机器设备,就可以保证系统的存储能力。HDFS文件在读写并行方面存在问题,其已经可以读读并行,但是写读并行、读写并行中会受到制约,对于正在写操作的文件,读用户看不到最后的block内容。
1.2相应的解决方案
针对HDFS文件在读写并行方面存在问题,技术人员分析了HDFS文件组织方式,其真实数据文件和元数据文件是单独存放的,其中的每个数据块都和本地文件系统相对应,因此在处理这一问题时,先不要改动HDFS的主要接口和主要特点,利用这方面的逻辑处理功能,编号算法等,对不同的HDFS文件进行块集合组合,可以有效解决问题。
2 大数据分析过程的问题和解决方案
2.1 Hadoop生态系统存在的问题
Hadoop生态系统进行数据分析时有其自己的特点,对板结构化的数据、非结构的化的数据比较容易处理,系统拥有很好的容错性和扩展性,该系统的接口类型很多,适应运行环境的异构性,该计算模型可以采用并行方式计算,因此该系统可以得到很好的性能,但是这一系统在相同条件下,和商业并行数据库进行测试对比,其在性能方面存在很大的劣势。
2.2有效的解决方案分析
为了解决上述的问题,可以从三个方面进行分析,第一点,Hadoop生态系统开始研发时是针对半结构化数据、非结构化数据;第二点,这一生态系统容错性和可扩展性非常好,技术人员在改进时,如果增加节点数量就可以得到很好的性能,因此在使用中不需要在相同条件下和并行数据库进行对比。在增加了节点的数量后,没有必要对SQL接口查询命令进行修改,也没有必要对编程语言进行修改,达到很好的效果。机器使用的是中低端设备,其对性价比没有较大的影响,当前生态系统自身也可以对其问题、性能等进行优化,例如数据的压缩优化、job调度程序优化,体系结构优化等。当前主要有两种解决方式,分别是混合型MapReduce解决方式,其主要吸收了并行數据中的一些特点,还有一种是经典型MapReduce解决方式,主要针对生态系统中的HadoopDB项目和HadoopDB MapRe-duce项目。
3大数据管理问题和解决方案
3.1分析大数据管理中有待解决的问题
一般在大数据管理中都不重视易用性,其中的hadoop也有类似的问题,但是在商业解决方案中技术人员就注意到了这一点,因此在设计中具有针对性,有效解决了这一问题。例如IBM大数据解决方案中,BI-ginsights对相应的集群、作业运行、HDFS文件管理有一个统一的管理模式,管理中系统具有可视化功能,对于大数据解决方案而言,也有赖于内部的集群管理系统。对于一个完整的大数据解决方案而言,必须使用到一体化的管理系统,这一系统在管理中包括很多的项目,例如通过大量机器构成大集群和小集群,具有多种数据来源,涉及到很多作业的运行和部署。在管理中如果只使用手工操作,没有专业的平台和技术工具等,不能保证系统的工作效率,间接也会影响系统的进一步推广。相关企业虽然使用这一生态系统建立了平台,没有一个完整的集群配置平台,在删除节点和增加节点时必须进行手工操作,进行参数配置时主要依靠个人经验,工作中没有可靠的模拟器来帮助。从当前的解决方案中分析,在对Hadoop生态系统大数据管理中,主要应用了Ganglia和Sqoop[1]。
3.2分析具体的解决方案
解决大数据中的管理问题时,主要引入了Sqoop技术,其可以将生态系统以外的内容导入其中,还可以将内部的数据导出,具体应用Sqoop技术时主要存在下列问题,缺少图形化的客户端,导入的效率还需要进一步提高 稳定性问题需要解决。针对这一情况,技术人员进行了深入的研究,进而开发设计出了插件、application、Web客户端。在使用中发现使用Sqoop进行大表导入过程中,工作状态较差,导入效率低,而且经常出现问题,技术人员根据MapReduce设计出了大表导入编程模型,在该方式下实行切分算法,具体而言,对大表总的记录mapper数求步长,得到与之对应的splitSQL查询语句的起始行和区间长度,最终就可以保证导入工作量完全相同;这一模型工作方式是先进入 到MAP函数的键值对中的键[2],是split对应的SQL语句,把查询放入到地图函数中,这样使用这一模型时,对于其中的每一个mapper只调用一次map函数,通过实验对比得知,使用的大表记录数据都相同,测试中无论是记录的分布情况还是区间情况,导入的时间都相同,或者对同一表分别用不同的分割字段,导入时间也完全相同。针对同一个大表模型而言,其实际导入效率比Sqoop有明显的提高。在引入Ganglia技术时,主要存在两个问题,分布是收集到的metrics数据只能进行显示,用户不能制定自己的metrics。针对这一情况,可以在OpenTSDB架构中融入Ganglia,这样可以吧gmond所收集到的数据送往HBase和RRDTool中,有效解决了上述存在的问题,使用中可以进行监控,还有些保存了原始数据。
总结:
通过以上对Hadoop平台的大数据应用系统解决方案分析,根据现实应用中存在的问题,结合生态系统的特点解决其问题,可以得到显著的效果。在商业的解决方案中,在服务、易用性、性能方面具有优势,在解决问题时,技术人员还优化了相关项目,前言工作者已经开始开发与之配套的管理套件。在以后的发展中,Hadoop生态系统发展速度会更快,但是在发展中要提高对大数据安全的重视度,否则影响会很大。
参考文献:
[1]陈吉荣,乐嘉锦.基于Hadoop生态系统的大数据解决方案综述[J].计算机工程与科学,2013,35(10):25-35.
[2]向庭波,刘树庄,何涛,等.大数据技术在卡口系统联网方面的应用——基于Hadoop的卡口系统云计算联网平台改造设计与开发[J].中国公共安全:学术版, 2015(11):45-50.
作者姓名:朱立 出生年月:1970年3月 学历:硕士
关键词:Hadoop平台;大数据;应用系统
当前移动电子商务、云计算、互联网得到的快速发展,在整个数据库市场中大数据占据很重要的地位,而且这一趋势还在继续发展,由此可见,基于Hadoop平台的大数据将会得到广泛的推广。大数据具有广度宽、深度深、规模大的特点,而且处理时间短,要求处理效果高,当前在应用中存在一定问题,下面就深入分析这方面的问题。
1分析大数据的存储问题和解决方案
1.1大数据的存储问题
HDFS属于一种分布式文件系统,其中一个文 件以多个block的形式存放在多个Namenode节点上,每个block有多个副本,副本存放的位置根据HDFS放置算法来决定,但是在这方面还要注意,在HDFS中缺省block副本数和大小,但是对于所缺省的参数可以重新进行设置,对于CLIENT文件,可以临时设置两个参数,有效提高了系统的灵活性,在文件中其逻辑处理单元、重要性、大小都不同。由此可见,HDFS可以对非结构化数据进行存储,对数据实施分布式计算,具有较高的性价比,系统运行可靠性比较高,通过增加机器设备,就可以保证系统的存储能力。HDFS文件在读写并行方面存在问题,其已经可以读读并行,但是写读并行、读写并行中会受到制约,对于正在写操作的文件,读用户看不到最后的block内容。
1.2相应的解决方案
针对HDFS文件在读写并行方面存在问题,技术人员分析了HDFS文件组织方式,其真实数据文件和元数据文件是单独存放的,其中的每个数据块都和本地文件系统相对应,因此在处理这一问题时,先不要改动HDFS的主要接口和主要特点,利用这方面的逻辑处理功能,编号算法等,对不同的HDFS文件进行块集合组合,可以有效解决问题。
2 大数据分析过程的问题和解决方案
2.1 Hadoop生态系统存在的问题
Hadoop生态系统进行数据分析时有其自己的特点,对板结构化的数据、非结构的化的数据比较容易处理,系统拥有很好的容错性和扩展性,该系统的接口类型很多,适应运行环境的异构性,该计算模型可以采用并行方式计算,因此该系统可以得到很好的性能,但是这一系统在相同条件下,和商业并行数据库进行测试对比,其在性能方面存在很大的劣势。
2.2有效的解决方案分析
为了解决上述的问题,可以从三个方面进行分析,第一点,Hadoop生态系统开始研发时是针对半结构化数据、非结构化数据;第二点,这一生态系统容错性和可扩展性非常好,技术人员在改进时,如果增加节点数量就可以得到很好的性能,因此在使用中不需要在相同条件下和并行数据库进行对比。在增加了节点的数量后,没有必要对SQL接口查询命令进行修改,也没有必要对编程语言进行修改,达到很好的效果。机器使用的是中低端设备,其对性价比没有较大的影响,当前生态系统自身也可以对其问题、性能等进行优化,例如数据的压缩优化、job调度程序优化,体系结构优化等。当前主要有两种解决方式,分别是混合型MapReduce解决方式,其主要吸收了并行數据中的一些特点,还有一种是经典型MapReduce解决方式,主要针对生态系统中的HadoopDB项目和HadoopDB MapRe-duce项目。
3大数据管理问题和解决方案
3.1分析大数据管理中有待解决的问题
一般在大数据管理中都不重视易用性,其中的hadoop也有类似的问题,但是在商业解决方案中技术人员就注意到了这一点,因此在设计中具有针对性,有效解决了这一问题。例如IBM大数据解决方案中,BI-ginsights对相应的集群、作业运行、HDFS文件管理有一个统一的管理模式,管理中系统具有可视化功能,对于大数据解决方案而言,也有赖于内部的集群管理系统。对于一个完整的大数据解决方案而言,必须使用到一体化的管理系统,这一系统在管理中包括很多的项目,例如通过大量机器构成大集群和小集群,具有多种数据来源,涉及到很多作业的运行和部署。在管理中如果只使用手工操作,没有专业的平台和技术工具等,不能保证系统的工作效率,间接也会影响系统的进一步推广。相关企业虽然使用这一生态系统建立了平台,没有一个完整的集群配置平台,在删除节点和增加节点时必须进行手工操作,进行参数配置时主要依靠个人经验,工作中没有可靠的模拟器来帮助。从当前的解决方案中分析,在对Hadoop生态系统大数据管理中,主要应用了Ganglia和Sqoop[1]。
3.2分析具体的解决方案
解决大数据中的管理问题时,主要引入了Sqoop技术,其可以将生态系统以外的内容导入其中,还可以将内部的数据导出,具体应用Sqoop技术时主要存在下列问题,缺少图形化的客户端,导入的效率还需要进一步提高 稳定性问题需要解决。针对这一情况,技术人员进行了深入的研究,进而开发设计出了插件、application、Web客户端。在使用中发现使用Sqoop进行大表导入过程中,工作状态较差,导入效率低,而且经常出现问题,技术人员根据MapReduce设计出了大表导入编程模型,在该方式下实行切分算法,具体而言,对大表总的记录mapper数求步长,得到与之对应的splitSQL查询语句的起始行和区间长度,最终就可以保证导入工作量完全相同;这一模型工作方式是先进入 到MAP函数的键值对中的键[2],是split对应的SQL语句,把查询放入到地图函数中,这样使用这一模型时,对于其中的每一个mapper只调用一次map函数,通过实验对比得知,使用的大表记录数据都相同,测试中无论是记录的分布情况还是区间情况,导入的时间都相同,或者对同一表分别用不同的分割字段,导入时间也完全相同。针对同一个大表模型而言,其实际导入效率比Sqoop有明显的提高。在引入Ganglia技术时,主要存在两个问题,分布是收集到的metrics数据只能进行显示,用户不能制定自己的metrics。针对这一情况,可以在OpenTSDB架构中融入Ganglia,这样可以吧gmond所收集到的数据送往HBase和RRDTool中,有效解决了上述存在的问题,使用中可以进行监控,还有些保存了原始数据。
总结:
通过以上对Hadoop平台的大数据应用系统解决方案分析,根据现实应用中存在的问题,结合生态系统的特点解决其问题,可以得到显著的效果。在商业的解决方案中,在服务、易用性、性能方面具有优势,在解决问题时,技术人员还优化了相关项目,前言工作者已经开始开发与之配套的管理套件。在以后的发展中,Hadoop生态系统发展速度会更快,但是在发展中要提高对大数据安全的重视度,否则影响会很大。
参考文献:
[1]陈吉荣,乐嘉锦.基于Hadoop生态系统的大数据解决方案综述[J].计算机工程与科学,2013,35(10):25-35.
[2]向庭波,刘树庄,何涛,等.大数据技术在卡口系统联网方面的应用——基于Hadoop的卡口系统云计算联网平台改造设计与开发[J].中国公共安全:学术版, 2015(11):45-50.
作者姓名:朱立 出生年月:1970年3月 学历:硕士