呆呆宝_个人页

个人头像照片 呆呆宝
个人头像照片
152
892
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2024年07月

2024年06月

  • 发表了文章 2024-08-15

    仓储设计实现问题之采用仓储实体转移模式可以被视为非阻塞悲观锁如何解决

  • 发表了文章 2024-08-15

    仓储设计实现问题之这种仓储下的聚合实体看起来更加像资源Resource如何解决

  • 发表了文章 2024-08-15

    仓储设计实现问题之仓储应该是一个集合实例,并且无法对仓储进行重复的放置如何解决

  • 发表了文章 2024-08-15

    仓储设计实现问题之提出仓储的建模时要从问题空间角度看待如何解决

  • 发表了文章 2024-08-15

    仓储设计实现问题之仓储生成聚合实体的唯一标识如何解决

  • 发表了文章 2024-08-15

    仓储设计实现问题之仓储设计时考虑放置实体的问题如何解决

  • 发表了文章 2024-08-15

    仓储设计实现问题之聚合实体在DDD中定义如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之Apache Kafka Streams 没有采用低水印方案如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之MillWheel 和 Flink 实现数据流的同步处理如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之Apache Flink 的完整性推理方案设计如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之在 Spark Structured Streaming 中水印计算和使用如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之完整性信号Signal计算如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之低水印(Low Watermark)方案工作如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之MillWheel/Cloud DataFlow 实现完整性推理如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之传播模块工作如何解决

  • 发表了文章 2024-08-15

    流计算引擎数据问题之保证流计算的正确性如何解决

  • 发表了文章 2024-08-15

    阿里云块存储问题之在编码和提交代码时确保代码提交的原子性如何解决

  • 发表了文章 2024-08-15

    阿里云块存储问题之poison发布阻塞机制实现如何解决

  • 发表了文章 2024-08-15

    阿里云块存储问题之处理信用分低的测试用例(即不稳定Case)如何解决

  • 发表了文章 2024-08-15

    阿里云块存储问题之块存储选择了主干开发模式,发布模式有哪些种类如何解决

