Pallas 分布式小文件存储系统产品系统

我要开发同款
proginn19093642442026年06月30日
5阅读

技术信息

语言技术
JavaShellHadoopElasticSearchHDFS
系统类型
Linux算法模型
行业分类
人工智能网络安全

作品详情

行业场景

传统大数据平台(HDFS)原生不擅长存储海量小文件,大量小文件会导致 NameNode 元数据膨胀、内存压力增大、检索效率低下,难以满足图片、文档、日志等小文件高并发读写与检索的业务场景。Pallas 旨在为企业大数据/AI 平台提供统一的小文件存储与管理能力,解决小文件存储效率低、检索能力弱、缺乏多租户隔离与权限管控等问题,适用于网络安全日志取证、AI 训练样本管理等行业场景。

功能介绍

Pallas 是自主研发的分布式小文件存储系统,核心功能模块包括:1)Master/Worker 主从架构,支持基于 ZooKeeper 的 Master 选举与高可用;2)Namespace(命名空间)与 Bucket(桶)两级元数据管理,支持创建、查询、更新、删除及配额(Quota)与 QPS 限流;3)基于 HBase 存储对象元数据与索引,HDFS 存储文件实际内容(HFile 写入与读取);4)集成 ElasticSearch 实现文件全文检索(Fulltext Search);5)集成 Apache Tika 实现多种文件格式的内容解析与转换;6)基于 Kerberos 的身份认证及 ACL 权限体系(用户级/命名空间级/桶级访问控制);7)RESTful API 对外提供对象上传、下载、删除、批量操作等接口;8)节点间基于 Netty 自定义协议通信,支持心跳保活、消息确认(ACK)与统计上报。

项目实现

本人独立完成该项目的整体架构设计与核心代码开发,负责 Master/Worker 通信协议设计、基于 ZooKeeper 的分布式锁与选主机制实现、HBase 元数据存储与 HDFS 文件读写链路开发,以及 ElasticSearch 全文检索模块和 RESTful API 层的开发。技术栈涉及 Java、Netty、ZooKeeper、HBase、HDFS、ElasticSearch、Kafka、Apache Tika 等。实现难点主要在于:小文件元数据与大文件实体分离存储以兼顾检索效率与存储成本、基于 ZooKeeper 的高可用主备切换与脑裂防护、以及多租户场景下的配额与限流控制。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论