首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

从0到1搭建大数据平台之调度系统

记得第一次参与大数据平台从无到有的搭建,最开始任务调度就是用的Crontab,分时日月周,各种任务脚本配置在一台主机上。crontab 使用非常方便,配置也很简单。刚开始任务很少,用着还可以,每天起床巡检一下日志。随着任务越来越多,出现了任务不能在原来计划的时间完成,出现了上级任务跑完前,后面依赖的任务已经起来了,这时候没有数据,任务就会报错,或者两个任务并行跑了,出现了错误的结果。排查任务错误原因越来麻烦,各种任务的依赖关系越来越负责,最后排查任务问题就行从一团乱麻中,一根一根梳理出每天麻绳。crontab虽然简单,稳定,但是随着任务的增加和依赖关系越来越复杂,已经完全不能满足我们的需求了,这时候就需要建设自己的调度系统了。

02

【 airflow 实战系列】 基于 python 的调度和监控工作流的平台

本文介绍了 Airflow 这款开源的 DAG 流程编排框架,从架构、原理、优点、使用场景、实现细节、扩展、ETL、数据依赖、资源依赖、任务依赖、安全、Hook、日志、任务定义、执行、调度、监控、运维、社区、文档等方面进行了详细的介绍。Airflow 旨在解决 Celery 和 Kubernetes 等工具无法解决的问题,通过实践证明了 DAG 流程编排的价值。Airflow 的架构设计巧妙,实现了分布式、高可用的 DAG 执行引擎。Airflow 使用 Python 实现,支持多种 DAG 定义格式,可与主流的分布式数据存储系统无缝集成。Airflow 还支持云原生技术,可以轻松地在 Kubernetes 上运行。通过本文的讲解,读者可以了解到 Airflow 的设计理念、架构、使用方式和实现细节,掌握如何在分布式环境下实现 DAG 流程编排。同时,本文还提供了实际案例,帮助读者更好地理解 Airflow 的使用方式。

00

如何使用MediaCodec解码音视频

播放一个音视频文件的时候,我们知道需要经过解协议->解封装->解码音频/视频->音频/视频同步->渲染播放这几个步骤,其中解码音频/视频是整个流程中最核心的一个环节.每个步骤的详细解释可以参考上篇文章Android中如何使用OpenGL播放视频 Android平台下解码音视频可以采用软件解码如ffmpeg,或使用硬件解码如MediaCodec来实现软件解码:利用CPU进行解码处理,这种方式会加大CPU负担并增加功耗,它的优点则是具有更强的适配性;硬件解码:调用GPU的专门解码音视频的模块来处理,减少CPU运算,降低功耗.由于Android机型碎片化比较严重,硬件解码的实现又依赖于具体的厂商,所以硬件解码的适配性并不是那么友好一般而言,在Android设备支持硬解的情况下优先使用Android设备的硬件解码,减少CPU占用,降低功耗;在硬解不支持的情况下选择使用软解码,至少让音视频能正常播放. 软硬结合,才是王道->_-> 当然,本篇文章所描述的是使用硬件解码MediaCodec的方式来解码一个视频文件. MediaCodec简介 android.media.MediaCodec是从API16开始由Android提供的供开发者能更加灵活的处理音视频的编解码组件,与MediaPlayer/MediaRecorder等high-level组件相比,MediaCodec能让开发者直接处理具体的音视频数据,所以它是low-level API它通常与MediaExtractor, MediaSync, MediaMuxer, MediaCrypto, MediaDrm, Image, Surface和AudioTrack一起使用. 基本架构

02
领券