大数据工程师 网络工程师接单平台
其实大数据工程师的问题并不复杂,但是又很多的朋友都不太了解网络工程师接单平台,因此呢,今天小编就来为大家分享大数据工程师的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
大数据工程师是做什么的
总结一句话就是写 SQL(很多入职一两年的大数据工程师主要的工作就是写 SQL)
还有其他的
2为集群搭大数据环境(一般公司招大数据工程师环境都已经搭好了,公司内部会有现成的大数据平台,但我这边会私下搞一套测试环境,毕竟公司内部的大数据系统权限限制很多,严重影响开发效率)
3维护大数据平台(这个应该是每个大数据工程师都做过的工作,或多或少会承担“运维”的工作)
4数据迁移(有部分公司需要把数据从传统的数据库 Oracle、MySQL等数据迁移到大数据集群中,这个是比较繁琐的工作,吃力不讨好)
5应用迁移(有部分公司需要把应用从传统的数据库 Oracle、MySQL等数据库的存储过程程序或者SQL脚本迁移到大数据平台上,这个过程也是非常繁琐的工作,无聊,高度重复且麻烦,吃力不讨好)
6数据采集(采集日志数据、文件数据、接口数据,这个涉及到各种格式的转换,一般用得比较多的是 Flume和 Logstash)
7数据处理
7.1离线数据处理(这个一般就是写写 SQL然后扔到 Hive中跑,其实和第一点有点重复了)
7.2实时数据处理(这个涉及到消息队列,Kafka,Spark,Flink这些,组件,一般就是 Flume采集到数据发给 Kafka然后 Spark消费 Kafka的数据进行处理)
8数据可视化(这个我司是用 Spring Boot连接后台数据与前端,前端用自己魔改的 echarts)
9大数据平台开发(偏Java方向的,大概就是把开源的组件整合起来整成一个可用的大数据平台这样,常见的是各种难用的 PaaS平台)
10数据中台开发(中台需要支持接入各种数据源,把各种数据源清洗转换为可用的数据,然后再基于原始数据搭建起宽表层,一般为了节省开发成本和服务器资源,都是基于宽表层查询出业务数据)
11搭建数据仓库(这里的数据仓库的搭建不是指 Hive,Hive是搭建数仓的工具,数仓搭建一般会分为三层 ODS、DW、DM层,其中DW是最重要的,它又可以分为DWD,DWM,DWS,这个层级只是逻辑上的概念,类似于把表名按照层级区分开来的操作,分层的目的是防止开发数据应用的时候直接访问底层数据,可以减少资源,注意,减少资源开销是减少内存和 CPU的开销,分层后磁盘占用会大大增加,磁盘不值钱所以没什么关系,分层可以使数据表的逻辑更加清晰,方便进一步的开发操作,如果分层没有做好会导致逻辑混乱,新来的员工难以接手业务,提高公司的运营成本,还有这个建数仓也分为建离线和实时的)
总之就是离不开写 SQL...
大数据工程师的工作内容是什么
1、数据采集:
业务系统的埋点代码时刻会产生一些分散的原始日志,可以用Flume监控接收这些分散的日志,实现分散日志的聚合,即采集。
2、数据清洗:
一些字段可能会有异常取值,即脏数据。为了保证数据下游的"数据分析统计"能拿到比较高质量的数据,需要对这些记录进行过滤或者字段数据回填。
一些日志的字段信息可能是多余的,下游不需要使用到这些字段做分析,同时也为了节省存储开销,需要删除这些多余的字段信息。
一些日志的字段信息可能包含用户敏感信息,需要做脱敏处理。如用户姓名只保留姓,名字用'*'字符替换。
3、数据存储:
清洗后的数据可以落地入到数据仓库(Hive),供下游做离线分析。如果下游的"数据分析统计"对实时性要求比较高,则可以把日志记录入到kafka。
4、数据分析统计:
数据分析是数据流的下游,消费来自上游的数据。其实就是从日志记录里头统计出各种各样的报表数据,简单的报表统计可以用sql在kylin或者hive统计,复杂的报表就需要在代码层面用Spark、Storm做统计分析。一些公司好像会有个叫BI的岗位是专门做这一块的。
5、数据可视化:
用数据表格、数据图等直观的形式展示上游"数据分析统计"的数据。一般公司的某些决策会参考这些图表里头的数据。
大数据工程师主要做什么
当前大数据平台开发岗位的附加值还是比较高的,大数据平台开发岗位往往集中在大型互联网企业,随着云计算逐渐从IaaS向PaaS过渡,大数据平台开发也会基于行业特点来开发针对性比较强的PaaS平台,这是整合行业资源并搭建技术生态的一个关键。搭建PaaS平台不仅需要掌握大数据知识,同时还需要掌握云计算知识,实际上大数据和云计算本身就有比较紧密的联系,二者在技术体系结构上都是以分布式存储和分布式计算为基础,只不过关注点不同而已。
大数据运维工程师以搭建大数据平台为主,虽然这部分岗位的门槛相对比较低,但是需要学习的内容还是比较多的,而且内容也比较杂,网络知识、数据库管理知识、操作系统(Linux)知识、大数据平台(含开源和商用平台)知识都需要掌握一些,对于实践操作的要求会比较高。
最后,当前大数据工程师往往并不包含专业的数据分析岗位,一般数据分析岗位都会单独列出来,这部分岗位涉及到算法岗、开发岗(实现)和数据呈现岗等,数据分析岗位对于从业者的数学基础要求比较高,同时还需要掌握大量的数据分析工具,当然也离不开Python、Sql等知识。
如果你还想了解更多这方面的信息,记得收藏关注本站。