class="toc">【个人主页】Francek Chen
【人生格言】征途漫漫,惟有奋斗!
【热门专栏】大数据技术基础 | 数据仓库与数据挖掘 | Python机器学习
【博客之星2024年度总评选】年度回望:我的博客之路与星光熠熠
前言
在 2024 年的这一年中,我沉浸在创作的海洋中,感受着技术与文字交织带来的无限魅力。每一次敲击键盘,都是对知识的提炼与分享,每一次点击发布,都是与世界的又一次深刻对话。回顾这一年的历程,心中充满了成长的喜悦与收获的满足。
从最初对技术的懵懂探索,到如今能够自信地在大数据领域发声,我经历了无数次的挑战与突破。在这过程中,我不仅加深了对技术的理解,更学会了如何以更加清晰、独特的笔触,将复杂的技术概念转化为易于理解的语言,与广大读者共享这份知识的盛宴。
在过去的一年里,我经历了许多的挑战和成长,本文主要是回顾我的个人成长历程,以及在创作和日常生活方面的突破,分享我是如何平衡个人生活与博客创作的经验。
一、个人成长与盘点
我是一名数据科学与大数据技术专业的大四学生,专注于学习大数据分析和机器学习相关的知识。一开始,大一大二期间,认为学习基本的计算机编程语言(C语言、Java和Python等基础课)是一段很枯燥的过程,但是到了大三,进一步学习了大数据技术的相关专业课,方才明白这些编程语言的重要性,让我对专业课有了更充分的学习动力,产生了浓厚的兴趣并开始了博客的创作。
(一)机缘与开端
在信息技术日新月异的时代,不知不觉的加入 CSDN 已有三年时间了,我于 2022 年 4 月与 CSDN 不期而遇,这仿佛是命运巧妙的安排,为我打开了通往广阔技术世界的大门。当时,我正站在学习生涯的十字路口,对未来的发展充满迷茫与憧憬。在一次偶然的机会中,学长向我推荐了几个 IT 社区平台,其中就包括 CSDN——中国最大的程序员创作平台。怀揣着对未知的好奇与对技术的渴望,我毫不犹豫地注册了 CSDN 的账号。初入这个平台,我被其丰富的技术资源、活跃的交流氛围所深深吸引。在这里,不仅有资深专家分享的前沿技术动态,也有同行们探讨的实战经验心得。我仿佛找到了一片技术的沃土,渴望在这里汲取养分,茁壮成长。
直到 2023 年下半年,在学校开始了大数据专业相关课程的学习,由此才开始萌生了创作的想法,然后于 11 月 28 日发布了人生中第一篇博客《大数据技术概述》,接下来就一直围绕着大数据主题、结合所学的课程进行创作。后来,学习人工智能和机器学习相关的知识和内容,拓宽自己的知识面,提升个人能力。通过写博客来记录学习的过程,也可以巩固知识,与大家分享。随着时间的推移,我逐渐深入了解了 CSDN 的方方面面。从最初的浏览帖子、学习他人经验,到后来的主动参与讨论、分享自己的见解,我逐渐融入了这个大家庭。在这个过程中,我不仅拓宽了技术视野,也结识了许多志同道合的朋友。我们共同学习、共同进步,一起为技术的梦想而努力奋斗。
回首这一年,我深感庆幸与感激。庆幸自己能够遇到 CSDN 这样优秀的平台,感激它为我提供的学习机会与交流空间。我相信,在未来的日子里,我会继续在这个平台上发光发热,为技术事业贡献自己的力量。
(二)收获与分享
在过去的一年里,我全身心地投入到创作之中,不仅是为了分享我的知识和经验,更是为了与广大读者共同成长。经过不懈的努力,我收获了众多粉丝的关注和支持,这对我来说是莫大的鼓励和肯定。在此,我想与大家分享一些我认为比较好的专栏以及我最喜欢的三篇文章,希望能为大家的学习之路提供一些帮助和启发。
1、我认为比较好的专栏有:
- 大数据技术基础:这个专栏涵盖了大数据技术的方方面面,从Hadoop、Spark到HBase等核心组件的安装配置到实验实践,我都进行了详细的介绍和解读。通过一系列的实验,读者可以深入了解大数据技术的底层原理和实际应用,为未来的大数据分析和挖掘打下坚实基础。
- Spark编程基础:Spark作为大数据处理领域的明星框架,其强大的数据处理能力和灵活的编程模型深受开发者喜爱。在这个专栏中,我不仅介绍了Spark的基本概念和架构,还通过丰富的实例代码展示了如何使用Spark进行数据处理和分析。无论是初学者还是有一定经验的开发者,都能在这里找到适合自己的学习内容。
- 数据仓库与数据挖掘:数据仓库和数据挖掘是大数据分析中不可或缺的。在这个专栏中,我深入探讨了数据仓库的构建和管理、数据挖掘的方法和技巧等关键内容。通过实际案例的分析和解读,读者可以更加直观地理解数据仓库和数据挖掘在大数据分析中的重要作用。
- Python机器学习:Python作为机器学习领域的首选编程语言,其简洁的语法和强大的库支持使得机器学习模型的构建和训练变得更加容易。在这个专栏中,我不仅介绍了Python机器学习的基础知识和常用算法,还通过实例代码展示了如何使用Python进行机器学习模型的构建和评估。对于想要学习机器学习的读者来说,这是一个不可多得的学习资源。
欢迎大家前来订阅,共同学习。嘿嘿🤭
2、我最喜欢的三篇文章是:
- 大数据存储技术(1)—— Hadoop简介及安装配置:这篇文章是我对Hadoop技术的全面介绍和安装配置的详细指导。Hadoop作为大数据存储和处理领域的基石,其重要性不言而喻。在这篇文章中,我不仅介绍了Hadoop的基本概念和发展历史,还详细讲解了Hadoop的安装配置步骤和注意事项。通过这篇文章的学习,读者可以快速上手Hadoop技术,为后续的大数据处理和分析打下坚实基础。
- 【大数据分析&深度学习】在Hadoop上实现分布式深度学习:这篇文章是我对Hadoop与深度学习结合应用的探索和实践。随着大数据和人工智能技术的不断发展,分布式深度学习已经成为了一个热门的研究方向。在这篇文章中,我不仅介绍了Hadoop和深度学习的基本概念和原理,还详细讲解了如何在Hadoop上实现分布式深度学习模型的构建和训练。通过这篇文章的学习,读者可以更加深入地了解Hadoop与深度学习技术的结合应用和未来发展趋势。
- 【智能大数据分析 | 实验四】Spark实验:Spark Streaming:这篇文章是我对Spark Streaming技术的实验实践和心得分享。Spark Streaming作为Spark框架中的实时数据处理组件,其强大的数据处理能力和灵活的编程模型深受开发者喜爱。在这篇文章中,我不仅介绍了Spark Streaming的基本概念和工作原理,还通过实际案例展示了如何使用Spark Streaming进行实时数据处理和分析。通过这篇文章的学习,读者可以深入了解Spark Streaming技术的实际应用和编程技巧。
其中,实验部分代码如下:
package spark.streaming.test;
import scala.Tuple2;
import com.google.common.collect.Lists;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.function.FlatMapFunction;
import org.apache.spark.api.java.function.Function2;
import org.apache.spark.api.java.function.PairFunction;
import org.apache.spark.api.java.StorageLevels;
import org.apache.spark.streaming.Durations;
import org.apache.spark.streaming.api.java.JavaDStream;
import org.apache.spark.streaming.api.java.JavaPairDStream;
import org.apache.spark.streaming.api.java.JavaReceiverInputDStream;
import org.apache.spark.streaming.api.java.JavaStreamingContext;
import java.util.Iterator;
import java.util.regex.Pattern;
public class SparkStreaming {
private static final Pattern SPACE = Pattern.compile(" ");
public static void main(String[] args) throws InterruptedException {
if (args.length < 2) {
System.err.println("Usage: JavaNetworkWordCount " );System.exit(1);
}
SparkConf sparkConf = new SparkConf().setAppName("JavaNetworkWordCount");
JavaStreamingContext ssc = new JavaStreamingContext(sparkConf, Durations.seconds(1));
JavaReceiverInputDStream<String> lines = ssc.socketTextStream(
args[0], Integer.parseInt(args[1]), StorageLevels.MEMORY_AND_DISK_SER);
JavaDStream<String> words = lines.flatMap(new FlatMapFunction<String, String>() {
@Override
public Iterable<String> call(String x){
return Lists.newArrayList(SPACE.split(x));
}
});
JavaPairDStream<String, Integer> wordCounts = words.mapToPair(
new PairFunction<String, String, Integer>() {
@Override
public Tuple2<String, Integer> call(String s) {
return new Tuple2<String, Integer>(s, 1);
}
}).reduceByKey(new Function2<Integer, Integer, Integer>() {
@Override
public Integer call(Integer i1, Integer i2) {
return i1 + i2;
}
});
wordCounts.print();
ssc.start();
ssc.awaitTermination();
}
}
class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
评论记录:
回复评论: