什么是大数据开发?
大数据开发是使用程序语言和大数据技术框架,将与大数据相关的需求实现为一个系统、软件或模块的开发过程。
为了进一步明确这个概念,请注意以下几种情况:
1、不使用程序开发语言的,不属于大数据开发的范畴。例如用 Excel分析数据的过程。
2、功能需求与大数据无关的,不属于大数据开发的范畴。例如用一台服务器就可以承载所有功能的需求。
3、最终产品并非是一个系统、软件或模块的,不属于大数据开发的范畴。例如最终产品是一份数据分析报告,或使用 Spark Shell命令行完成的数据处理过程。
4、需求被明确前或需求被满足后的工作,不属于大数据开发的范畴。例如大数据平台已经按照需求开发完成,数据分析师利用平台中储存的数据进行算法研发。
值得注意的是,大数据开发是一个完整的系统性工程,应该用整体观念来看待,不能把其中的某项工作单独割裂出来进行界定。
例如,操作Linux Shell或使用图形界面来部署调试集群、査看日志等工作,虽然不符合上述定义,但却是整个系统性开发工作中不可分割的一部分,因此仍然在大数据开发工作的范畴之中。
另一方面,虽然我们试图尽可能清晰地界定大数据开发与其他工作之间的边界,但这个边界仍然是模糊的,需要在实际开发工作中灵活变通,如向 Hadoop集群中提交一个实现某种数椐挖掘功能的 MapReduce任务,即使该任务与整个平台的耦合性并不强,可以被割裂出来界定为数据挖掘工作,但若被界定为数据开发工作,也并没有明显的不妥。
大数据开发工程师的岗位要求:
1、本科以上学历,计算机相关专业,对数据处理、数据建模、数据分析等有深刻认识和实战经验;
2、熟悉Hive SQL语言,熟悉shell, python等脚本语言;
3、有hadoop、spark、flink等大数据平台的使用经验;
4、有数据仓库建设、商业数据分析、增长项目经验;
5、java/scala至少熟练使用一种;
6、熟练掌握Hadoop及Map-Reduce应用开发,熟练掌握HBase、Hive、Storm、spark等大数据开发工具;
7、熟悉至少一种实时计算引擎 Storm, Spark Streaming, Flink, 对hadoop生态其他组件有一定了解,比如 HBase, hadoop, Hive, Druid等。