{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

学习大数据必须要学SQL吗?为什么?

YuqiYuqi 回答0 收藏1
收藏问题

10条回答

wfc_666

wfc_666

回答于2022-06-28 13:43

虽然目前大数据的细分岗位比较多,但是主要集中在五个方面,分别是底层平台研发、大数据应用开发、大数据分析、大数据运维和大数据教育。除了底层平台研发往往需要中高端人才以外,其他岗位的知识结构并没有太多的基础性要求,下面对这几大方面的知识结构做一个具体的介绍。

大数据应用开发岗位需要的知识结构包括大数据平台体系结构、编程语言、数据库(NoSQL)、算法设计等内容,可见在大数据应用开发岗位需要掌握SQL,NoSQL的意思是Not only SQL(不仅仅是SQL),不是说不需要SQL。对于应用程序开发人员来说,掌握SQL是基本的要求。

大数据分析岗位的知识结构包括大数据平台体系结构、编程语言、数据库、算法设计、算法实现、数据呈现等内容,大数据分析注重算法的设计与实现,而数据呈现则往往需要通过SQL语言完成数据的提取(BI),所以对于大数据分析人员来说是必须掌握SQL语言的,而且需要对SQL语言非常熟悉。

大数据运维的知识结构包括大数据平台的搭建、组件部署、编程语言、平台维护、网络维护等内容,对于运维人员来说掌握SQL语言也是一个基本的要求,因为大部分运维工作都需要对数据进行操作,通过Shell(Python)来编写运维脚本是一个比较常见的做法。

大数据教育则是为大数据行业提供人才培养的服务,大数据教育更是涉及到以上各个岗位的知识结构,当然需要掌握SQL语言了。

总之,目前大部分大数据岗位都是需要具备SQL基础的,所以在学习大数据之前往往都先学习一下SQL和编程语言(Java、Python、Scala、R等)。

大数据是我的主要研究方向之一,目前也在带大数据方向的研究生,我会陆续在头条写一些关于大数据方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有大数据方面的问题,也可以咨询我,谢谢!

评论0 赞同0
  •  加载中...
陈伟

陈伟

回答于2022-06-28 13:43

对于数据研发(ETL)同学或者数据分析(BI)同学来说,SQL语言是必须要会的,因为你需要对大量数据进行加工处理,得到自己想要结果数据。

对于大数据平台开发或者大数据组件开发而言,会不会SQL都可以,平时主要使用Java语言来进行工程开发,对于SQL语言的使用,并不是太多,除了在查询关系型数据库中数据时,会进行使用。

什么是SQL

SQL,中文即结构化查询语言,主要用于对数据的查询、更新、删除等操作。SQL是一种标准化语言,旨在降低开发同学的入门门槛,快速对数据进行处理。一般对于传统的关系型数据库用的比较多,比如查询Mysql、Oracle数据库中的数据等。

目前不仅仅传统数据库支持SQL,其实很多大数据组件也渐渐开始支持SQL,尤其是在数据仓库方面,比如Hive,Spark SQL,Flink SQL,Druid等等。支持SQL语言最直接的一个目的,就是提高开发效能。比如对于Flink组件,使用SQL你几分钟可能就将实时任务开发完成,但你如果使用其底层Java API进行开发,可能几天你都不一定能开发出来。

为什么数据研发或者数据分析需要学SQL

数据研发同学主要的工作就是对数据进行ETL,即对数据进行抽取(extract)、转换(transform)、加载到数据存储(load)。可以是对关系型数据库,也可以是对数据仓库的数据进行加工。为了保持数据处理标准统一,需要使用SQL语言来对数据任务进行开发。统一使用SQL有一个好处,就是使得数据研发同学不会对开发感到陌生。

数据分析同学由于需要在数据中发现商业价值的论点,所以需要经常对数据分析。而数据分析同学又不是专门的开发同学,精通开发,所以使用SQL语言,能够降低其处理数据的难度。现在的数据库以及其他数据仓库都支持SQL语言,数据分析同学想要在数据中找到自己的观点,必须要学习SQL语言的使用。

为什么大数据平台或者组件开发不用学SQL

大数据平台或者大数据组件开发,平时都主要使用Java或者C++语言开发。而SQL语言主要是在数据处理方面应用比较多,由于工作内容的侧重点不同,所以大数据平台或者组件开发可以不用学SQL,就能够直接上手开发。

当然,在日常的项目开发中,或多或少都会接触到数据库方面的使用,当更新或者查询数据库中的数据时,会使用到SQL语言,个人建议开发同学还是掌握一下SQL,在面试的时候也是一个加分项,毕竟SQL语言使用起来也不难。

总结

在大数据领域,是否一定要学习SQL,最主要的还是要看你日常工作的内容,如果你平常和数据接触比较多,主要就是对数据进行加工处理等,那么学习SQL语言你是跑不了的。但是,你平时主要工作就是使用Java进行开发,那学不学SQL对你没有任何影响。

个人建议每个开发同学还是要掌握一定的SQL使用,毕竟你不接触SQL,但你肯定会使用到数据库,对数据库的操作就必须使用SQL语言。技多不压身,反正SQL也不难。

我是Lake,专注大数据技术、互联网科技见解、程序员个人经验分享,如果我的问答对你有帮助的话,希望你能够点赞转发或者关注我,就是我持续分享在大数据方面的知识,非常感谢。

评论0 赞同0
  •  加载中...
Labradors

Labradors

回答于2022-06-28 13:43

我觉得学习大数据可以不学SQL,需要分布式计算用mr代替,不需要分布式计算用python也是可以的。但是这样处理数据会比较麻烦,可能平时一个任务用SQL几行代码就搞定了,但是换成mr或python可能要几百行都是有可能的。


如果要进大公司并且搞大数据,SQL肯定是必不可少的,因为SQL处理数据特别方便,公司相应的业务会用到,自己也不得不学。SQL语法并不难,多学一门语言并没有什么坏处,所谓技多不压身。

评论0 赞同0
  •  加载中...
GHOST_349178

GHOST_349178

回答于2022-06-28 13:43

sql是关系数据库的基础语言,是现在大数据平台用的数据库可不是这个,但是学习大数据还是非常有必要学习sql的。因为,一、大数据的来源很多是从既有数据库中提速的,这些数据库基本都是关系型数据库。只有熟知sql才能读懂,操作,整合语言的数据,并提速后重新存入大数据平台。二、关系数据库的架构,逻辑,操作是经典,学好它才能更好的领会数据库的奥妙,熟练掌握sql的查询,插入,删除,修改,并表,对了解数据的操作和分析本身就有很大的帮助。

评论0 赞同0
  •  加载中...
GHOST_349178

GHOST_349178

回答于2022-06-28 13:43

先上结论:

学习大数据,SQL是基础

一、数据库的SQL

SQL是数据库的基本查询语言,无论是做后端开发,还是做数据分析,机器学习或者数据挖掘,都需要熟练的掌握。

二、数据仓库的SQL

数据仓库是大数据时代存放大量数据的地方,如果熟悉HIVE的同学,会发现HIVE的数仓操作几乎和标准的SQL语言一致。所以一些mapreduce的基本操作都可以用SQL的语法来简单的代替了。


总之,SQL是一个很简单的语言,掌握他没有坏处,所以好好学习吧!


PS:本号作者目前是某大厂机器学习算法工程师,致力于全栈AI算法和业务场景落地,非常乐于在网上分享最新的AI知识,也经常开直播教同学AI算法和编程。感兴趣的同学可以关注本头条号,获得最新的干货!

评论0 赞同0
  •  加载中...
gaosboy

gaosboy

回答于2022-06-28 13:43

大数据涉及到很多方面,其中对编程和数据库是基础要求。

每一种编程都涉及到数据库,可以说编程和数据库是孪生一对出现的。

编程是你罗辑思维和应用的能力的直接体现,编程语言有很多,诸如JAVA,c/c++,Python,go,Javascript等等,掌握一门能熟练应用。

编程要和数据打交道,所以,数据库操作就是必须的了,包裹关系数据库和非关系数据库(可以对应为SQL和 NoSQL)。

SQL是关系数据库的结构化查询语言的缩写,而NoSQL意思是“Not only SQL”(不仅仅是SQL了)……

所以,搞大数据,没有应用SQL的能力,真是“未知其可也”。

评论0 赞同0
  •  加载中...
rubyshen

rubyshen

回答于2022-06-28 13:43

感谢邀请

背景

目前大数据行业异常火爆,这也导致越来越多的开发人员涌向,从岗位职责来划分的话,大数据开发可以分为大数据挖掘,大数据分析,平台开发,以及大数据运维等岗位。



技能要求

对于上述岗位要求所掌握的技能是不同的,比如大数据分析和大数据挖掘,就需要掌握爬虫的必要知识,Hadoop生态体系上的一系列操作。平台研发需要掌握平台开发语言,前端,以及必要的网络调优等技能。

学习大数据是必须要学习SQL的。SQL作为传统数据存储工具,无论如今的大数据开发工具如何优秀,如何便捷,他们相当一部分的构建思想是遵从SQL开发的一套规则和逻辑,比如Hadoop上的Hive,它的语法就是参考SQL语法。尽管现在各家都有一套自己的独立的生态体系,但如果要究其根源,很多都是复用现有技术,只是在此基础上做改良包装,这也就导致现在很多的开发人员会用工具,但不知道为什么要这样做。如果只是做一个只会用工具的程序员是远远不够的,我们还需要懂得如何更好的用,只有了解其原理才能熟练掌握并使用。


总结

其实SQL的学习时非常简单的,网上有很多的教程可供参考学习,只要我们稍加花费时间,就可以掌握其基础用法,大数据的学习是一个漫长的过程,中间不光涉及SQL,还涉及各种开发语言,各种编程思想,机器学习,AI等知识。这对大数据开发来说是一个挑战。


欢迎大家在评论区留言讨论,如需更多帮助,请私信关注,谢谢。

评论0 赞同0
  •  加载中...
junbaor

junbaor

回答于2022-06-28 13:43

学习数据查询原理

评论0 赞同0
  •  加载中...
Sanchi

Sanchi

回答于2022-06-28 13:43

谢谢大数据分析,必须要学SQL相关的命令和相关的学习,因为数据在量大的时候,如果想在海量的数据中提取以及进行操作的话,普通的其他数据库的操作方法,实际上与这个sql数据库的操作是一样的,应该说是大同小异,因此如果你要有学习大数据,就应该要学习sql数据库的命令和相关的课程。

评论0 赞同0
  •  加载中...
kevin

kevin

回答于2022-06-28 13:43

必须的基础之一

评论0 赞同0
  •  加载中...

相关问题

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<