Amazon Kinesis

概念

  • 处理AWS上大量流数据的数据平台
  • Kinesis Streams 用于搜集数据,Client Library 用于分析后的展示
  • 构建用于处理或分析流数据的自定义应用程序
  • 可以支持从数十万中来源捕获和存储TB级的数据,如网站点击流、财务交易、媒体馈送、IT日志等
  • 使用IAM限制用户和角色对Kinesis的访问,使用角色的临时安全凭证可以提高安全性
  • Kiesis只能使用SSL加密进行访问

Kinesis组件

Kinesis Data Firehose

  • 加载大量流数据到AWS服务中
  • 数据默认被存储在S3中,从S3还可以再被进一步转存到Redshift
  • 数据也可以被写入到ElaticSearch中,并且同时备份到S3

Kinesis Data Streams:

  • 自定义构建应用程序,实时分析流数据
  • 利用AWS开发工具包,可以实现数据在流中移动时仍然能被处理,从而接近实时
  • 为了接近实时,处理的复杂度通常较轻
  • 创建者 Producer 持续将数据推送进Data Streams
  • 数据在DataStream 由一组组分片(Shards)组成,每个分片就是一条记录,通过不断分片实现几乎无限的扩展能力
  • 使用者 Comsumer 会实时对Data Steams的内容进行处理,并且将结果推送到不同的AWS服务
  • 数据在Stream中是临时的,默认存储24小时,最大可以设置为7天

Kinesis Data Analytics

  • 使用标准SQL实时分析流数据

Kinesis Video Streams

  • 捕获、处理并存储视频流用于分析和机器学习

适用场景

  • 大量的数据摄取
  • 海量流数据的实时处理

Elastic MapReduce ( EMR)

概念

  • 提供完全托管的按需 Hadoop 框架
  • 启动EMR集群的必选项
  • 集群节点的实例类型
  • 集群中的节点数量
  • 希望运行的Hadoop版本
  • Hadoop集群选择存储类型至关重要,主要因素是集群是持久的还是瞬态的
  • 需要持续运行并分析数据的集群是持久集群
  • 按需启动并在完成后立即停止的集群为瞬时集群
  • 默认不限制EMR集群数量,但限制用于EMR节点总数为20个,可申请扩展
  • 可以从S3以及其他任何位置摄取数据
  • Hadoop 日志文件默认存储在S3中,且不支持压缩
  • EMR支持竞价实例
  • EMR需要在一个可用区部署,不支持跨可用区部署,通常建议选择数据所在的区域
  • 集群启动通常在15分钟内可以开始进行数据处理
  • EMR允许使用磁性、SSD和 PIOPS SSD三种EBS卷。
  • 适用场景
    • 日志处理,点击流分析,基因学和生命科学

文件系统

HDFS

  • Hadoop标准文件系统
  • 所有数据都在多个实例中被复制保证持久性
  • HDFS可以利用EBS存储确保在关闭集群时不丢失数据
  • 非常适合于持久的集群

EMRFS

  • HDFS在AWS S3上的实现,将数据保存在S3中
  • 可以使用所有Hadoop生态的工具系统
  • 非常适合于瞬时集群

EMR NoteBooks

  • EMR Notebooks 提供基于 Jupyter Notebook 的托管环境,可供数据科学家、分析员和开发人员准备数据并使其可视化、与同伴协作、构建应用程序,并使用 EMR 群集执行交互分析。
  • 您可以使用 EMR Notebooks 构建 Apache Spark 应用程序,并且轻而易举地在 EMR 群集上运行交互查询。多个用户可以直接从控制台创建无服务器笔记本、将其挂载到现有的共享 EMR 群集,或直接从控制台提供至少 1 个节点的并立即开始使用 Spark 进行实验。

安全设置

  • EMR默认将设置两个EC2安全组: 主节点和从属节点

    • 主安全组

      • 定义一个端口用于与服务的通信
      • 打开的SSH端口,允许启动时指定的SSH密钥进入实例
      • 默认不允许被外部实例访问,但可设置
    • 从属安全组
      • 只允许与主实例进行交互
  • 默认使用SSL向S3传送数据
  • 可以支持对集群进行标记,最多10个标记,但不支持基于标记的IAM许可。
  • 使用IAM权限和角色控制对EMR的访问和控制
  • 可以设置允许非Hadoop用户将作业提交至集群的权限
  • 可以将EMR放入到私有VPC中实现额外的保护

AWS Data Pipeline

