自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

houzhizhen的专栏

bigdata hobbyist

  • 博客(789)
  • 资源 (4)
  • 收藏
  • 关注

原创 Kubernetes 文档 / 概念 / 工作负载 / 工作负载管理 / StatefulSet

此文档从 Kubernetes 官网摘录StatefulSet 是用来管理有状态应用的工作负载 API 对象。

2024-05-23 15:45:22 346

原创 Kubernetes 文档 / 概念 / 工作负载 / 工作负载管理 /ReplicaSet

此文档从 Kubernetes 官网摘录ReplicaSet 的目的是维护一组在任何时候都处于运行状态的 Pod 副本的稳定集合。因此,它通常用来保证给定数量的、完全相同的 Pod 的可用性。

2024-05-22 15:10:48 370

原创 Kubernetes 文档 / 概念 / 工作负载 / 工作负载管理 / Deployments

此文档从 Kubernetes 官网摘录一个 Deployment 为 Pod 和 ReplicaSet 提供声明式的更新能力。你负责描述 Deployment 中的目标状态,而 Deployment 控制器(Controller) 以受控速率更改实际状态, 使其变为期望状态。你可以定义 Deployment 以创建新的 ReplicaSet,或删除现有 Deployment, 并通过新的 Deployment 收养其资源。

2024-05-22 10:04:24 131

原创 Kubernetes 文档 / 概念 / 工作负载 / 工作负载管理

DaemonSet 可能对集群的操作至关重要, 例如作为插件让该节点访问集群网络, 也可能帮助你管理节点,或者提供增强正在运行的容器平台所需的、不太重要的设施。你可以在集群的每个节点上运行 DaemonSets(及其 Pod),或者仅在某个子集上运行 (例如,只在安装了 GPU 的节点上安装 GPU 加速驱动)。Deployment 中的 Pod 预期是可互换的。Deployment 适合在集群上管理无状态应用工作负载, 其中 Deployment 中的任何 Pod 都是可互换的,可以在需要时进行替换。

2024-05-20 11:03:17 225

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / 用户命名空间

此文档从 Kubernetes 官网摘录对于容器来说,在不与 Kubernetes 过度耦合的情况下,拥有关于自身的信息有时是很有用的。Downward API 允许容器在不使用 Kubernetes 客户端或 API 服务器的情况下获得自己或集群的信息。

2024-05-20 10:55:54 635

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / 用户命名空间

Kubernetes 文档 / 概念 / 工作负载 / Pod / 用户命名空间此文档从 Kubernetes 官网摘录中文地址英文地址在容器中以 root 身份运行的进程可以在主机中以不同的(非 root)用户身份运行; 换句话说,该进程在用户命名空间内的操作具有完全的权限, 但在命名空间外的操作是无特权的。你可以使用这个功能来减少被破坏的容器对主机或同一节点中的其他 Pod 的破坏。准备开始这是一个只对 Linux 有效的功能特性,且需要 Linux 支持在所用文件系统上挂载 idmap。

2024-05-20 10:20:52 551

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / Pod QoS 类

此文档从 Kubernetes 官网摘录本页介绍 Kubernetes 中的 服务质量(Quality of Service,QoS) 类, 阐述 Kubernetes 如何根据为 Pod 中的容器指定的资源约束为每个 Pod 设置 QoS 类。Kubernetes 依赖这种分类来决定当 Node 上没有足够可用资源时要驱逐哪些 Pod。

2024-05-19 13:19:07 540

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / 干扰(Disruptions)

此文档从 Kubernetes 官网摘录本指南针对的是希望构建高可用性应用的应用所有者,他们有必要了解可能发生在 Pod 上的干扰类型。文档同样适用于想要执行自动化集群操作(例如升级和自动扩展集群)的集群管理员。

2024-05-19 12:51:39 553

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / 临时容器

临时容器与其他容器的不同之处在于,它们缺少对资源或执行的保证,并且永远不会自动重启, 因此不适用于构建应用程序。临时容器使用与常规容器相同的 ContainerSpec 节来描述,但许多字段是不兼容和不允许的。临时容器没有端口配置,因此像 ports、livenessProbe、readinessProbe 这样的字段是不允许的。Pod 资源分配是不可变的,因此 resources 配置是不允许的。有关允许字段的完整列表,请参见 EphemeralContainer 参考文档。

