朋友圈技术范儿装X指南-有向无环图
这是我的第70篇原创
拼奢侈品装名媛,实在是太LOW了。真正的奢侈品不是外物,而是知识!是科学!你看我,从来没告诉过任何人,我开过私人飞机。
所以,今天要给大家分享一个可以在朋友圈装X的词:有向无环图,英文简称DAG。这个词太高端了,高端到你的朋友圈里90%以上的人不认识,但是又基本和你的工作、生活扯上关系。一股高处不胜寒的技术直男高级感油然而生!
啥是有向无环图?
有向无环图(DAG)与烂大街的二叉树一样,都是一种拓扑结构。同属于图论的领域。你看,这逼格是不是顿时就起来了?
搞信息技术的大佬们,很会取名字,目的就是为了减少信息传输时的损耗。你看二叉树就很形象,就是分两个叉叉的树状结构。
有向无环图好像很高大上,其实拆开也很容易理解,就是整个图的形状是有方向的,但是有没有形成环。所以,二叉树其实也是一种有向无环图(DAG)。
这个玩意,可以用来做很多事情,咱一个一个来说。
ETL任务调度
玩过ETL的同学都知道,所有的ETL任务都是一个有向无环图(DAG)。
我会教所有玩ETL的同学这个概念。因为有些人真的会天马行空的设计出一个环状任务流。这个就是有环图了。有换图会直接报错,执行不了,因为A任务的启动,前置条件是后续的任务的结果。
有些同学逻辑思维能力强,虽然不知道有向无环图(DAG),但是天然就明白不能这么设计,这种人就是老天爷赏饭吃,天赋使然,令人艳羡。
但是如果情况特殊,真的有前置条件是后置任务的结果该咋办?有这种情况,但是肯定不是当前任务,而是相同任务的下一次执行。所以把结果存储下来,下次执行的时候读取一下就行了。
有经验的同学,会对任务进行合理的安排,既不冲突,又能高效。之前在数据倾斜的文章《点击查阅:12种方法,彻底搞定数据倾斜!》里,有一个方案是ETL预处理,其本质就是在数据输入之前,用ETL把数据整理的比较均匀,然后再传给Spark进行计算。这种方法实际上并没有减轻整个任务链的工作时间,但是能保证Spark的只占用较少的计算时间。我们可以在资源利用低谷,用ETL处理好数据,然后在凌晨资源利用高峰期进行计算,这样能削峰填谷,资源整体利用率高。
项目管理
好,现在开始考试,请听题:
这是信息系统项目管理师(高级职称)的一道考题,PMP里也会有。这个是不是很熟悉?这也是有向无环图(DAG)。这是计算关键路径,关键路径决定着整个项目的最长用时。如果我们需要压缩整个工期,应该从关键路径上下功夫。
上面那道题应该还比较简单,我们整点有难度的:
你可能会觉得奇怪,项目管理要学这个干啥?这些其实就是任务安排啊。任务前后有顺序,有依赖。在不改变关系的前提下,我们还要压缩工期,咋整?就得用上面的工具了。咱不能所有工作都是流水线,该并行就得并行,该资源调拨,就得调拨。我们得知道兵力往哪里部署是最能节省时间和成本的。这就得用到拓扑学中的有向无环图(DAG)了。一招一式,都是学问。
区块链
区块链的数据存储方式本质上是一个链表。就是一个严格按照顺序进行存储的表。
而且区块链的去中心化的设计思想,是集群中50%以上的节点都下载并认可这条数据,这个数据才被宣告有效,也就是得超过50%的节点下载并写入成功才可以。可想而知,这得多慢啊!所以区块链最大的弊端就是并发量不够。
目前区块链最热门的技术就是有向无环图(DAG)。这直接解决了区块链的链表线性存储效率低下的弊端。
区块链通过DAG进行交易认证,这比50%认可的链表可快多了!
朋友圈装X指南
大数据工程师版本:
今天整了个任务巡检有向无环图,完美解放人工巡检问题,下班回家,爽歪歪!
项目经理/产品经理版本:
呼呼呼,压缩工期太痛苦了,幸好哥学过DAG!
路人版本:
用有向无环图整理了一下工作计划,WLB,美美哒~!
注:WLB=Work-life balance,工作生活平衡。
配合以下文章享受更佳
装X词 | 布隆过滤器-抖音不重复推荐的秘密
干货 | 12种方法,彻底搞定数据倾斜!
装X词 | 鱼塘采样-统计学家怎么数鱼
如果你觉得有趣,就请帮忙分享一下,谢谢你了
朋友圈技术范儿装X指南-有向无环图相关推荐
- 朋友圈转发截图生成装逼工具源码
微信朋友圈截图模拟器源码,微信朋友圈装逼生成器大全,上传服务器即可使用!装逼必备!有条件的可以打包成APP 源代码地址:朋友圈转发截图生成装逼工具源码.zip - 蓝奏云
- 有向无环图(DAG)技术白话解读
区块链技术非常热门,但随着越来越多人使用比特币.以太坊等区块链,使得效率低下的问题越来越突出.尤其是2017年6月以来,ICO市场爆炸式增长,人们疯狂的购买以太坊用于投资ICO,导致以太坊网络经常严重 ...
- 神龙X-Dragon,这技术“范儿”如何?
戳蓝字"CSDN云计算"关注我们哦! 在CSDN总部会议室,阿晶首次见到了阿里云智能研究员.弹性计算技术负责人张献涛--这位不仅仅在阿里云智能内部,在业内也是响当当的虚拟化技术大牛 ...
- 神龙X-Dragon,这技术“范儿”如何?| 问底中国IT技术演进
在CSDN总部会议室,阿晶首次见到了阿里云智能研究员.弹性计算技术负责人张献涛--这位不仅仅在阿里云智能内部,在业内也是响当当的虚拟化技术大牛.现在回想起来,当时聊了没两句,阿晶就问了这样一个问题,& ...
- 神龙 X-Dragon,这技术“范儿”如何?| 问底中国 IT 技术演进
受访者 | 张献涛 采访者 | 刘晶晶 出品 | CSDN(ID:CSDNnews) 在CSDN总部会议室,阿晶首次见到了阿里云智能研究员.弹性计算技术负责人张献涛--这位不仅仅在阿里云智能内部,在业 ...
- 微信朋友圈技术之道:三个人的后台团队与每日十亿的发布量
概述 截止到2015年7月,微信每月活跃用户约5.49亿,朋友圈每天的发表量(包括赞和评论)超过10亿,浏览量超过100亿.得益于4G网络的发展,以上数据仍有很快的增长,而且相对于PC互联网时代,移动 ...
- 最新朋友圈转发截图生成装逼工具源码+实测可用
正文: 微信朋友圈截图模拟器源码,微信朋友圈装逼生成器大全,上传服务器即可使用,装x必备,有条件的可以打包成APP. 程序: wwmeg.lanzouw.com/ilVjI0b64ryd 图片:
- 微信朋友圈技术实现设想
前提 微信朋友圈是我们每天都在用的功能, 但是如果让你来实现一个微信朋友圈, 你会如何做呢? 我来简单设想一下. 实现功能 发朋友圈 评论动态 查看朋友圈(只能查看好友的) 查看评论(只能查看共同好友 ...
- java 和mysql做Android_基于Android和Java后台的朋友圈的设计和实现
我的CSDN: ListerCi 我的简书: 东方未曦 前言 这是秋招前做的一个应用,当时是想通过一个完整的项目来向面试官展现项目设计能力和实战能力,不过直到秋招最后很多面试官都没问这个,想来是他们觉 ...
最新文章
- crontab 备份mysql数据库_crontab定时备份mySQL数据库
- ubuntu 用命令行设置chrome的proxy
- String.format System.out.printf的用法-简单
- 使用atomic一定是线程安全的吗
- Error dialog box generic entry point
- 涨跌因子计算器下载哪里下载_小白计算器软件下载-小白计算器app下载 v1.0 安卓版...
- Java Web开发技术详解~Web的概念
- spss连接mysql_spssstatistics19.0配置odbc连接远程oracle数据库
- sql加载配置文件时出错:_SQL复制:基本设置和配置
- 卷积神经网络(CNN)的细节问题(滤波器的大小选择)
- python 等号 什么编码_Python运算符与编码
- php 发送图片,php+curl 发送图片处理代码分享
- we8iso8859p1 java_字符集WE8ISO8859P1 是不能改为ZHS16GBK的
- 手机连接电脑DCIM目录下文件夹和图片显示不全
- Windows系统怎么换硬盘图标
- 刘江川院士:边缘计算如何应对能源互联网的碎片化和复杂性? | CCF-GAIR 2020
- 代数数、超越数、代数函数、超越函数
- python 优点 英文_值得关注的 10 个 Python 英文博客
- Windows系统安装时,新硬盘手动命令创建主分区和逻辑分区
- 手机端input控制键盘弹出