概念

  • 实现在指定时间间隔,在AWS资源和本地数据之间可靠地处理和移动数据
  • 您可以快速轻松地部署管道,无需分心管理日常数据操作,从而让您能够集中精力从该数据获取所需的信息。您只需为您的数据管道指定所需数据源、时间表和处理活动即可。
  • 与SWF相比,Data Pipeline 专门设计用于简化大多数数据驱动工作流程中常见的特定步骤。例如:在输入数据符合特定准备就绪标准后执行活动,轻松在不同数据存储之间复制数据,以及调度链接的转换。这种高度具体的侧重点意味着 Data Pipeline 工作流定义可以快速创建,并且无需代码或编程知识。
  • 定期访问存储数据,并对数据进行大规模处理,并且将结果转换为AWS服务

  • 利用Pipeline的定义安排和运行任务,可以每15分钟,每天,每周运行等
  • 数据节点是pipeline流水线读取和写入数据的位置,可以是S3,MySQL,Redshift等AWS或本地存储
  • Pipeline通常需要配合其他服务执行预定义的任务,如EMR,EC2等,并在执行完成后自动关闭该服务
  • Pipeline在编排的过程支持条件语句
  • 若某项活动失败,默认会不断重试,所以需要配置限制重试次数或未成功时采取的行动
  • 每个账户默认支持100个管道,单一管道中可以拥有100个对象,可以申请扩展

属性

  • 管道

    • 即 AWS Data Pipeline 资源,其中包含由执行业务逻辑所需的数据源、目的地和预定义或自定义数据处理活动所组成的关联数据链的定义。
  • 数据节点
    • 数据节点代表您的业务数据。例如,数据节点可以表示特定的 Amazon S3 路径。AWS Data Pipeline 支持表达式语言,使其更容易引用常态生成的数据。
  • 活动
    • 是 AWS Data Pipeline 代表您启动的操作,它是管道的一部分。示例活动包括 EMR 或 Hive 作业、复制、SQL 查询或命令行脚本。
  • 前提条件
    • 前提条件是指成熟度检查,可选择性地将其关联到数据源或活动。如果数据源具有前提条件检查,那么必须先成功完成检查,然后才能启动任何需要用到该数据源的活动。如果活动具有前提条件,那么必须先成功完成检查,然后才能运行活动。
  • 时间表
    • 定义管道活动运行的时间和服务预计的可使用数据的频率。可以选择时间表结束日期,在此时间后,AWS Data Pipeline 服务不执行任何活动。
    • 当您将时间表与活动关联起来后,活动就会按时间表运行。当您将时间表与数据源关联起来,就表示您告诉 AWS Data Pipeline 服务,您期望数据会按照该时间表更新。

适用场景

  • 非常适用于常规批处理的ETL流程,而不是连续数据流

Amazon Elastic Transcoder

  • 一种在线媒体转码的工具
  • 将视频从源格式转换到其他的格式和分辨率,以便在手机、平板、PC等设备上播放
  • 一般来说,将需要转码的媒体文件放在AWS S3的存储桶上,创建相应的管道和任务将文件转码为特定的格式,最后将文件输出到另一个S3的存储桶上面去。
  • 也可以使用一些预设的模板来转换媒体格式。
  • 可以配合Lambda函数,在有新的文件上传到S3后触发函数代码,执行Elastic Transcoder并自动进行媒体文件的转码。

Amazon Athena

  • Amazon Athena 是一种交互式查询服务,让您能够轻松使用标准 SQL 分析 Amazon S3 中的数据。Athena 没有服务器,因此您无需管理任何基础设施,且只需为您运行的查询付费。
  • Athena 简单易用。只需指向您存储在 Amazon S3 中的数据,定义架构并使用标准 SQL 开始查询就可在数秒内获取最多的结果。
  • 使用 Athena,无需执行复杂的 ETL 作业来为数据分析做准备。这样一来,具备 SQL 技能的任何人都可以轻松快速地分析大规模数据集。
  • 支持的数据格式包括 JSON,Apache Parquet, Apache ORC

Amazon Elasticsearch Service

  • Amazon Elasticsearch Service 是一项完全托管的服务,方便您部署、保护和运行大量 Elasticsearch 操作,且不用停机。
  • 该服务提供开源 Elasticsearch API、受托管的 Kibana 以及与 Logstash 和其他 AWS 服务的集成,支持您安全获取任何来源的数据,并开展实时搜索、分析和可视化。
  • 使用 Amazon Elasticsearch Service 时,您只需按实际用量付费,没有预付成本或使用要求。有了 Amazon Elasticsearch Service,您无需承担运营开销,便可获得所需的 ELK 堆栈。

AWS X-Ray

  • AWS X-Ray 可以帮助开发人员分析与调试分布式生产应用程序,例如使用微服务架构构建的应用程序。
  • 借助 X-Ray,您可以了解应用程序及其底层服务的执行方式,从而识别和排查导致性能问题和错误的根本原因。
  • X-Ray 可在请求通过应用程序时提供请求的端到端视图,并展示应用程序底层组件的映射。
  • 您可以使用 X-Ray 分析开发和生产中的应用程序,从简单的三层应用程序到包含上千种服务的复杂微服务应用程序。

