积分充值
 首页
前端开发
AngularDartElectronFlutterHTML/CSSJavaScriptReactSvelteTypeScriptVue.js构建工具
后端开发
.NetC#C++C语言DenoffmpegGoIdrisJavaJuliaKotlinLeanMakefilenimNode.jsPascalPHPPythonRISC-VRubyRustSwiftUML其它语言区块链开发测试微服务敏捷开发架构设计汇编语言
数据库
Apache DorisApache HBaseCassandraClickHouseFirebirdGreenplumMongoDBMySQLPieCloudDBPostgreSQLRedisSQLSQLiteTiDBVitess数据库中间件数据库工具数据库设计
系统运维
AndroidDevOpshttpdJenkinsLinuxPrometheusTraefikZabbix存储网络与安全
云计算&大数据
Apache APISIXApache FlinkApache KarafApache KyuubiApache OzonedaprDockerHadoopHarborIstioKubernetesOpenShiftPandasrancherRocketMQServerlessService MeshVirtualBoxVMWare云原生CNCF机器学习边缘计算
综合其他
BlenderGIMPKiCadKritaWeblate产品与服务人工智能亿图数据可视化版本控制笔试面试
文库资料
前端
AngularAnt DesignBabelBootstrapChart.jsCSS3EchartsElectronHighchartsHTML/CSSHTML5JavaScriptJerryScriptJestReactSassTypeScriptVue前端工具小程序
后端
.NETApacheC/C++C#CMakeCrystalDartDenoDjangoDubboErlangFastifyFlaskGinGoGoFrameGuzzleIrisJavaJuliaLispLLVMLuaMatplotlibMicronautnimNode.jsPerlPHPPythonQtRPCRubyRustR语言ScalaShellVlangwasmYewZephirZig算法
移动端
AndroidAPP工具FlutterFramework7HarmonyHippyIoniciOSkotlinNativeObject-CPWAReactSwiftuni-appWeex
数据库
ApacheArangoDBCassandraClickHouseCouchDBCrateDBDB2DocumentDBDorisDragonflyDBEdgeDBetcdFirebirdGaussDBGraphGreenPlumHStreamDBHugeGraphimmudbIndexedDBInfluxDBIoTDBKey-ValueKitDBLevelDBM3DBMatrixOneMilvusMongoDBMySQLNavicatNebulaNewSQLNoSQLOceanBaseOpenTSDBOracleOrientDBPostgreSQLPrestoDBQuestDBRedisRocksDBSequoiaDBServerSkytableSQLSQLiteTiDBTiKVTimescaleDBYugabyteDB关系型数据库数据库数据库ORM数据库中间件数据库工具时序数据库
云计算&大数据
ActiveMQAerakiAgentAlluxioAntreaApacheApache APISIXAPISIXBFEBitBookKeeperChaosChoerodonCiliumCloudStackConsulDaprDataEaseDC/OSDockerDrillDruidElasticJobElasticSearchEnvoyErdaFlinkFluentGrafanaHadoopHarborHelmHudiInLongKafkaKnativeKongKubeCubeKubeEdgeKubeflowKubeOperatorKubernetesKubeSphereKubeVelaKumaKylinLibcloudLinkerdLonghornMeiliSearchMeshNacosNATSOKDOpenOpenEBSOpenKruiseOpenPitrixOpenSearchOpenStackOpenTracingOzonePaddlePaddlePolicyPulsarPyTorchRainbondRancherRediSearchScikit-learnServerlessShardingSphereShenYuSparkStormSupersetXuperChainZadig云原生CNCF人工智能区块链数据挖掘机器学习深度学习算法工程边缘计算
UI&美工&设计
BlenderKritaSketchUI设计
网络&系统&运维
AnsibleApacheAWKCeleryCephCI/CDCurveDevOpsGoCDHAProxyIstioJenkinsJumpServerLinuxMacNginxOpenRestyPrometheusServertraefikTrafficUnixWindowsZabbixZipkin安全防护系统内核网络运维监控
综合其它
文章资讯
 上传文档  发布文章  登录账户
IT文库
  • 综合
  • 文档
  • 文章

无数据

分类

全部系统运维(19)存储(19)

语言

全部中文(简体)(16)西班牙语(1)zh(1)zh-cn(1)

格式

全部PDF文档 PDF(19)
 
