Docker中Spring boot+VueJS+MongoDB的前后端分离哲学摔跤
此文献给对数据有热情,想长期从事此行业的年轻人,希望对你们有所启发,并快速调整思路和方向,让自己的职业生涯有更好的发展。
根据数据应用的不同阶段,本文将从数据底层到最后应用,来谈谈那些数据人的必备技能。
1、大数据平台
目前很火,数据源头,各种炫酷新技术,搭建Hadoop、Hive、Spark、Kylin、Druid、Beam~,前提是你要懂Java,很多平台都是用Java开发的。
目前很多企业都把数据采集下来了,对于传统的业务数据,用传统的数据是完全够用的,可是对于用户行为和点击行为这些数据或者很多非结构化的数据,文本、图像和文本类的,由于数据量太大,很多公司都不知道怎么进行存储。
在这里还是要推荐下我自己建的大数据学习群:199427210,群里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据软件开发相关的),包括我自己整理的一份最新的大数据进阶资料和高级开发教程,欢迎进阶中和进想深入大数据的小伙伴加入。
这里面要解决的是实时、近实时和离线的大数据框架如何搭建,各数据流之间如何耦合和解耦,如何进行容灾、平台稳定、可用是需要重点考虑的。
我的感觉是:最近两三年中,这块人才还是很稀缺的,因为大数据概念炒作的这么厉害,很多企业都被忽悠说,我们也来开始进入大数据行业吧。进入的前提之一就是需要把数据存储下来,特别是很多用户行为方面的数据,对于业务的提升比较明显的,如果你能很好的刻画用户,那么对你的产品设计、市场营销、开发市场都是有帮助的。现阶段,很多公司都要做第一步:存储更多的数据。这也是这块人员流动性比较高的原因,都被高薪挖走了。
这块工作最被吐槽的一点就是:Hive速度好慢,SQL查询好慢,集群怎么又挂掉了,hadoop版本升级后,怎么数据跑出来不对了等等。
如果想在这块做的很好,还需要有整个系统架构的设计能力、比较的强的抗压能力和解决问题的能力、资源收集的能力,可以打入开源社区,这样就可以随时follow最新的潮流和技术。
2、数据可视化
这是个很炫的工作,最好是能懂点前端,比如js。数据可视化人员需要有很好的分析思维,不能为了炫技而忽视对业务的帮助程度。因为我对这个岗位客串的不多,所以没有特别深入的感悟,不过我觉得这个岗位需要有分析的能力,才能把可视化做好。
另外一方面来说,做数据应用的人都应该懂点数据可视化,要知道观点表达的素材顺序是:图片>表格>文字,一个能够用图片来阐述的机会千万别用文字来描述,因为这样更易于让别人理解。要知道,给大领导讲解事情的时候,需要把大领导设想成是个“数据白痴”,这样才能把一件事情说的比较生动。
3、数据分析师
对于数据分析师的定位:个人认为,成为优秀的数据分析师是非常难的,现在市面上也没有多少优秀的分析师。数据分析师的技能要求,除了会数据分析、提炼结论、洞察数据背后的原因之外,还需要了解业务,懂算法。
只有这样,当面对一个业务问题时,数据分析师们才可以针对问题抽丝剥茧,层层递进去解决问题,再根据定位的问题进行策略的应对,比如是先做上策略进行测试还是应用算法进行优化,用算法用在哪个场景上,能不能用算法来解决问题。
一个优秀的数据分析师,是个精通业务和算法的全能数据科学家,不是那个只会听从业务的需求而进行拉数据、做报表、只做分析的闲杂人等。我们都说分析要给出结论,优秀分析师的结论就是一个能解决问题的一揽子策略和应对措施,同时很多需求是分析师去主动发现并通过数据来挖掘出来的。
>>> res = Students.objects.order_by(Lower('name'))
>>> print(res.query)
SELECT `teacher_students`www.zhenghongyule.cn/ .`id`,www.jiahuayulpt.com `teacher_students`.`name`, `teacher_students`.`age`, `teacher_students`.`sex`, `teacher_students`.`qq`, `teacher_students`.`phone`, `teacher_students`.`c_time` FROM `teacher_students` ORDER BY LOWER(`teacher_students`.`name`) ASC
#LOWER是数据库本身的功能,它把字段的内容(`www.tianjuyuLe.cn teacher_students`.`name`) 变成大写排序。
>>> res
<QuerySet [<Students: www.yongshiyule178.com/ ABC-5>, <www.yingka178.com Students: abc-6>, <Students: XiaoHong-16>, <Students: 刘一-19>, <Students: 孙奇-29>, <Students: 小明-16>, <Students: 张三-23>, <www.michenggw.com Students: 李思-17>, <Students: 王五ents: 赵柳-22>, <Students: 赵柳-19>]>
复制代码
倒序
复制代码
>>> res = Students.objects.order_by(Lower('name').desc())
>>> print(res.query)
SELECT `teacher_students`.`id`,www.tiaotiaoylzc.com `teacher_students`.`name`, `teacher_students`.`age`, `teacher_students`.`sex`, `teacher_students`www.dfgjpt.com.`qq`, `teacher_students`.`phone`, `teacher_students`.`c_time` FROM `teacher_students` ORDER BY LOWER(`teacher_students`.`name`) DESC
>>> res
<QuerySet [<Students: 赵柳-22>, <Students: 赵柳-19>, <Students: 王五-24>, <Students: 李思-17>, <Students: 张三-23>, <Students: 小明-16>, <Students: 孙奇-29>, <Students: 刘一-19>, <www.yongshi123.cn Students: Xiaents: ABC-5>, <Students: abc-6>]>
复制代码
切片
等同于MySQL里面的LIMIT,OFFSET,数量量和偏移量,和python的列表切片用法相似,不支持负索引,数量量大时不用步长
***切片过后,不再支持附加的过滤条件与排序,条件需要放在切片之前。
复制代码
>>>res = Students.objects.all()[:5]
>>>print(res.query)
SELECT `teacher_students`.`id`, `teacher_students`.`name`, `teacher_students`.`age`, `teacher_students`.`sex`, `teacher_students`.`qq`, `teacher_students`.`phone`, `teacher_students`.`c_time` FROM `teacher_students` LIMIT 5
>>>res = Students.objects.all()[2:6]
>>>print(res.query) #打印出他的sql语句
SELECT `teacher_students`.`id`, `teacher_students`.`name`, `teacher_students`.`age`, `teacher_students`.`sex`, `teacher_students`.`qq`, `teacher_students`.`phone`, `teacher_students`.`c_time` FROM `teacher_students` LIMIT 4 OFFSET 2
>>>res = Students.objects.all()[::2]
>>>res
[<Students: 小明-16>, <Students: 赵柳-22>, <Students: 赵柳-19>, <Students: abc-6>]
从上述描述中,可以看到对数据分析师的要求是:会写sql拉数据,精通业务、会数据洞察、精通算法,主动性强,要求还是很高的。
4、数据挖掘/算法
对于这个岗位的技能要求来说,没有要求你一定要从零开始实现所有的算法,现在有很多现成的算法包进行调用。最基本的要求是,你要知道每个场景会用到哪个算法,比如分类场景,常用的分类算法就有LR/RF/Xgboost/ET等等,此外,你还要知道每个算法的有效优化参数是什么、模型效果不好的时候怎么优化。还需要有算法的实现能力,语言方面可以用Scala/python/R/Java等。我们常说:工具不重要,重要的是你玩工具,不是工具玩你。
另外针对有监督式学习算法,算法工程师最好有很好的业务sense,这样在feature设计的时候才能更有针对性,设计的feature才有可能有很好的先验性。
以上说了这么多,唠叨了这么多,其实核心就是:如何用数据创造价值,如果你没有用数据创造价值的能力,那么就只能等着被数据淹没,被数据拍死在职场上,早早到达职业的天花板。
Docker中Spring boot+VueJS+MongoDB的前后端分离哲学摔跤的更多相关文章
- Spring Boot + Vue + Shiro 实现前后端分离、权限控制
本文总结自实习中对项目的重构.原先项目采用Springboot+freemarker模版,开发过程中觉得前端逻辑写的实在恶心,后端Controller层还必须返回Freemarker模版的ModelA ...
- 企业快速开发平台Spring Cloud+Spring Boot+Mybatis+ElementUI 实现前后端分离
鸿鹄云架构一系统管理平台 鸿鹄云架构[系统管理平台]使用J2EE技术来实施,是一个大型分布式的面向服务的JavaEE体系快速研发平台,基于模块化.服务化.原子化.热部署的设计思想,使用成熟领先的无商业 ...
- GraphQL + React Apollo + React Hook + Express + Mongodb 大型前后端分离项目实战之后端(19 个视频)
GraphQL + React Apollo + React Hook + Express + Mongodb 大型前后端分离项目实战之后端(19 个视频) GraphQL + React Apoll ...
- 【SpringSecurity系列3】基于Spring Webflux集成SpringSecurity实现前后端分离无状态Rest API的权限控制
源码传送门: https://github.com/ningzuoxin/zxning-springsecurity-demos/tree/master/02-springsecurity-state ...
- 巨蟒python全栈开发flask8 MongoDB回顾 前后端分离之H5&pycharm&夜神
1.MongoDB回顾 .启动 mongod - 改变data/db位置: --dbpath D:\data\db mongod --install 安装windows系统服务 mongod --re ...
- vuejs应用开发前后端分离
我们知道,无论是web应用还是app应用都有一个前后端,前端主要负责界面交互,后端负责数据持久化.在正规公司中一般是由两个团队来分别完成前端和后端的开发,在小公司或者个人开发的项目中,前后端很有可能是 ...
- vue 项目中使用mock假数据实现前后端分离
也是查了很多的资料,整理出来.实现了前后端的分离,用到的技术vue-cli,webpack,node,json-server.首先全局安装json-server cnpm i json-server ...
- 七个开源的 Spring Boot 前后端分离项目,一定要收藏!
前后端分离已经在慢慢走进各公司的技术栈,根据松哥了解到的消息,不少公司都已经切换到这个技术栈上面了.即使贵司目前没有切换到这个技术栈上面,松哥也非常建议大家学习一下前后端分离开发,以免在公司干了两三年 ...
- 喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了
折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...
随机推荐
- webSphere-Eclipse中配置was的远程调试
目前我们项目中使用的应用服务器多是WebSphere,一直苦于无法进行调试,今天在网上看到一篇,原文是 http://www.cnblogs.com/newstar/archive/2010/04/1 ...
- springboot 定制错误页面
项目中经常遇到的异常情况 400-Bad Request 401-Unauthorized If the request already included Authorization credenti ...
- c# C#获取屏幕鼠标坐标点颜色
[DllImport("user32.dll")] private static extern IntPtr GetDC(IntPtr hwnd); [DllImport(&quo ...
- 20155328 《网络攻防》 实验一:PC平台逆向破解(5)M
20155328 <网络攻防> 实验一:PC平台逆向破解(5)M 实践目标 实践对象:linux可执行文件pwn1. 正常执行时,main调用foo函数,foo函数会简单回显任何用户输入的 ...
- HW 2017 12 17可禾大佬神题
好不容易搞来的题目,不写一写怎么行呢. 不过难度真心不高(一小时K掉),都是老题+暴力题,没有欧洲玄学. 再说一句,这试卷是叶可禾出的吧. T1 好老的题目,看到有多组数据我还怕了,以为有更流弊的算法 ...
- debian系统下改语言设置
debian系统下改语言设置 安装debian 的时候选择了中文zh_CN_UTF-8,然后进系统后想换成en_US_UTF-8 可以使用一下命令选择:找到需要的语言 确定即可 dpkg-reconf ...
- JS基础内容小结(event 鼠标键盘事件)(三)
var ev=ev||event 兼容性处理 得到焦点为 onfocus 失去焦点 onblur return false能阻止部分函数的执行 obj.select 选择指定元素里的文本内容 ———— ...
- PAT甲题题解-1014. Waiting in Line (30)-模拟,优先级队列
题意:n个窗口,每个窗口可以排m人.有k为顾客需要办理业务,给出了每个客户的办理业务时间.银行在8点开始服务,如果窗口都排满了,客户就得在黄线外等候.如果有一个窗口用户服务结束,黄线外的客户就进来一个 ...
- SDN开源项目以及组织机构
SDN开源项目以及组织机构 以上内容均摘自网络 如有侵权,请转告笔者,立即删除 两大组织 ONF (Open Networking Foundation) Google.Facebook.Micros ...
- msgpack生成lib,vs新建lib等
记录导师交给的任务 新建一个c++项目,运行老师的msgpack的cpp文件,然后会生成相应的lib,我做的东西需要调用到它(这是老师改写后的msgpack的lib) 我的任务是建一个静态库,将客户端 ...