04- 实操:ES + JuiceFSStep 1:准备多种类型节点,分配不同角色 。每一个 ES 节点可以分配不同的角色 , 比如存热数据、温数据、冷数据等,用户需要准备不同机型的节点来匹配不同角色的需求 。
Step 2:挂载 JuiceFS 文件系统 。一般用户将 JuiceFS 用于温、冷数据的存储,用户需要在 ES 温数据节点或冷数据的节点上把 JuiceFS 文件系统挂载到本地 。用户可以通过符号链接或其它方式把挂载点配置到 ES 中去,让 ES 认为它的数据存储在本地目录里,但这个目录背后其实是一个 JuiceFS 文件系统 。
Step 3:创建生命周期策略 。这个需要每个用户自己去定制,用户既可以通过 ES API 去创建,也可以通过 Kibana 去创建 , Kibana 提供了一些相对便捷的方式去创建和管理生命周期策略 。
Step 4:为索引设置生命周期策略 。创建完生命周期策略之后,用户需要把这个策略应用到索引上,也就是要为索引去设置刚刚创建好的策略 。用户可以通过索引模板的方式,可以在 Kibana 里创建索引模板,也可以通过 index.lifycycle.name,显式通过 API 配置 。
这里有几个小提示:
Tip 1:Warm 或 Cold 节点的副本数(replica)可以设置为 1 。所有数据本质上都是放在 JuiceFS 上,它的底层是对象存储,因而数据的可靠性已经足够高了,所以在 ES 这边可以适当降低副本数 , 节省存储空间 。
文章插图
Tip 2:开启 Force merge 可能会导致节点 CPU 持续占用,酌情关闭 。从热数据转移到温数据这个阶段时,ES 会将所有热数据索引对应的底层 segment 做合并 。如果开启 Force merge 这个功能 , ES 会先合并完这些 segment 以后,再把它存储到温数据的底层系统 。然而合并 segment 是一个非常消耗 CPU 的过程,如果温数据的数据节点同时也需要承载一些查询请求 , 可以酌情关闭这个功能能,也就是原封不动地把数据保留下来,直接写到底层存储中 。
Tip 3:Warm 或 Cold 阶段的索引可以设置为只读 。在给温数据和冷数据阶段建立索引时 , 我们基本上可以认为这些数据是只读的,这些阶段的索引不会被修改 。设置为只读可以适当降低温冷数据节点上的资源,比如内存可以释放一些 , 从而节省一些在温节点或者冷节点上的硬件资源 。
05- 实操:ClickHouse + JuiceFSStep 1:在所有 ClickHouse 节点上挂载 JuiceFS 文件系统 。这个路径可以是任意路径,因为 ClickHouse 会有一个配置文件去指向挂载点 。
Step 2:修改 ClickHouse 配置,新增 JuiceFS 盘 。在 ClickHouse 中把刚刚挂载好的 JuiceFS 文件系统挂载点添加进来 , 让 ClickHouse 可以识别这个新磁盘 。
Step 3:新增存储策略,设定下沉数据规则 。这个存储策略会根据用户的规则去不定期的、自动地将数据从默认磁盘上下沉到指定的,比如 JuiceFS 中 。
Step 4:为特定表设置存储策略及 TTL 。存储策略制定好之后 , 需要把这个策略应用到某一个表上 。前期测试阶段和验证阶段,可以把用相对大一点的表去做测试和验证,如果用户希望基于时间维度来实现数据下沉,就同时也需要在表上设置 TTL 。整个下沉过程是一个自动的机制 , 可以通过 ClickHouse 的 system 表查看当前正在进行数据迁移的 part 以及迁移进度 。
Step 5:手动移动 part 进行验证 。可以通过手动执行
MOVE PARTITION
命令的方式去验证当前的配置或存储策略是否生效 。下图是一个具体示例,在 ClickHouse 中有一个叫做
storage_configuration
的配置项,其中包含 disks 配置,这里会把 JuiceFS 作为一个盘加进来,我们将它命名为“jfs”,但其实可以用任意名字,挂载点是 /jfs
目录 。<storage_configuration> <disks> <jfs> <path>/jfs</path> </jfs> </disks> <policies> <hot_and_cold> <volumes> <hot> <disk>default</disk> <max_data_part_size_bytes>1073741824</max_data_part_size_bytes> </hot> <cold> <disk>jfs</disk> </cold> </volumes> <move_factor>0.1</move_factor> </hot_and_cold> </policies></storage_configuration>
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 苹果手机如何在家里自己刷机(苹果刷机工具哪个好用)
- Makfile总结
- iphone12怎么调出3g_iphone12怎么手动设置3g
- 工厂里懂得mes和erp有发展吗?
- MES与工业互联网的关联边界在哪里?
- influxDB2.2
- 华硕灵耀Pro16评测_华硕灵耀Pro16评测表现
- 荣耀50有耳机孔吗_荣耀50耳机接口在哪
- 我的 Kafka 旅程 - broker
- 七彩虹3060测评_七彩虹3060开箱测评