2024-05-18 10:06:17 401

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / 边车容器

此文档从 Kubernetes 官网摘录边车容器是与主应用容器在同一个 Pod 中运行的辅助容器。这些容器通过提供额外的服务或功能(如日志记录、监控、安全性或数据同步)来增强或扩展主应用容器的功能, 而无需直接修改主应用代码。

2024-05-17 17:24:55 235

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / Init 容器

此文档从 Kubernetes 官网摘录本页提供了 Init 容器的概览。Init 容器是一种特殊容器,在 Pod 内的应用容器启动之前运行。Init 容器可以包括一些应用镜像中不存在的实用工具和安装脚本。你可以在 Pod 的规约中与用来描述应用容器的 containers 数组平行的位置指定 Init 容器。在 Kubernetes 中,边车容器 是在主应用容器之前启动并持续运行的容器。本文介绍 Init 容器:在 Pod 初始化期间完成运行的容器。

2024-05-17 16:54:04 779

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod / Pod 的生命周期

此文档从 Kubernetes 官网摘录本页面讲述 Pod 的生命周期。Pod 遵循预定义的生命周期,起始于 Pending 阶段, 如果至少其中有一个主要容器正常启动,则进入 Running,之后取决于 Pod 中是否有容器以失败状态结束而进入 Succeeded 或者 Failed 阶段。在 Pod 运行期间,kubelet 能够重启容器以处理一些失效场景。在 Pod 内部,Kubernetes 跟踪不同容器的状态并确定使 Pod 重新变得健康所需要采取的动作。

2024-05-17 14:44:02 892

原创 Kubernetes 文档 / 概念 / 工作负载 / Pod

说明:为了运行 Pod,你需要提前在每个节点安装好容器运行时。Pod 的共享上下文包括一组 Linux 名字空间、控制组(cgroup)和可能一些其他的隔离方面, 即用来隔离容器的技术。在 Pod 的上下文中,每个独立的应用可能会进一步实施隔离。Pod 类似于共享名字空间并共享文件系统卷的一组容器。Kubernetes 集群中的 Pod 主要有两种用法:运行单个容器的 Pod。"每个 Pod 一个容器"模型是最常见的 Kubernetes 用例;

2024-05-17 09:01:46 634

原创 Kubernetes 文档 / 概念 / 工作负载

例如,如果你希望运行一组 Pod,但要求所有 Pod 都可用时才执行操作 (比如针对某种高吞吐量的分布式任务),你可以基于定制资源实现一个能够满足这一需求的扩展, 并将其安装到集群中运行。例如,当在你的集群中运行了某个 Pod,但是 Pod 所在的 节点 出现致命错误时, 所有该节点上的 Pod 的状态都会变成失败。不过,为了减轻用户的使用负担,通常不需要用户直接管理每个 Pod。在 Kubernetes 中,无论你的负载是由单个组件还是由多个一同工作的组件构成, 你都可以在一组 Pod 中运行它。

2024-05-15 10:51:42 381

原创 Kubernetes 文档 / 概念 / 容器 / 容器生命周期回调

回调使容器能够了解其管理生命周期中的事件,并在执行相应的生命周期回调时运行在处理程序中实现的代码。

2024-05-15 10:40:56 335

原创 Kubernetes 文档 / 概念 / 容器 / 容器运行时类(Runtime Class)

此文档从 Kubernetes 官网摘录RuntimeClass 是一个用于选择容器运行时配置的特性,容器运行时配置用于运行 Pod 中的容器。

2024-05-14 17:26:16 926

原创 Kubernetes 文档 / 概念 / 容器 / 容器环境

此文档从 Kubernetes 官网摘录。

2024-05-14 16:51:49 320

原创 Kubernetes 文档 / 概念 / 容器 / 镜像

此文档从 Kubernetes 官网摘录容器镜像(Image)所承载的是封装了应用程序及其所有软件依赖的二进制数据。容器镜像是可执行的软件包,可以单独运行;该软件包对所处的运行时环境具有良定(Well Defined)的假定。

2024-05-14 15:43:43 840

原创 Kubernetes 文档 / 概念 / 容器