正在加载, 请稍后...
滑动查看更多
  • 回答了问题 2024-07-30

    Checkpoint 文件中是如何包含对 exclusive 文件和 shared 文件的引用的?

    Checkpoint 文件中通过 metadata 文件包含了对 exclusive 文件和 shared 文件的引用。metadata 文件记录了恢复一个 Checkpoint 所需的所有文件的路径和相关信息,从而能够定位到这些文件。
    踩0 评论0
  • 回答了问题 2024-07-30

    为什么 Checkpoint 不是 self-contained 的?

    Checkpoint 不是 self-contained 的,因为在一些情况下,一个 Checkpoint 的 metadata 文件可能会引用其他作业实例的 Checkpoint 的 shared 文件。这通常发生在同一个作业代码多次部署并相互恢复 Checkpoint 的情况下,形成了一个长长的引用链。
    踩0 评论0
  • 回答了问题 2024-07-30

    Checkpoint 难以被清理的原因是什么?

    Checkpoint 难以被清理的原因在于,清理时需要确保 Checkpoint 中的文件不再被其他 Checkpoint 引用。由于存在跨作业实例的引用,作业管理平台需要维护 Checkpoint 中文件的引用计数,这增加了平台管理的复杂度。
    踩0 评论0
  • 回答了问题 2024-07-30

    跨存储系统的 Checkpoint 副本为什么会不可用?

    跨存储系统的 Checkpoint 副本不可用的原因是,当 Checkpoint 从一个存储系统复制到另一个存储系统时,由于跨 job 实例引用的文件在新存储系统上并不存在,导致复制过去的 Checkpoint 不可用。
    踩0 评论0
  • 回答了问题 2024-07-30

    如何避免跨存储系统 Checkpoint 副本不可用的问题?

    要避免跨存储系统 Checkpoint 副本不可用的问题,可以将所有被直接和间接引用的文件都复制到新的存储系统上。但这会极大增加副本制作的复杂度。
    踩0 评论0
  • 回答了问题 2024-07-30

    RocksDBStateBackend 的增量 Checkpoint 是如何制作的?

    RocksDBStateBackend 制作增量 Checkpoint 时,会先将数据刷盘,然后将 DB 实例中所有文件上传到指定的 Checkpoint storage 中(如 HDFS)。对于增量 Checkpoint,只需上传新增的文件和 metadata 文件,已存在的 shared 文件只需在 metadata 中记录引用,无需重复上传。
    踩0 评论0
  • 回答了问题 2024-07-30

    RocksDB 数据文件(SST 文件)的特点是什么?

    RocksDB 的数据文件(SST 文件)一旦产生就不会再被修改,只会随着数据的不断写入和 compaction 而不断地产生和删除。这些 SST 文件包含了数据内容、索引等,是 RocksDB 持久化数据的关键部分。
    踩0 评论0
  • 回答了问题 2024-07-30

    为什么在制作 Checkpoint 时,有些 SST 文件会被放到 shared 目录下?

    在制作 Checkpoint 时,如果 DB 实例中的某些 SST 文件在后续的增量 Checkpoint 中可能会被直接使用,这些文件就会被放到 shared 目录下,以避免重复上传,节省存储空间和传输时间。
    踩0 评论0
  • 回答了问题 2024-07-30

    Checkpoint 序号为什么不连续?

    Checkpoint 序号不连续(如从 Checkpoint3 直接到 Checkpoint5)的原因可能是期间插入了 Savepoint,而 Savepoint 会占用 Checkpoint 序号。Savepoint 通常用于更持久化的状态保存,其制作和恢复过程与普通的 Checkpoint 有所不同。
    踩0 评论0
  • 回答了问题 2024-07-30

    制作 Checkpoint5 时如何知道 02.sst 和 03.sst 已经上传过了?

    制作 Checkpoint5 时,通过 previous-sst-list 来记录上次成功的 Checkpoint 中所有 SST 文件信息,从而知道 02.sst 和 03.sst 已经上传过了。这个列表帮助实现增量 Checkpoint 的制作。
    踩0 评论0
  • 回答了问题 2024-07-30

    为什么新启动作业的Checkpoint可能会引用它所restore的Checkpoint中的文件?

    新启动作业的 Checkpoint 可能会引用它所 restore 的 Checkpoint 中的文件,因为即使作业重启,也会尝试基于之前恢复的 Checkpoint 进行增量制作,如果恢复的是跨作业实例的 Checkpoint,就会导致文件引用跨作业。
    踩0 评论0
  • 回答了问题 2024-07-30

    如何避免新启动作业的 Checkpoint 跨作业文件引用的问题?

    在恢复 previous-sst-list 之前,判断 restore Checkpoint 所属的作业是否是当前作业。如果不是,则不恢复 previous-sst-list,这样作业启动后的第一个 Checkpoint 就会上传所有文件,之后的 Checkpoint 再基于前面的 Checkpoint 进行增量制作,从而避免跨作业文件引用。
    踩0 评论0
  • 回答了问题 2024-07-30

    Checkpoint metadata 中如何获取到作业 ID?

    Checkpoint metadata 中本身不包含作业 ID,但可以通过修改 IncrementalRemoteKeyedStateHandle 的实现,增加一个 jobID 字段,并在制作 Checkpoint 时将 ID 字段序列化到 meta 文件中。这样在 restore 时就可以通过解析 meta 文件来获取 Checkpoint 所属的作业 ID。
    踩0 评论0
  • 回答了问题 2024-07-30

    Checkpoint metadata 中文件路径的问题是什么?如何解决?

    Checkpoint metadata 中记录的文件路径是绝对路径,当 Checkpoint 被复制到其他目录时,这些引用会失效。解决方法是将绝对路径换成相对路径,根据 Checkpoint 的 exclusive 目录和文件的相对路径计算出文件的具体位置,从而实现 Checkpoint 的 relocatable。
    踩0 评论0
  • 回答了问题 2024-07-30

    为什么使用 distcp 跨机房复制 Checkpoint 不是一个好的选择?

    使用 distcp 跨机房复制 Checkpoint 不是一个好的选择,因为 distcp 会为每个复制任务启动一个重的 mapreduce 作业,而 Checkpoint 比 Savepoint 频繁得多,且复制过程中作业可能还在运行,文件可能被删除,导致复杂性和潜在问题增加。
    踩0 评论0
  • 回答了问题 2024-07-30

    最终选择什么方式来实现 Checkpoint 跨机房副本制作?

    最终选择编写一个 Checkpoint Replicate Service,该服务连接多个 HDFS 集群,专门用于 Checkpoint 的副本制作。这种方式更加灵活和高效,适合频繁且动态的 Checkpoint 跨机房复制需求。
    踩0 评论0
  • 回答了问题 2024-07-30

    为什么直接在 Flink 引擎中双写到两个 HDFS 集群不是一个好的选择?

    直接在 Flink 引擎中双写到两个 HDFS 集群会增加引擎的不稳定因素,可能影响到作业运行的稳定性和效率,因此这种方式不适合用来应对小概率的机房故障。
    踩0 评论0
  • 回答了问题 2024-07-30

    Checkpoint coordinator 触发 distcp 的方式存在什么问题,为什么被放弃?

    Checkpoint coordinator 触发 distcp 的方式虽然可以避免 distcp 复制过程中文件变动的问题,但由于 distcp 效率较低,可能导致 Checkpoint 制作流程阻塞,影响作业性能,因此这种方式被放弃。
    踩0 评论0
  • 回答了问题 2024-07-30

    Checkpoint Replicate Service 是如何实现跨 HDFS 集群的副本制作的?

    Checkpoint Replicate Service 通过在每个节点上持有多个 HDFS client,分别连接源 HDFS 集群和目标 HDFS 集群,读取源集群的文件并通过目标集群的 client 写入,实现跨集群的副本制作。
    踩0 评论0
  • 回答了问题 2024-07-30

    如何根据已存在的 Checkpoint 副本进行增量的副本制作?

    进行增量的副本制作时,首先解析出新 Checkpoint 和旧 Checkpoint 的文件列表,通过集合运算找出新增的文件(只存在于新 Checkpoint 中的文件)和需要删除的文件(只存在于旧 Checkpoint 中的文件),然后只复制新增的文件到目标集群,并删除目标集群中旧的文件。
    踩0 评论0
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息