AWS 数据分析服务(十)的更多相关文章

  1. AWS专线服务总结和疑问

    1.AWS专线服务的入口, 从介绍页上可以看到,有如下功能: (1)专线可以连接AWS云主机和传统的数据中心或者分支机构. (2)专线可以连接AWS云主机和托管区的主机. 连接要素: (1)需要使用V ...

  2. Aws云服务EMR使用

    Aws云服务EMR使用 创建表结构 创建abc库下的abc_user_i表字段s3://abc-server/abc-emr/shell/ABC_USER_HIVE.q: EXTERNAL 指定为外部 ...

  3. [转帖]通俗解释 AWS 云服务每个组件的作用

    你有听说过 ContainerCache,ElastiCast 和 QR72 这些 AWS 的新服务吗? 没有就对了,这些都是我编的:) 不过,AWS 有 50 多个服务,从名称也不能看出这些服务是做 ...

  4. AWS向中国有限预览客户推出多级别AWS支持服务

     2014年9月26日 在AWS中国(北京)区域有限预览服务开展的过程中.很多客户都提出了对AWS支持服务(AWS Support)的需求. AWS客户在向云端部署系统,日常运营维护以及关键性项目实 ...

  5. AWS携手上海嘉定政府推出首个联合孵化器 为创业公司拓展AWS云服务可用资源

    2014年10月17日 AWS Activate创业加速计划为中国创业公司提供各种支持,包含AWS全球和中国区服务抵扣券.培训和开发人员支持.同一时候,AWS携手上海嘉定政府成立首家联合孵化器,为创业 ...

  6. 注册免费试用12个月的亚马逊AWS云计算服务

    注册: 注册地址 点击页面中间的创建免费用户,进入下一步页面: 然后就是填写各种个人信息的页面了: 填写付款信息: 付款信息会进行一个电话验证,这里需要先填写对应的电话号码和验证码,然后点立刻呼叫我, ...

  7. AWS 存储服务(三)

    目录 AWS S3 业务场景 挑战 解决方案 S3的好处 S3 属性 存储桶 Buckets 对象 Object S3 特性 S3 操作 可用性和持久性 一致性 S3 定价策略 S3高级功能 存储级别 ...

  8. AWS S3服务使用

    AWS S3是亚马逊的一种文件存储服务使用方便. 一.配置服务 public static class AWS_S3ClientInfo { private static readonly strin ...

  9. 基于php的AWS存储服务

    近几天用到了aws的s3存储服务,公司内部的完全兼容aws并对其进行了封装,之前也用过,现在把经验总结一下. 既然要用,首先需要安装sdk,下边提供了几种安装方法 方法一:使用composer安装 1 ...

随机推荐

  1. MongoDB 复制集监控

    1.复制集状态查询:rs.status() 2.查看当前副本集oplog状态:rs.printReplicationInfo() 3.查看复制延迟:rs.printSlaveReplicationIn ...

  2. shell脚本编程之条件判断

    条件测试类型: 整数测试 字符测试 文件测试 条件测试的表达式的三种方法: 1.[ expression ] 命令测试 2.[[ expression ]] 关键字测试 3.test expressi ...

  3. (3)Go运算符

    运算符 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算数运算符 运算符 描述 + 相加 - 相减 * 相乘 / 相除 % 求余 注意: ++(自增)和--(自 ...

  4. Filter中实现页面转发

    在过滤器中实现页面转发时,报错 java.lang.IllegalStateException:Cannot forward after response has been committed 转发代 ...

  5. Java SpringBoot全局错误处理类,返回标准结果

    package demo.utils; import com.alibaba.fastjson.JSON; import demo.controller.ProductController; impo ...

  6. GO语言strconv包的使用

    Go语言中strconv包实现了基本数据类型和其字符串表示的相互转换. strconv包 strconv包实现了基本数据类型与其字符串表示的转换,官方文档中文版. string与int类型转换 Ato ...

  7. V语言 基本使用

    新手必看-如何安装配置vlang运行环境(linux,macOS篇) 前置条件 发稿截止前只有Linux 或者 macOS系统能编译通过. 你需要安装clang或gcc 如果是macOS上需运行xco ...

  8. Oracle语法 及 SQL题目(三)

    目录 SQL题目六 第一个问题思路(查询酒类商品的总点击量) 第二个问题思路(查询每个类别所属商品的总点击量,并按降序排列) 第三个问题思路(查询所有类别中最热门的品种(点击量最高),并按点击量降顺序 ...

  9. Java多线程相关的API方法以及作用摘要

    wait() 会让当前运行线程 阻塞,并释放对应的对象锁, 一般由当前线程持有的对象锁调用 x.wait(): 当前线程必须拥有此对象的monitor(即锁),才能调用此对象的wait()方法能让当前 ...

  10. Python ( )、[ ]、{}的区别

    python语言最常见的括号有三种,分别是:小括号( ).中括号[ ]和大括号也叫做花括号{ },分别用来代表不同的python基本内置数据类型. python中的小括号( ):代表tuple元组数据 ...