此文档从 Kubernetes 官网摘录每个运行的容器都是可重复的;包含依赖环境在内的标准,意味着无论你在哪里运行它都会得到相同的行为。容器将应用程序从底层的主机设施中解耦。这使得在不同的云或 OS 环境中部署更加容易。Kubernetes 集群中的每个节点都会运行容器, 这些容器构成分配给该节点的 Pod。单个 Pod 中的容器会在共同调度下,于同一位置运行在相同的节点上。

2024-05-14 11:43:57 316

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 混合版本代理

此文档从 Kubernetes 官网摘录。

2024-05-14 11:01:25 300

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 垃圾收集

此文档从 Kubernetes 官网摘录垃圾收集(Garbage Collection)是 Kubernetes 用于清理集群资源的各种机制的统称。

2024-05-14 10:15:07 322

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 容器运行时接口(CRI)

Kubernetes 文档 / 概念 / Kubernetes 架构 / 容器运行时接口(CRI)

2024-05-11 17:13:04 276

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 关于 cgroup v2

API 中单个统一的层次结构设计更安全的子树委派给容器更新的功能特性, 例如压力阻塞信息(Pressure Stall Information,PSI)跨多个资源的增强资源分配管理和隔离统一核算不同类型的内存分配(网络内存、内核内存等)考虑非即时资源变化,例如页面缓存回写。

2024-05-11 11:24:28 417 1

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 云控制器管理器

此文档从 Kubernetes 官网摘录组件 cloud-controller-manager 是指云控制器管理器, 一个 Kubernetes 控制平面组件, 嵌入了特定于云平台的控制逻辑。云控制器管理器(Cloud Controller Manager) 允许将你的集群连接到云提供商的 API 之上, 并将与该云平台交互的组件同与你的集群交互的组件分离开来。

2024-05-11 10:41:42 393

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 租约

此文档从 Kubernetes 官网摘录分布式系统通常需要租约(Lease);租约提供了一种机制来锁定共享资源并协调集合成员之间的活动。在 Kubernetes 中,租约概念表示为 coordination.k8s.io API 组中的 Lease 对象, 常用于类似节点心跳和组件级领导者选举等系统核心能力。

2024-05-06 11:38:20 221

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 控制器

此文档从 Kubernetes 官网摘录在 Kubernetes 中,控制器通过监控集群的公共状态,并致力于将当前状态转变为期望的状态。

2024-05-06 11:02:41 659

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 节点与控制面之间的通信

此文档从 Kubernetes 官网摘录本文列举控制面节点(确切地说是 API 服务器)和 Kubernetes 集群之间的通信路径。

2024-05-06 09:30:09 803

原创 Kubernetes 文档 / 概念 / Kubernetes 架构 / 节点

此文档从 Kubernetes 官网摘录节点上的组件包括 kubelet、 容器运行时以及 kube-proxy。

2024-05-03 16:03:41 633

原创 Kubernetes 文档 / 概念 / 概述 / Kubernetes 对象

此文档从 Kubernetes 官网摘录中文地址英文地址在 Kubernetes 系统中,Kubernetes 对象是持久化的实体。Kubernetes 使用这些实体去表示整个集群的状态。哪些容器化应用正在运行(以及在哪些节点上运行)可以被应用使用的资源关于应用运行时行为的策略,比如重启策略、升级策略以及容错策略。

2024-05-02 16:43:55 409 1

原创 Kubernetes 文档 / 概念 / 概述

Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,为声明式配置和自动化提供便利条件。

2024-05-02 11:53:02 640

原创 Kubernetes 文档 / 入门 / 最佳实践

Kubernetes(K8S)最佳实践

2024-05-01 18:02:46 874

原创 Kubernetes(K8S) — 生产环境

不过,如果你预期服务请求会随着时间增长,或者因为类似季节或者特殊事件的原因而发生剧烈变化, 你就需要规划如何处理请求上升时对控制面和工作节点的压力,或者如何缩减集群规模以减少未使用资源的消耗。无论你是自行构造一个生产用 Kubernetes 集群还是与合作伙伴一起协作, 请审阅下面章节以评估你的需求,因为这关系到你的集群的控制面、工作节点、用户访问以及负载资源。添加节点到集群中:如果你自行管理你的集群,你可以通过安装配置你的机器, 之后或者手动加入集群,或者让它们自动注册到集群的 API 服务器。

