ID:324936

淳·简·企鹅·海豹

高级大数据软件开发java

  • 公司信息:
  • 上海东方数据
  • 工作经验:
  • 5年
  • 兼职日薪:
  • 700元/8小时
  • 兼职时间:
  • 下班后
  • 周六
  • 周日
  • 可工作日远程
  • 所在区域:
  • 上海
  • 徐汇

技术能力

本人从事公司的大数据平台的搭建和维护,以及开发各种离线任务流。拥有丰富的数仓分层优化经验和复杂数据处理的经验。
技术栈:hadoop平台、spark离线开发(scala和Python)、flink实时开发、kafka操作、hbase操作、redis操作、hive离线运算、doris平台操作、熟悉springboot、springMVC开发、熟练使用Python爬取各大平台的网站的数据、使用自动化ui2组件爬取安卓app数据。熟练使用各种框架的sql,比如mysql、hive-sql、spark-sql、flink-sql等。熟练使用pandas库和pyspark处理临时数据,熟练操作linux平台,熟悉es的查询和各种聚合语句。

项目经验

1、票房数据爬取平台:
使用ui2组件从夜神模拟器上获取各种粒度的数据。根据粒度分成4个粒度的数据:日、月、年、季度。按照具体的业务需求进行聚合各个指标,比如聚合票房,场次,人次,场均人次比等指标。为了方便前端快速的调取数据,最后将数据退维成一张大宽表。然后使用sql拼接的方式通过springboot实现接口的调用。
2、报纸数据的爬取:
使用requeses模拟浏览器请求各大报商官网的报纸,然后将数据按照页面粒度和文章粒度存成两张表,通过数仓的清洗,清洗出指定的文章、标题、版号等指标。
3、分析报纸的数据:
使用lac对文章数据进行分析处理,分解出来多种类型的词。然后按照圈定的粒度比如:领导人、热词、文章类型,进行各种统计聚合。这个项目最大的难度还是运算速度和运算精度上的控制。因为公司并没有gpu供我们使用,我们只能使用cpu跑。我把逻辑嵌入到spark中,从而实现多机器多并发。为了解决内存溢出的问题,我将每个任务的处理数据量控制在1g以内,然后使用spark分亨多个rdd,最后一次执行。
4、相似度去重功能:
使用余弦值对大量数据进行相似度去重,整个流程中最难的是如何优化代码的执行效率。最原始的时间复杂度是n的n次幂。我提出的解决方案是使用增量的逻辑对新数据数据进行去重,使用全量的方式一次算好旧数据,为了实现在多台机器上实现多线程,且为了兼容Python语言下的向量处理机制,我选择使用pyspark作为整体的计算框架。最终的结果是,3个月的运行量优化到10几个小时跑好了,从而实现了实时显示效果。
5、开发任务执行功能:
为了更好的使用大数据集群来计算数据,我开发了一个远程调用机制,使用springboot自带的mvc框架进行restful接口数据沟通,将需要执行的代码保存到本地,并调用执行。目前正在升级功能,准备升级到k8s上执行。
6、还有很多,就写最近遇到的吧。

信用行为

  • 接单
    0
  • 评价
    0
  • 收藏
    0
微信扫码,建群沟通

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信接收人才推送

关注猿急送微信平台,接收实时人才推送

接收人才推送
联系聘用方端客服
联系聘用方端客服