计算机是一个巨大的、不断增长的领域,让学习或保持新鲜变得困难。如果有地图或海报来帮助你,学习起来会更容易。我创建了计算体系结构地图(MOCA)就是为了做到这一点。
MOCA每季度更新一次,为您提供整个AWS环境的视图。MOCA海报现已发售:
请注意,新冠肺炎的订单需要更长的时间才能到达您的手中。我使用按需打印投递发货人,这意味着当您订购海报时,它会在离您最近的设施打印(减少国际运输和延误),然后直接邮寄给您。这也意味着,如果需要,我们可以将打印更改到不同位置的备份设备。所有印刷机构都已采取措施保护他们的团队(耶!)。加上额外的安全措施。希望这将减少您可能遇到的任何延误,但请原谅我,因为邮政系统也非常繁忙。
本文介绍了MOCA的原因,并将其应用于亚马逊网络服务(Amazon Web Services,AWS)。为您和您的整个团队提供了解AWS云的方式将在多个方面为您提供帮助:
如果您刚刚开始使用AWS,那么MOCA将帮助您创建整个AWS环境的心理模型。通过简单的语言描述,您可以了解每个产品的功能。
如果您是AWS的老手,那么它将帮助您了解最新产品,以及每种产品的替代产品是什么(相似的产品相邻)。您可以查看产品拥有哪些资源,以及其基础结构是非托管的还是托管的。
作为一名AWS专家,它可确保您了解所有AWS产品,为您提供丰富的选择,并帮助您学习认证。
我在AWS担任了8年的解决方案架构师(SA),为客户提供架构方面的建议。我有幸与现场团队和工程团队一起工作,并最终构建并启动了AWS服务。即使作为AWS的一名工程师,我仍然发现很难学习和理解AWS的所有产品。
据我最新统计,AWS有257种产品。如果您只想构建AWS的心理模型,您将如何开始?AWS的全貌是什么样子的?我已经与客户进行了数千次对话,我不断听到并仍然听到的问题是:
我怎样才能确保我们不是在重新发明轮子呢?我们是否可以使用AWS产品来加快交付速度?
看到产品名称或营销图表,却不能理解产品的实际功能,可能会令人沮丧。Amazon S3可能是AWS最容易识别的产品,但对于新用户来说,它是什么或做什么并不明显。
MOCA的目标是回答这些问题,并创建一种一致的方式来理解计算环境。在这篇文章中,我们将MOCA应用于AWS。希望MOCA将是一种永恒的方法,但当然,随着AWS的发展,我们的计划是保持MOCA的新鲜性和灵活性-根据需要和创新需求发展方法。
我们可以向前人学习,其他领域是如何创建地图的?
林奈分类学:组织生命形式,由卡尔·林奈创建。使用三个王国(动物、植物和矿物),他的方法创造了现代分类学。已经扩大和提炼了加班时间,特别是在DNA的影响下。
元素周期表:对化学元素进行分类,许多不同的人影响了它的最终形状,但最著名的是德米特里·门捷列夫(Dmitri Mendeleev)。原子序数用来按组和周期排列元素,它在包括化学和核物理在内的许多科学中都有使用。已经通过光谱学和合成元素得到了发展。
地质时间尺度:组织岩层,包括尼古拉斯·斯特诺(Nicolas Steno)在内的许多人创造的岩层。将时间分成亿万年、年代、时期、纪元和年代。它被用于许多科学,包括地质学和古生物学(侏罗纪恐龙!)。随着放射性测年技术(如碳测年)的出现,已经变得更加准确。
这些都为理解一个领域提供了一个模型。它们中的每一个都允许您了解一个字段的范围,并查看它们是如何组合在一起的。我可以为计算架构创建地图吗?这需要什么,我如何确保它是有用的?
看看可能是最强大的例子,周期表,它有一些我们想要复制的特征:
西蒙·沃德利以古代塞姆皮莱山口战役为例,讲述了地图在军事史上的重要性。很明显,SWOT图在战斗中不如地图有用,西蒙在“对态势感知进行分类”一书中呼吁说,是什么让地图变得有用:
理想情况下,我想要满足所有这些要求才能做出一张有用的地图。我还想创建一个底层模型,使我能够对计算体系结构进行推理。有了模型,我可以绘制的不仅仅是一张地图,我还可以用它来推断AWS产品。
我的主要目标是帮助正在学习或使用AWS的人。所以我关注的是产品的意图,而不是学术上正确的定义。很多产品都有多种用途,但我关注的是它的主要用途,团队在创建产品时的意图是什么。
创建第一个轴是具有挑战性的,因为与化学不同的是,计算体系结构没有原子序数。看看AWS产品,有一些明显的群体。Amazon S3、Amazon SQS和Amazon EC2是AWS推出的前三款产品。作为一名工程师,我认为这些是:S3是存储产品,SQS是消息传递产品,EC2是计算产品。如果您将此工程观点应用于整个AWS,您会发现计算架构的三个领域:
回想起来,这三个领域似乎显而易见,它们工作在描述计算机如何工作的微观层面(冯·诺伊曼体系结构),它们工作在AWS产品的宏观层面。
当我研究所有AWS产品时,我开始将这些领域视为一个重叠的领域。有些产品非常纯粹,Amazon EBS(一种虚拟存储设备)很好地放在数据下面,而Amazon RDS则是数据和执行的混合体。随着我开发更多的产品,我开始意识到区域的交叉点和区域本身一样重要。
许多产品理所当然地位于这些领域的交叉点,例如Amazon RDS就是这样一种产品,它将数据和计算结合为一个数据库。这导致我为交点添加了面积:
我把这些次要区域命名为[第一区域]-[第二区域],很明显这个轴看起来更像一个圆而不是一条线。";移动数据";位于";移动";的右侧,但也在";数据";的左侧。
加上交叉点,我们的第一个轴由六个区域组成。圆轴在图形上会很有趣,但我觉得交叉点应该有自己的身份。此外,轴的曲面可能会使可读性变得困难。这就产生了一个六边形:一个六边形。
因此,有了第一个轴,我们现在可以将产品放置在60°的分段中。但是,在我们的地图上,同一细分市场中的产品是如何划分的呢?这就是第二个轴的目的,距离似乎很自然。以下几个示例产品可能会有所帮助:
全球互联网工作场所移动移动。人类人类。
我们如何展示每一件产品呢?我们可以采用元素周期表的紧凑形式,对每个产品都这样做。例如,我们可以用虚线(面积指示器)来指示产品属于哪个区域。以及提供有关以下内容的信息:
变体:与产品相关的子产品计数(左上角),包括助手产品,如AWS Performance Insights以及变体(Amazon RDS for MySQL、Amazon RDS for PostgreSQL、Amazon Aurora等)。
现在我们可以将区域轴、范围轴和单个产品这三个元素组合在一起。由此我们可以生成可视地图:[单击以缩放]
制作“计算体系结构图”花了几百个小时,我介绍错误的机会很大。当然,AWS也在不断更新和发布新产品。因此,如果您发现我的任何错误或可以改进的地方,请通过电子邮件(figmentEngine.com的mocagon)与我联系。
新鲜度:我将每季度更新一次计算架构地图,更新新产品和更改。
探索:我将探索如何使用底层模型,例如,本文使用它来自动对产品名称进行注释。我还将研究该模型如何帮助您-任何要求请发电子邮件给我(mocagon at figmentEngine.com)。
我发现构建这个很有用,但当然我只是一个人,所以请发送反馈!这个页面会随着我修正错误和取得进展而更新。
本文档仅供参考。您有责任对本文档中的信息进行您自己的独立评估。在做出任何决定之前,您应始终查阅AWS的文档。