现在有个需求要实现一个 hdfs
要用 C 开发,查了下官方的实现,用的是 java
这是为啥
现在有个需求要实现一个 hdfs
要用 C 开发,查了下官方的实现,用的是 java
这是为啥
|
1
可能是因为它叫 HADOOP Distributed File System
|
|
ConfusedBiscuitSep 11, 2023
2
如果它是用 C 开发的话,就又有人要问 “hdfs 为何用 C 实现?”
----- 抖机灵分割线 ----- 1. 关于实现语言 ( 1 )由于它属于 Hadoop 生态,大数据生态,特别是 Hadoop 生态,Java 就是主力语言啊,如果算上 Spark 和 Flink ,即使不是 Java 生态,也是 JVM 生态。 ( 2 )可能看到 FS 就觉得很底层,底层就该用 C ,但是实际上这个 FS 和操作系统的 FS 比,完全不是底层的东西,所以…… 2. 它用什么语言实现跟用户基本没啥关系。“现在有个需求要实现一个 hdfs”,这个就很奇怪,因为 ( 1 )正常来说,没必要重复造轮子,直接用 hdfs 的接口或 SDK 就行,你用什么语言区别不大(虽然用 Java 可能最省事) ( 2 )如果真是按照字面的理解,要重复造一个轮子了……那如果语言一致的话……你是想直接复制粘贴吗? |
|
F281M6Dh8DXpD1g2Sep 11, 2023
3
yahoo 当年那伙人就愿意拿 java 写
我还问过给 hadoop 起名那哥们,答案就是他当时就愿意用 java ,问能不能用 cpp ,他说他不会...... |
|
ysn2233Sep 11, 2023
4
因为最开始想写这个的人想用 java 写
|
|
lbbffSep 11, 2023 via Android
5
你们这需求挺离谱的。HDFS 很多功能不需要用 C 去实现啊,而且这种一般都是取决于主力开发的技术栈
|
|
banmuyutianSep 11, 2023
6
不是所有高性能系统都要用 C 写呀,kafka 也是用 Java 开发的
|
|
roundgisSep 11, 2023
7
用 c 把 java 的實現抄一遍?
|
|
abcbuzhimingSep 11, 2023
8
你们要自己从头实现一个 HDFS ?还要用 C 来实现?我能否问贵方打算投入多少人进去? HDFS 当年也是投入了不少人力的,我记得围绕其还有公司的起起落落
|
|
ZZ74Sep 11, 2023
9
你用 C
写出来了 绩效到手,再开源下 名利双收 写不出来,也能有所收获,比如回答了自己的这个问题 |
|
LeviathannSep 11, 2023
10
感觉不如 rewrite in rust
|
|
kuituosiSep 11, 2023
11
阿里巴巴内部实现是 cpp 写的,但是不开源跑在阿里云上
|
|
difSep 11, 2023
12
HDFS 不是基于 Google 的论文写的么?你看论文用 CPP 实现一遍就行了呀。
|
|
matepiSep 11, 2023
13
我来咬勾
Namenode 当文件数多的时候,还仰仗 JVM 的堆内存管理,其实挺有问题的。fullgc 一下就整体不服务。 有没有 namenode 的非 java 的实现呢? |
|
me1onsodaSep 11, 2023
15
他可能不会 c
|
|
flyqieSep 11, 2023
16
这问题感觉把 c 换成 cpp 会比较好。。
|
|
ensonmjSep 11, 2023 via iPhone
17
不是有 libhdfs 吗?
|
|
julyclydeSep 11, 2023
18
其实你这里才存在问题吧
为什么要用 C 再写一遍 谁来负责后续的兼容问题 |
|
troywinterSep 13, 2023
19
其实这东西够牛逼的话用 python 写都没毛病,不够牛逼的话用 c 写出来也是个玩具
|