大数据需要学什么?(一)语言篇

article/2025/10/20 15:14:47

大概两年前写过同样标题的一篇文章,对于这个问题感兴趣的人不少,后台收到不少同学的提问,所以准备细致地解答一下这些问题,希望能解决掉大家90%的疑问。下次再看到相关的提问我会理直气壮地把这篇文章的链接甩你脸上。但是可能又会有同学有疑问了,那剩下10%的疑问怎么办?加我微信问我哈哈。

言归正传,这一篇讲得是语言,对于新手来说,老是会有类似这样的问题,“做大数据需要学Java吗?”“不会Java可以吗”“需要学到什么程度”…我的回答是“需要!”,“不可以”,“精通”。当然对于一个新手来说让你精通Java是不可能的,写Java没个十年半载真的不敢说精通,但是你得走在通往“精通”的这条路上,精通程度和你拿到的钱是成正比的。

其实我想表达的是,不要有侥幸心理,不要觉得大数据就是搭搭环境,用用组件,大数据是正儿八经需要写代码做开发的,而且对代码能力的要求是比较高的,为什么这么说,因为大数据生态圈有很多优秀的开源组件,如果你的Java是半吊子的水平那我可以很明确地说,你能看得懂的代码可能都不超过100行。不信的话可以找个开源项目看看。关于捣鼓源码的重要性以及如何入手,后面我还会写一篇敬请期待。

Java可以说是大数据开发的第一语言,至少当前还是的,虽然垃圾回收的问题经常被大家诟病,但是有庞大的生态圈在呢,一时半会都还会是Java的天下。“Java要学到什么程度?”JavaSE必须掌握,JVM,多线程之类的都是基础,面试必问系列;JavaEE必须熟悉,丢个Java web项目给你,不求你把底层了解地多么透彻,但是必须得会写,因为大数据开发实际工作中少不了写接口。

SQL。如果说有一门语言可能会撼动Java一哥的位置的话,那绝对是SQL,虽然SQL和Java都算不上是一个层面上的语言,但是它太重要了,太多人的SQL写得太渣了,太多人写SQL的时候不考虑底层优化了,要重视呀兄弟们,不是增删查改就完事了的。有小伙伴问过要怎么提升写SQL的能力?孰能生巧,多写,多了解底层原理,多思考优化的方案。

Scala要学到什么程度?语法得懂,除了基本的,还有什么隐式转换,什么柯里化,什么闭包等等。学Scala最大的目的就是写Spark,Spark在大数据生态圈的存在感太强了,学习一门语言最好的方式就是实践,多写写Spark相关的项目,或者去看看Spark 的源码。什么?缺项目? 又来了 。

shell也是必不可少的,大数据开发其实一般都会承担起大数据集群的运维工作,说到运维,shell的重要性应该不用我多说了吧。

语言是程序员的兵器,兵器肯定是越锋利越好,种类越多越好,弓箭,刀,剑,盾,都有它们各自使用的场景。程序员不要有侥幸心理,不要得过且过,对于技术来说要知其然且知其所以然,如果你还达不到这个地步,那一定要走在这个方向上。


http://chatgpt.dhexx.cn/article/gWilu8U2.shtml

相关文章

读懂人工智能、机器学习、深度学习、大数据,自然语言处理……

从机器学习谈起 在本篇文章中,我将对机器学习做个概要的介绍。本文的目的是能让即便完全不了解机器学习的人也能了解机器学习,并且上手相关的实践。这篇文档也算是EasyPR开发的番外篇,从这里开始,必须对机器学习了解才能进一步介绍…

大数据_MySQL之DQL(数据查询语言)

目录 引言 一、MySQL概念、常见指令函数 1. MySQL 1.1.MySQL概念 1.2.MySQL的优点 1.3.MySQL服务的启动和停止 1.4.MySQL服务的登录和退出 1.5.MySqL的常见命令 2. 常见函数: 2.1.函数概念 2.2.常见函数分类(单行函数) 2.3.常见函…

大数据开发语言Scala(一)——scala入门

累了,基础配置不想写了,直接抄了→Scala的环境搭建 这里需要注意的是,创建新项目时,不要用默认的Class类,用Object,原因看→scala中的object为什么可以直接运行 一、Scala简介 1.1 图解Scala和Java的关系 1…

10个最佳的大数据处理编程语言

在巨大的数据集中进行筛选的最好工具是什么?通过和数据骇客的交流,我们知道了他们用于硬核数据分析最喜欢的语言和工具包。 R语言 在这些语言名单中,如果R语言排第二,那就没其他能排第一。自1997年以来,作为昂贵的统计软件,如Matlab和SAS的免费替代品,它渐渐风靡全球。…

十分钟带汝入门大数据开发语言Scala

大家好,我是百思不得小赵。 创作时间:2022 年 6 月 7 日 博客主页: 🔍点此进入博客主页 —— 新时代的农民工 🙊 —— 换一种思维逻辑去看待这个世界 👀 今天是加入CSDN的第1193天。觉得有帮助麻烦&#x1…

