

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 面向微软 Windows 概念的 Amazon Kinesis 代理
<a name="kinesis-agent-windows-concepts"></a>

了解面向微软 Windows 的 Amazon Kinesis 代理（适用于 Windows 的 Kinesis 代理）的主要概念可让您更轻松地在台式机和服务器机群上收集并流式传输数据到数据管道的剩余部分，以进行处理。

![图中描述了 Windows 源、管道和接收器的 Kinesis 代理，这些组件彼此之间以及与构件和 AWS 服务之间的关联。](http://docs.aws.amazon.com/zh_cn/kinesis-agent-windows/latest/userguide/images/KinesisAgentPipes.png)


此数据管道图说明了下列组件和流程：

服务器和台式机具有日志文件、事件和指标等构件，这些构件由 Windows 的一个或多个 Kinesis 代理收集*来源*。例如，可以选择从纯文本文件格式传输数据到对象。

然后，数据（在对象中或者文本形式）可以流向 Windows 的一个或多个 Kinesis 代理*管道*。一个管道将一个源连接到 Windows 的一个 Kinesis 代理*sink*。管道可以选择性地筛选出不必要的数据。

接收器可以选择性的将解析的数据转换为 JSON 或 XML 格式的对象。接收器将数据发送到特定的 AWS 服务，例如 Kinesis Data Streams、Kinesis Data Firehose 或 Amazon CloudWatch。

使用多个管道，一个源可以将相同的数据发送到多个接收器（例如，参阅图中的管道 **F** 和 **G**）。使用多个管道，不同源可以将数据流式传输到单个接收器（例如，参阅图中的管道 **A**、**B** 和 **C**）。还可以使用多个管道将数据从多个接收器流式传输到多个源。源、接收器和管道具有类型，同一个类型中可以有多个源、接收器或管道。

有关声明源、接收器和管道的配置文件示例，请参阅[适用于 Windows 的 Kinesis 代理配置示例](configuring-kaw-examples.md)。

**Topics**
+ [数据管道](#data-pipeline-concept)
+ [Sources](#source-concept)
+ [Sinks](#sink-concept)
+ [Pipes](#pipe-concept)

## 数据管道
<a name="data-pipeline-concept"></a>

A*数据管道*用于收集、处理、可视化以及可能生成应用程序和服务的警报。适用于 Windows 的 Kinesis Agent 可以在开始时融入数据管道，其中日志、事件和衡量指标是从台式计算机或服务器的队列中收集的。Windows Kinesis 代理将收集的数据流式传输到构成数据管道剩余部分的各种 AWS 服务。数据管道具有目的，例如实时可视化特定服务的运行状况数据，用于帮助工程师更高效地操作该服务。服务运行状况数据管道可以执行以下任一操作：
+ 在问题影响到服务客户的体验之前，向工程师发出问题警报。
+ 通过展示资源使用趋势，帮助工程师高效地管理服务的成本。这些趋势使得他们可以相应调整资源级别，甚至实施自动扩展场景。
+ 针对服务客户报告的问题，提供问题根本原因的见解。这可以加快解决这些问题并减少支持成本。

有关使用适用于 Windows 的 Kinesis 代理构造数据管道的分步示例，请参阅[教程：使用适用于 Windows 的 Kinesis 代理将 JSON 日志文件流式传输到 Amazon S3](directory-source-to-s3-tutorial.md)。

## Sources
<a name="source-concept"></a>

适用于 Windows 的 Kinesis 代理*source*收集日志、事件或指标。源从特定数据类型的特定创建器，根据源的类型收集该数据。例如，`DirectorySource` 类型从文件系统中的特定目录收集日志文件。如果数据尚未结构化（如某些类型的日志文件），则在将文本表示解析为某些结构化格式时，源会非常有用。每个源对应于一个特定的*源声明*在适用于 Windows 的 Kinesis 代理`appsettings.json`配置文件。源声明提供必要详细信息，用于配置源以根据特定数据收集需求来定制源。可以配置的详细信息类型因源类型而异。例如，`DirectorySource` 源类型需要存放日志文件的目录的规范。

有关源类型和源声明的详细信息，请参阅[源声明](source-object-declarations.md)。

## Sinks
<a name="sink-concept"></a>

适用于 Windows 的 Kinesis 代理*sink*获取由 Windows 源 Kinesis 代理收集的数据，并将该数据流式传输到构成数据管道剩余部分的多种可能 AWS 服务之一。每个水槽对应于一个特定的*接收器声明*在适用于 Windows 的 Kinesis 代理`appsettings.json`配置文件。接收器声明提供必要详细信息，用于配置接收器以根据特定数据流式传输需求来定制接收器。可以配置的详细信息类型因接收器类型而异。例如，一些接收器类型允许接收器声明针对向其提供的数据指定特定序列化 `Format`。在接收器声明中指定了此选项时，首先对收集的数据进行序列化，然后再将数据流式传输到与接收器关联的 AWS 服务。

有关接收器类型和接收器声明的更多信息，请参阅[接收器声明](sink-object-declarations.md)。

## Pipes
<a name="pipe-concept"></a>

适用于 Windows 的 Kinesis 代理*管道*将 Windows 源的 Kinesis 代理的输出连接到 Windows 接收器的 Kinesis 代理的输入。在数据流经管道时，可以选择对数据进行转换。每个管道对应于 Windows 的 Kinesis 代理中的一个特定管道声明`appsettings.json`配置文件。管道声明提供配置管道的必要详细信息，例如管道的源和接收器。

有关管道类型和管道声明的更多信息，请参阅[管道声明](pipe-object-declarations.md)。