Alluxio
ProductsLanguageHome
DA-3.5 (stable)
DA-3.5 (stable)
  • 概览
  • 部署Alluxio
    • 资源需求和兼容性
    • 在Kubernetes上安装Alluxio
    • 监控和指标
    • Alluxio 集群操作
    • 系统健康检查和快速恢复
    • 采集集群信息
  • 架构
    • Alluxio 命名空间和底层文件系统命名空间
    • I/O弹性
    • worker管理与一致性哈希
  • 底层存储系统
    • Amazon AWS S3
    • HDFS
    • 腾讯 COS
  • 计算集成
    • 在 K8s 上运行 Trino
    • 在 K8s 上运行 Spark
    • 数据湖连接器
  • Client APIs
    • S3 API
    • Java HDFS 兼容 API
  • 缓存操作
    • 缓存预加载
    • 缓存过滤
    • 缓存驱逐
      • TTL (有效时间)规则
      • 优先级规则
      • 通过命令行释放缓存空间
  • 资源管理
    • 基于目录的集群配额
    • UFS 带宽限制
  • 性能优化
    • 通过副本提高读取吞吐量
    • 读取大文件
    • 元数据列表
    • 数据预拉取
  • 安全
    • TLS 支持
    • Apache Ranger 集成
  • 参考
    • 用户命令行接口
    • 指标
    • S3 API Usage
    • 第三方证书
  • 版本发布说明
Powered by GitBook
On this page
  • UFS回退机制
  • 成员变更
  • 添加工作节点
  • 移除工作节点
  • 重启工作节点
  1. 架构

I/O弹性

该文档描述了Alluxio如何处理意外或者可预期的宕机,例如当Alluxio workers变得不可用时。 有多种机制来平滑地处理应用程序请求,并确保Alluxio系统的总体I/O弹性。

UFS回退机制

Alluxio客户端从Alluxio工作节点读取元数据和数据。如果请求的工作节点变得不可用或返回错误,客户端可以回退到从UFS请求这些信息。

UFS回退机制在默认情况下是开启的。 这种设置在一些情况下可能有负面情况出现,例如潜在大量请求过载UFS,这种效应被称作是羊群效应问题。(参见https://en.wikipedia.org/wiki/Thundering_herd_problem)

如果想要禁用该机制,可以使用以下方式设置

alluxio.dora.client.ufs.fallback.enabled=false

成员变更

添加工作节点

当向集群中添加工作节点时,新添加的工作节点将根据一致性哈希算法,从既有工作节点处接管一些哈希范围。 客户端仍将从现有的工作节点中读取文件,直至客户端检测到成员已发生变更。 如果请求被指向新的工作节点,由于工作节点需要重新从UFS加载数据,读取操作可能会变慢,但操作不应显示任何错误。

移除工作节点

当工作节点被移除时,之前指向被移除工作节点的路径将根据一致性哈希算法重新分配给其他工作节点。 由被移除工作节点服务的,正在进行的请求,将会失败。 如果启用了UFS回退机制,客户端将尝试直接向UFS重试请求。 一旦客户端检测到成员变更,这些请求将被适时指向剩余尚在工作的工作节点。 如果基于S3接口,应用程序可能会看到正在进行的读取发生瞬时读取错误,但应该能够在工作节点成员更新后恢复。

重启工作节点

重启工作节点,与移除工作节点后再次添加是相同的。因为每个工作节点都有一个特定身份从而形成一致性哈希环。 重启的工作节点将负责它之前管理的相同路径,这样此工作节点上缓存的数据仍然有效。

Last updated 21 days ago