学习大数据需要什么语言基础

Python易学,人人都可以掌握,如果零基础入门数据开发行业的小伙伴,可以从Python语言入手。 Python语言简单易懂,适合零基础入门,在编程语言排名上升最快,能完成数据挖掘、机器学习、实时计算在内的各种大数…

大数据分析学习哪些编程语言

大数据分析已成为21世纪最受欢迎的技术之一。由于行业对大数据分析家的需求很高,因此需要具有所需技能的人员才能精通该领域。除了数学技能外,还需要编程专业知识。但是,在获得专业知识之前,有抱负的大数据分析家必须能够对工作所…

大数据处理需要用到的编程语言开发语言

你有一个大数据项目,你知道问题领域(problem domain),也知道使用什么基础设施,甚至可能已决定使用哪种框架来处理所有这些数据,但是有一个决定迟迟未能做出:我该选择哪种语言?&#…

大数据常用十种开发语言

随着大数据热潮持续延烧,几乎每个产业都有如洪水般倾泻的信息,面对上万笔的顾客浏览纪录、购买行为数据,如果要用 Excel 来进行数据处理真是太不切实际了,Excel 相较于其他统计软件的功能已相去甚远;但如果只会操作统计软件而不会…

大数据开发都需要掌握哪些编程语言

当前正处在大数据时代背景下,大数据技术目前也正处在落地应用的初期,未来大数据的发展空间还是比较大的,所以学习大数据相关技术是个不错的选择。 大数据编程语言的选择要根据具体的工作岗位来进行,目前大数据领域的工作岗位包括大数据平台研发、大数据应用开发、大数据分…

linux卸载自带java JDK,安装配置java jdk环境

一、卸载 openjdk 1、查看 java 版本时,显示已经安装了 openjdk,需要卸载 [rootxxx ~]# java -version openjdk version "1.8.0_292" OpenJDK Runtime Environment (build 1.8.0_292-b10) OpenJDK 64-Bit Server VM (build 25.292-b10, mixe…

Java 线程安全与锁

多线程内存模型 线程私有栈内存 每个线程 私有的内存区域进程公有堆内存 同一个进程 共有的内存区域 为什么会有线程安全问题? 多个线程同时具有对同一资源的操作权限,又发生了同时对该资源进行读取、写入的情况,那么就会出现重复操作的情…

java线程和锁

锁,是计算机系统中非常常见的技术,实现线程对资源的独占,防止对资源的并发读写造成错误,本文通过从线程,线程状态,到java提供的锁基础,基础的复盘一下线程和锁线程 计算机系统中,经…

Java线程里的14种锁

参考资料: 不可不说的Java“锁”事 java多线程的15种锁 以下内容是参考上面两片文章写出的粗略总结, 想要细究可以看上面两位大佬写的文章, 由于是参考着写的, 所以有很多地方相同, 如果有侵权或不妥的地方还请联系删除. 一. 线程是否同步资源? 1. 悲观锁 : 同步 每次拿数…

Java多线程 各种锁(一篇全搞懂)

Java多线程 锁 文章目录 Java多线程 锁1、乐观锁与悲观锁2、公平锁与非公平锁3、可重入锁与不可重入锁4、独享锁与共享锁5、自旋锁 VS 适应性自旋锁6、无锁 、 偏向锁、量级锁 和 重量级锁(难点) 1、乐观锁与悲观锁 (1)悲观锁 对…

Java多线程编程(三)——线程锁

卖票案例 同步代码块解决数据安全问题 同步方法解决数据安全问题 同步方法的格式: 同步方法和同步方法块的区别: 同步静态方法 Lock锁 卖票案例 某电影院目前正在上映国产大片,共有30张票,而它有3个窗口卖票,请…

浅析Java 多线程中的锁

前言 随着互联网技术的快速发展,多线程编程已经成为了现今编程领域中必不可少的知识点之一。Java 是一种广泛使用的编程语言,也是一些底层应用程序和高并发应用程序的首选语言。而 Java 提供的多线程编程机制和相关的锁机制,则成为了 Java 开…

【Java多线程进阶】常见的锁策略

前言 众所周知,拳击运动员是要分等级(轻量级、重量级等等)来参加比赛的,在 Java 多线程中 锁(synchronized) 也会根据锁的竞争程度来升级为相关“高等级”锁,为了更好的理解 synchronized 加锁机…

Java多线程下——各类锁的详解

这里写目录标题 各类锁的详解常见的锁策略乐观锁 vs 悲观锁读写锁重量级锁 vs 轻量级锁自旋锁(Spin Lock)公平锁 vs 非公平锁可重入锁 vs 不可重入锁 CASSynchronized 原理偏向锁锁消除锁粗化 Callable 接口ReentrantLock线程池ExecutorService 和 Execu…

Java中的线程和锁机制

线程池 为什么使用线程池?线程池执行原理?线程池参数有哪些?线程池大小怎么设置?线程池的类型有哪些?适用场景? 进程线程 线程的生命周期讲一下线程中断?创建线程有哪几种方式?什么是…