一般的互联网企业,Python和Java结合起来处理大数据、机器学习的流程?

理由
举报 取消

如果在公司里,这属于两个工种:算法工程师、Hadoop工程师。那么请描述这两个工作岗位的员工是怎么合作的?工作流程是怎样的?

2018年1月8日 8 条回复 1539 次浏览

发起人:bravez 初入职场

回复 ( 8 )

  1. Kenneth
    理由
    举报 取消

    算法工程师只是把hadoop当成工作工具之一,hadoop工程师则是专职于hadoop平台的开发及维护。

    算法工程师不一定要会java,hadoop不还有streaming模式可以跑别的语言吗?不过多学一门语言不会有什么坏处,反正最多也就一周的事吧。

  2. 花京华
    理由
    举报 取消

    一个是数据平台,主要从事平台搭建和运维。另一个是建模,主要是用算法解决业务问题

  3. 自由之翼
    理由
    举报 取消

    背景:互联网旅游公司,无线部门Java开发

    大数据处于起步阶段,目前主要是收集用户行为数据。

    ==========================================

    已经做到的

    前端

    页面上打点。在几乎所有页面加入了统计的Js代码,调用第三方API记录行为。

    方法很原始,实施比较容易而且相对灵活,但是增加浏览器渲染的负担。

    客户端

    和前端方法类似,也是打点,不过换成了iOS或Android的SDK。

    然后BI和数据分析可以到平台上查看数据,据说不是很准确。

    后台

    Logstash+ElasticSearch+Kibana

    把nginx某个域的访问log通过Logstash发送,索引在ElasticSearch里面,在Kibana里面查询。

    比较成熟的开源项目,也不需要代码开发,把配置和规则做好就行。

    Logstash+storm+redis

    Logstash发送日志到消息队列(httpsqs,rabbitmq等等),用storm处理数据流,把结果存在redis里。

    目前做了IP地区的聚类,接口健康状况监测。如果扩展集群规模,可以做更多事情。

    ==========================================

    准备要做的

    (目前好像和机器学习还没发生关系T_T)

    业务上很希望做一个推荐系统,能识别用户特征,针对性的推旅游产品。

    (哪是你想的那么容易啊~~~)

    然而我并不是数据开发,也只能YY一下了

    产品标签

    前期人工维护产品的标签库,后期如果用户评论上来之后,做个NLP识别语义自动打标签。

    用户画像

    可以的话买一些用户画像的数据,和注册用户关联上。然后拿用户行为去修正画像。记录每个用户对每类产品的兴趣值。(貌似是叫稀疏矩阵吧)

    精准推荐

    搜索的时候,如果是精确搜索,那么直接查索引。如果是模糊搜索,可以加上用户画像数据,对结果协同过滤。

    客户端推送,根据用户购买过,收藏过,评论过的记录,推荐相似度高的产品。

    ==========================================

    暂时就想到这么多了,抛砖引玉

  4. Reid Chan
    理由
    举报 取消

    几位知友那么执着的邀我…

    还是一名学生啊 校招还被刷啊(有老板看上我可以私信 能力包你不后悔

    Hadoop就是数据平台和算法就是数据应用

    前者提供数据服务 后者挖掘数据潜能制造利润

    挺赞同楼上马知友的说法 贴切

    当然实际工作细节差蛮多的

    前者计算机基础要很硬朗 后者数学算法数据敏感要很溜

  5. Guoyu Hao
    理由
    举报 取消

    说说我接触到的大数据收集处理的流程,与语言无关。一般包含数据采集,数据清理,数据计算,结果分析,反馈几个部分。

    数据采集说白了就是记log,对整个service的各个部分尽可能详细的记log,包括前段后端。当然log不是乱记的,可以设计结构化的log方便后续处理,也可以用非结构化的log使用起来灵活。更重要的是考虑log之间的联系,因为做数据分析的时候往往要结合多个模块的log共同分析,如果模块间的log无法互相关联就意义不大。

    数据清理就是留下有用的部分,过滤掉重复,错误的信息。

    数据计算的部分如果是做离线分析可以采用Hadoop,如果是实时分析则会用Storm之类。当然新技术总是在不断出现,目前Spark就越来越流行了,在需要机器学习的算法做计算时,Spark上的MLLib很好用。

    数据计算的结果往往还需要展现出来方便做商业方面的分析。除非整个流程已经被验证,只要自动运行无须人工干预。有比较流行的BI解决方案比如Tableau可以做很好的可视化。

    最后,分析的结果会转化成一些action反馈到流程中去,比如需要增加log,或者调整算法,也可能是根据计算结果要服务于客户(比如做私人定制化推荐)。

    于是整个流程就在迭代中运行。

  6. 马鹏玮
    理由
    举报 取消

    hadoop工程师一般定义为数据平台组,负责hadoop、spark等大数据处理框架的搭建、维护、优化,偏架构;

    各业务线的数据一般都是先打本地日志,然后灌倒hdfs里面,用作后面分析使用;

    算法工程师就需要去跑hadoop程序,从相应日志拿数据,拿完数据之后就是训练模型,流量测试,效果评估了(其实后面这几样也可以独立出来叫数据分析岗)。

    通俗点就是hadoop工程师负责盖个厨房,从别的地方买菜放到厨房,并且负责厨房安保和厨具升级,算法的人就是炒菜了。

  7. qiang Xu
    理由
    举报 取消

    现在该用spark了 写起来要比mapred爽歪歪。模型部分还是用mpi 写得

  8. 厨房仔
    理由
    举报 取消

    感觉大数据的人对语言不需要多精通,都是什么开源项目好用用什么呗。

我来回答

Captcha 点击图片更换验证码