本次搜索耗时 0.012 秒,为您找到相关结果约 19 个.
  • 全部
  • 系统运维
  • 存储
  • 全部
  • 中文(简体)
  • 西班牙语
  • zh
  • zh-cn
  • 全部
  • PDF文档 PDF
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • pdf文档 Curve质量监控与运维 - 网易数帆

    系统测试; 从测试角度看,测试可以分为常规测试、性能测试、异常测试、稳定性测试、混沌测试,等等  单元测试 1300+用例 行覆盖80%+,分支覆盖70%+  集成测试 Given When Then 设计方法 500+用例  异常测试 40+自动化用例  混沌测试 20轮自动化随机故障注入 12/33单元测试 单元测试是软件开发的过程中最基本的测试,它用来对一个模块、一个函数或者一个类来进行 常)。 在系统测试过程中,我们尽可能将所有用例自动化,其优点是:  大幅降低了测试回归成本,加快了测试进度;  可以对代码进行足够频繁的测试,有利于提高代码质量;  容易发现隐藏的问题,手工测试无法做到频繁触发  测试用例可以持续积累,成为代码质量的。 目前Curve的 异常测试以及混沌测试 均实现了自动化。 15/33测试用例的编写方法 很多情况下,待测试场景会包含多个变化的参数,每个参数有若干个典 参数有若干个典 型值;如果将用例覆盖所有可能的情况,总用例数将达到不可接受的程 度。因此,需要通过组合测试的方法,尽量用较少的用例数量覆盖绝大 多数情况:  两因素组合测试 通过测试集覆盖任意两个变量的所有取值组合。理论上两因素组合测 试最多可发现95%的缺陷,平均缺陷检出率也达到了86%,在用例数量 和缺陷检测能力上达到了平衡。因此,一般测试用例应该保证两因素组 合的100%覆盖。
    0 码力 | 33 页 | 2.64 MB | 6 月前
    3
  • pdf文档 Curve文件系统空间分配方案

    client端配合完成。 空间分配 整体设计 分配器包括两层结构: 第一层用bitmap进行表示,每个bit标识其所对应的一块空间(以4MiB为例,具体大小可配置)是否分配出去。 第二层为free extent list,表示每个已分配的块,哪些仍然是空闲的(offset, length),以offset为key进行排序(这里可以用map或者btree对所有的free extent进行管理)。 3. 以下图为例:file1新申请了2MiB的空间。首先从level1中随机选一个标记为0的块分配出去,然后将这一个块中的前2MiB空间分配给这个文件,剩余部分加入到level2中的list中。 后续,file1再次追加写入2MiB数据,此时申请空间时,需要附带上file1最后一个字节数据在底层存储的位置,再加1(期望申请的地址空间起始offset)。以图中为例,则附带的值为30MiB。 配,另一部分用于大文件分配。两部分空间是相对的,一部分用完后,可以申请另 一部分的空间。比如,大文件部分的空间完全分配出去,则可以继续从小文件空间进行分配。 用于小文件空间分配的部分,空闲空间可以用extent来表示。 小文件在空间分配时,也需要考虑尽量分配连续的地址空间。 文件在第一次申请空间时,选择一个能满足要求的extent分配出去。后续的空间申请,同样要带上文件最后一个字节所在的地址空间,用于尽量分配连续的地址空间。
    0 码力 | 11 页 | 159.17 KB | 6 月前
    3
  • pdf文档 Curve核心组件之mds – 网易数帆

    segment是给文件分配空间的最小单位 。 • PageFileChunkInfo: chunk是数据分片的最小单元。 segment 和 chunk的关系如下图:NAMESERVER Namespace的文件的目录层次关系如右图。 文件的元数据以KV的方式存储。 • Key:ParentID + “/”+ BaseName; • Value:自身的文件ID。 这种方式可以很好地平衡几个需求: • 文件列目录:列出目录下的所有文件和目 1. 减少元数据量:如果为每个Chunk去保存复制组成员关系,需要至少 ChunkID+3×NodeID=20 个byte,而如 果在Chunk到复制组之间引入一个CopySet,每个Chunk可以用ChunkID+CopySetID=12个byte。 2. 减少复制组数量:如果一个数据节点存在 256K个复制组,复制组的内存资源占用将会非常恐怖;复制组之 间的通信将会非常复杂,例如复制组内P ET ChunkServer,Copyset和Chunk三者之间的关系如下图: Mds在分配空间时,轮流在不同的copyset中分配,每次从copyset中分配1个chunk, 这个chunk用copysetId:chunkId来唯一标识。COPYSET Copyset的生成策略:Source code : curve/src/mds/copyset/ bool GenCopyset(const
    0 码力 | 23 页 | 1.74 MB | 6 月前
    3
  • pdf文档 CurveFS方案设计

    hashmap ?) 元数据的持久化(以 kv 的方式存入文件?存储 rocksdb ?) 元数据节点的高可用 元数据分片策略(哪些范围的元数据存储在哪些复制组上) 数据结构 在元数据设计上,扁平化元数据(用 parentID+Filename → FileInfo 表示一个文件)和分级元数据(ParentID+Filename → Inode; Inode → FileInfo)最大的区别在硬链接的实 metaserver。© XXX Page 12 of 14 1. 2. 3. blk的粒度为多少? 从调研的系统来看,如果chunk是固定的分配力度,会选择64k,以一个20TB的盘为例: blk=4k, 需要bitmap的大小为640MB blk=64k, 需要bitmap的大小为40MB 在设计过程中,对于每个文件系统,blk应该是可以根据业务形态来配置的 bitmap重建时间? 几个复制组上。inode数量多。 ② 在数据库等场景,文件的目录层级较少,文件数量较少,文件很大。这种情况inode比较聚集,一般分布在几个复制组上。inode数量少。 以上这两种情况,以20TB为例,数据量在MB级别,client获取数据可以使用stream类型的rpc? ③ 正常使用场景,有一定的目录层级,文件分配数量较多,文件较小。这种情况inode比较分散,一般分布在多个复制组上,inode数量较多。
    0 码力 | 14 页 | 619.32 KB | 6 月前
    3
  • pdf文档 Raft在Curve存储中的工程实践

    chunkserver:采用raft协议3副本的方式保存块 设备上的数据。 • snapshotCloneServer:卷的快照克隆服务,持久 化到S3中。Curve块存储RAFT应用 数据分布 • 每个raft实例用一个copyset管理,copyset是个逻辑 概念。写入chunk的数据,由copyset对应的raft完成 3副本的写入。 • multi-raft:copyset和chunkserver是多对多的关系 disk -> segment -> chunk • chunk -> copyset -> chunk in 3 chunkserverCurve块存储RAFT应用 请求处理流程 以写请求为例: 1. Client 发送写请求给 Leader ChunkServer。 2. ChunkServer 收到请求,将请求封装成一个 log entry,提交给 raft。 3. raft模块在本地持久化
    0 码力 | 29 页 | 2.20 MB | 6 月前
    3
  • pdf文档 CurveFs 用户权限系统调研

    与真实普通用户区分开来,这类用户最大的特点是安装系统后默认就会存在,且默认情况大多数不能登录系统 普通用户: UID:500~65535 具备系统管理员root的权限的运维人员添加的,权限很小,一般用sudo管理提权 用户和用户组的关系: 一对一、一对多、多对一、多对多 文件系统用户权限管理 对mode的管理 uidgidmode message Inode { required uint64 是物理文件系统的一个属性,需要永久保存。如何将 ACL 保存在外存中,包括 ACL 在外存中具体存放的位置,以及如何从外存中读取和写入原始 ACL 内容。涉及到 VFS 和具体的物理文件系统,这里以Ext4文件系统为例说明。© XXX Page 28 of 33 在 Linux 操作系统中,如果libattr 功能在内核设置中被打开, ext2 、 ext3 、 ext4 、 JFS 、 ReiserFS 以及 XFS
    0 码力 | 33 页 | 732.13 KB | 6 月前
    3
  • pdf文档 Curve设计要点

    一键部署,一键升级高质量 • 良好的模块化和抽象设计 • 完善的测试体系 • 单元测试 行覆盖80%+,分支覆盖70%+ • 集成测试 Given When Then 方法 完备的测试用例集 • 自动化异常测试 41个异常用例 • 自动化大压力随机故障注入 20轮随机故障注入背景 01 02 03 04 总体设计 系统特性 近期规划• 性能优化 • 满足数据库性能要求 • 大io吞吐优化
    0 码力 | 35 页 | 2.03 MB | 6 月前
    3
  • pdf文档 PolarDB开源生态介绍 - 杭州Meetup 2022.10.15

    PolarDB开源生态介绍 阿里云 digoal为什么开源是未来?阿里巴巴开源缩略图数据库开源大图PolarDB开源云原生分布式数据库家族 : 兼容MySQL&PostgreSQL用户 生态伙伴 人才 降本提效 团队成长 商业服务 用户合作 • 联合实验室 PolarDB云原生分布式开源数据库产品 高校合作 • 课程合作 • 科研项目合作 • 工作组 高校 协同育人、教学优化成果
    0 码力 | 7 页 | 1.45 MB | 6 月前
    3
  • pdf文档 CurveFS对接S3方案设计

    curve块存储就有的模块,负责将快照数据上传到S3,这里我们对于s3的操作主要复用了这 个模块。该模块使用的AWS的sdk,并没有实现append接口 write流程 主要流程逻辑见上面的流程图,对流程补充有以下几点: 1.对于overlap的场景,会将inode中的versio+1,但是不会处理被overlap的相关数据,由后台进行处理。 2.如果是带了append flag则在writ
    0 码力 | 11 页 | 145.77 KB | 6 月前
    3
  • pdf文档 MySQL 兼容性可以做到什么程度

    开源 2016 2017 2018 2019 2020 2021 2021年10月20日,云栖大会宣 布开源 2020年5月,PolarDB-X 完成架 构和品牌升级怎么做兼容:以 CDC 为例 02 If it looks like a duck, swims like a duck, and quacks like a duck, then it probably is a duck.业务系统
    0 码力 | 18 页 | 3.02 MB | 6 月前
    3
共 19 条
  • 1
  • 2
前往
页
相关搜索词
Curve质量监控运维网易数帆文件系统文件系统空间分配方案核心组件mdsCurveFS设计方案设计Raft存储工程实践CurveFs用户权限调研要点PolarDB开源生态介绍杭州Meetup2022.1015对接S3MySQL兼容容性兼容性可以做到什么程度
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