2024-04-30 16:41:26 1096 1

原创 hive metatool 使用说明

metatool 使用说明。

2024-04-07 11:52:08 272

原创 Hive SchemaTool 命令详解

Hive schematool 是 hive 自带的管理 schema 的相关工具。

2024-04-07 11:30:52 861 1

原创 Spark SizeTrackingAppendOnlyMap 相关源代码分析

SizeTrackingAppendOnlyMap 在 ExternalAppendOnlyMap 中使用,当 map 中对象占用的内存大小超过一定阈值时,把 数据 spill 到磁盘。所以 SizeTrackingAppendOnlyMap。

2024-03-26 16:06:53 588 1

原创 spark-shuffle-site.xml 配置项

在 NodeManager 启动 spark shuffle,可以配置 spark-shuffle-site.xml,设置 spark-shuffle 的参数。

2024-03-18 20:58:24 149

原创 Spark Executor decommission 原理分析

Spark Executor decommission 最初是 AWS 为了 Spot 节点和 Spot Block 节点配置的, Spot 节点仅有正常节点几分之一的价格,但是可能在任何时间收回,收回的时候仅给 120 秒的缓冲期。如果正常的 executor 地址,则从 executor 读取,如果是 fall back 地址,则调用 FallBackStorage.read 读取数据块。开启一个线程,不断检查 decomission 状态,如果 decommission 成功,则。

2024-03-06 14:18:13 716

原创 Spark Shuffle 方案概览

依赖 YARN 框架,Map 任务计算完后,每个 shuffle partition 的数据被推往固定的 ESS, 在 ESS 端进行合并, 合并的 ESS 称为 Merger Location。Reduce 任务计算时,先从 Merger Location 读取 Merge 后的 shuffle 数据,缺少的数据再从原来的 ESS 读取。Executor 在没有计算任务时,把 shuffle 数据迁移到正常的 Executor 和远程存储上,如bos,然后退出。

2024-03-05 14:12:39 780

原创 Spark Shuffle Tracking 原理分析

Shuffle Tracking 是 Spark 在没有 ESS(External Shuffle Service)情况,并且开启 Dynamic Allocation 的重要功能。如在 K8S 上运行 spark 没有 ESS。本文档所有的前提都是基于以上条件的。如果开启了 ESS,那么 Executor 计算完后,把 shuffle 数据交给 ESS, Executor 没有任务时,可以安全退出,下游任务从 ESS 拉取 shuffle 数据。

2024-03-01 10:56:04 1158

原创 Hive 严格模式设置

Hive 在早期使用参数来决定是否执行严格模式, 其值为 strict 或者 nostrict. 当其值为strict时,执行严格模式,如从分区表查询时,过滤条件必须有分区字段。在 Hive 3.1.3 中,因为 hive.mapred.mode 比较粗暴,为了能更好的在不同地方是否严格模式,在不同的地方用各自的参数。为了使用不同的参数,hive.mapred.mode 已经被废弃,不能设置,如果设置了,则以 hive.mapred.mode 值为准,新的参数不生效。

2024-02-25 11:59:46 857

Hive 性能测试程序,https://github.com/hortonworks/hive-testbench 编译

Hive 性能测试程序,https://github.com/hortonworks/hive-testbench 编译

2023-02-24

Tez 的设计者在 Hadoop 大会上的分享

1. Tez 的设计思想和解决的问题。

2022-03-15

Transactional Operations in Apache Hive: Present and Future

Hive 事务设计

2022-03-01

The Log-Structured Merge-Tree (LSM-Tree).pdf

The Log-Structured Merge-Tree (LSM-Tree).pdf

2021-06-22

Distributed cycle detection in large-scale sparse graphs.pdf

分布式大规模环检测的计算方法。In this paper we present a distributed algorithm for detecting cycles in large-scale directed graphs, along with its correctness proof and analysis. The algorithm is then extended to find strong components in directed graphs. We indicate an application to detecting cycles in number theoretic functions such as the proper divisor function. Our prototype implementation of the cycle detection algorithm, when applied to the proper divisor function, detects all sociable groups of numbers (cycles in the proper divisor function) up to 107.

2020-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除