Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Juicedata
JuiceFS
提交
8de48968
JuiceFS
项目概览
Juicedata
/
JuiceFS
通知
10
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
JuiceFS
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
8de48968
编写于
9月 27, 2021
作者:
C
Changjian Gao
提交者:
GitHub
9月 27, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Docs: update TPC-DS benchmark (#866)
上级
b0410b9b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
80 addition
and
75 deletion
+80
-75
docs/zh_cn/hadoop_java_sdk.md
docs/zh_cn/hadoop_java_sdk.md
+80
-75
未找到文件。
docs/zh_cn/hadoop_java_sdk.md
浏览文件 @
8de48968
...
...
@@ -36,6 +36,7 @@
*
[
2. 分布式测试
](
#2-%E5%88%86%E5%B8%83%E5%BC%8F%E6%B5%8B%E8%AF%95
)
+
[
元数据性能
](
#%E5%85%83%E6%95%B0%E6%8D%AE%E6%80%A7%E8%83%BD-1
)
+
[
I/O 性能
](
#io-%E6%80%A7%E8%83%BD-1
)
*
[
3. TPC-DS
](
#3-tpc-ds
)
-
[
FAQ
](
#faq
)
----
...
...
@@ -492,25 +493,27 @@ JuiceFS Hadoop Java SDK 支持把运行指标以 [Prometheus](https://prometheus
| write | 198 | 1835 |
| read | 124 | 1234 |
### TPC-DS
###
3.
TPC-DS
测试数据集 100GB 规模,测试
parquet 和 orc
两种文件格式。
测试数据集 100GB 规模,测试
Parquet 和 ORC
两种文件格式。
本次测试仅测试前 10 个查询。
使用
spark Thrift JDBC/ODBC server 开启 spark 常驻进程,然后通过 b
eeline 连接提交任务。
使用
Spark Thrift JDBC/ODBC Server 开启 Spark 常驻进程,然后通过 B
eeline 连接提交任务。
#### 测试硬件
| | 机器型号 | CPU | Memory | Disk | 数量 |
| ------ | ------------------- | ---- | ------ | ---------------------------------- | ---- |
| master | 阿里云ecs.r6.xlarge | 4 | 32GiB | 系统:100GiB | 1 |
| core | 阿里云ecs.r6.xlarge | 4 | 32GiB | 系统:100GiB
<br
/>
数据:500GiB X 2 | 3 |
| | 机器型号 | CPU | Memory | Disk | 数量 |
| ------ | ------------------- | ---- | ------ | ---------------------------------- | ---- |
| Master | 阿里云 ecs.r6.xlarge | 4 | 32GiB | 系统盘:100GiB | 1 |
| Core | 阿里云 ecs.r6.xlarge | 4 | 32GiB | 系统盘:100GiB
<br
/>
数据盘:500GiB 高效云盘 x 2 | 3 |
#### 软件配置
-
Thrift JDBC/ODBC server
```
shell
${
SPARK_HOME
}
/sbin/start-thriftserver.sh
\
##### Spark Thrift JDBC/ODBC Server
```
shell
${
SPARK_HOME
}
/sbin/start-thriftserver.sh
\
--master
yarn
\
--driver-memory
8g
\
--executor-memory
10g
\
...
...
@@ -519,90 +522,92 @@ JuiceFS Hadoop Java SDK 支持把运行指标以 [Prometheus](https://prometheus
--conf
spark.locality.wait
=
100
\
--conf
spark.sql.crossJoin.enabled
=
true
\
--hiveconf
hive.server2.thrift.port
=
10001
```
```
-
JuiceFS 缓存配置
core 节点 2 块数据盘挂载在 /data01 和 /data02 目录下
```
xml
<property>
<name>
juicefs.cache-size
</name>
<value>
200000
</value>
</property>
<property>
<name>
juicefs.cache-dir
</name>
<value>
/data*/jfscache
</value>
</property>
<property>
<name>
juicefs.cache-full-block
</name>
<value>
false
</value>
</property>
<property>
<name>
juicefs.discover-nodes-url
</name>
<value>
yarn
</value>
</property>
<property>
<name>
juicefs.attr-cache
</name>
<value>
3
</value>
</property>
<property>
<name>
juicefs.entry-cache
</name>
<value>
3
</value>
</property>
<property>
<name>
juicefs.dir-entry-cache
</name>
<value>
3
</value>
</property>
```
### 测试
##### JuiceFS 缓存配置
Core 节点 2 块数据盘挂载在
`/data01`
和
`/data02`
目录下,
`core-site.xml`
配置如下:
```
xml
<property>
<name>
juicefs.cache-size
</name>
<value>
200000
</value>
</property>
<property>
<name>
juicefs.cache-dir
</name>
<value>
/data*/jfscache
</value>
</property>
<property>
<name>
juicefs.cache-full-block
</name>
<value>
false
</value>
</property>
<property>
<name>
juicefs.discover-nodes-url
</name>
<value>
yarn
</value>
</property>
<property>
<name>
juicefs.attr-cache
</name>
<value>
3
</value>
</property>
<property>
<name>
juicefs.entry-cache
</name>
<value>
3
</value>
</property>
<property>
<name>
juicefs.dir-entry-cache
</name>
<value>
3
</value>
</property>
```
#### 测试
任务提交的命令如下:
任务提交命令行
```
shell
${
SPARK_HOME
}
/bin/beeline
-u
jdbc:hive2://localhost:10001/
${
DATABASE
}
\
-n
hadoop
\
-f
query
{
i
}
.sql
-n
hadoop
\
-f
query
{
i
}
.sql
```
### 结果
###
#
结果
JuiceFS 可以使用本地磁盘作为缓存加速,以下数据是跑 4 次后的结果。
JuiceFS 可以使用本地磁盘作为缓存加速,以下数据是跑 4 次后的结果
(单位秒)
。
-
orc
##### ORC
|
queries | redis | tikv | hdfs
|
|
Queries | Redis | TiKV | HDFS
|
| ------- | ----- | ---------- | ------ |
| q1 |
20 | 20| 20
|
| q2 |
28 | 33| 26
|
| q3 |
24 | 27| 28
|
| q4 |
300 | 309 | 290
|
| q5 |
116 | 117 |
91 |
| q6 |
37 | 42| 41
|
| q7 |
24 | 28| 23
|
| q8 |
13 | 15| 16
|
| q9 |
87 | 112| 89
|
| q10 |
23 | 24| 22
|
| q1 |
20 | 20 | 20
|
| q2 |
28 | 33 | 26
|
| q3 |
24 | 27 | 28
|
| q4 |
300 | 309 | 290
|
| q5 |
116 | 117 |
91 |
| q6 |
37 | 42 | 41
|
| q7 |
24 | 28 | 23
|
| q8 |
13 | 15 | 16
|
| q9 |
87 | 112 | 89
|
| q10 |
23 | 24 | 22
|
![
orc
](
../images/spark_ql_orc.png
)
-
p
arquet
##### P
arquet
|
queries | redis | tikv | hdfs
|
|
Queries | Redis | TiKV | HDFS
|
| ------- | ----- | ---------- | ------ |
| q1 |
33 | 35| 39
|
| q2 |
28 | 32| 31
|
| q3 |
23 | 25| 24
|
| q4 |
273 | 284 | 266
|
| q5 |
96 | 107| 94
|
| q6 |
36 | 35| 42
|
| q7 |
28 | 30| 24
|
| q8 |
11 | 12| 14
|
| q9 |
85 | 97| 77
|
| q10 |
24 | 28| 38
|
| q1 |
33 | 35 | 39
|
| q2 |
28 | 32 | 31
|
| q3 |
23 | 25 | 24
|
| q4 |
273 | 284 | 266
|
| q5 |
96 | 107 | 94
|
| q6 |
36 | 35 | 42
|
| q7 |
28 | 30 | 24
|
| q8 |
11 | 12 | 14
|
| q9 |
85 | 97 | 77
|
| q10 |
24 | 28 | 38
|
![
parquet
](
../images/spark_sql_parquet.png
)
## FAQ
### 1. 出现 `Class io.juicefs.JuiceFileSystem not found` 异常
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录