云盘算-交互式数据处置处罚 (Interactive Data Processing)
AWS Glue DataBrew (AWS Glue DataBrew)数据预处置处罚是任何数据分析任务之前的重要步骤。AWS Glue DataBrew 是一个可视化工具,答应我们预处置处罚数据,包括清洗和规范化数据。此AWS服务提供许多数据准备功能,包括分组、联接、过滤、重新采样、排序、处置处罚缺失和重复实例、应用聚合等。该服务的交互性质使得没有太多技能知识的用户也能轻松使用。数据预处置处罚管道是基于一系列步骤构建的,称为“配方”(recipe)。配方不过是我们想要应用于数据的技能的次序步骤。总体上,我们需要遵循以下步骤:
[*]导入数据集。我们可以将本身的数据集上传到S3存储桶,然后将其添加为Glue DataBrew中的数据集,或者我们可以使用AWS存储库中的示例数据集。
[*]创建项目。步骤1和步骤2是可互换的,我们可以先创建项目然后导入数据集。
[*]创建配方。一旦创建项目,我们就可以对数据应用多种技能。
[*]发布和导入配方。配方通常处于“工作版本”状态,直到发布。一旦发布,我们可以导入配方,或者在将来的项目中使用配方。
让我们看一个这个管道的示例。
创建项目 (Creating a project)
我们起首为准备特定数据集创建一个新项目。不幸的是,我们在一个项目中只能使用一个数据集(而不是多个)。从Glue DataBrew主页,我们点击“创建项目”按钮。我们可以在主页上找到这个按钮,也可以在左侧的“项目”标签中找到。
https://img-blog.csdnimg.cn/direct/ea5020e919a64785a1a3f6839961bb4f.png
这将带我们进入“创建项目”页面,我们需要提供项目的详细信息。项目的关键要素是:名称、配方、数据集、样本数量和权限。我们按照“项目名称”部门的指示给项目定名。在此示例中,项目名称为“data-processing-1”。然后我们为项目添加配方。我们可以“创建新配方”,也可以使用现有配方(即发布的配方)。配方是清理数据的一系列步骤的组合。由于我们要举行数据清理,我们将“创建”一个新配方,而不是使用现有的。默认情况下,配方的名称格式为“项目名称-配方”。
https://img-blog.csdnimg.cn/direct/8c0a9226344648a7b86ab244b0c74b5a.png
如今,我们需要为项目添加数据集,它可以是AWS存储库中的示例数据集,也可以是我们上传到S3存储桶的本身的数据集。在此示例中,我们将使用“团结国大会投票 - 国家”示例数据集。我们可以给数据集定名。我们可以选择在项目中使用数据的样本数量。我们有一些数值选项以及自界说大小。在此示例中,我们将处置处罚前500个样本。
https://img-blog.csdnimg.cn/direct/181255e85cfc4567a894b795a12c2df6.png
https://img-blog.csdnimg.cn/direct/a2f15f3e0fbe4f89999a876286ad4bdf.png
接下来,我们需要为项目提供权限,以便它可以连接到指定的数据集。为此,我们需要为项目添加一个角色。由于我们的IAM访问非常有限,我们没有太多选择,只能使用默认角色。在此示例中,我们使用“LabRole”。之后,我们可以点击“创建项目”按钮开始创建项目。
https://img-blog.csdnimg.cn/direct/913bd47b562348c58ae257447018fffc.png
项目将开始配置,如下所示。一旦项目创建完成,我们可以从左侧的“数据集”标签中导航,检察数据集存储的位置。在此示例中,数据集位于AWS S3存储桶中。
https://img-blog.csdnimg.cn/direct/7f1db6137a03471b9f0e8fcfbe7d2adf.png
https://img-blog.csdnimg.cn/direct/29ce61f3cdc24e8aaea96bfd5d92bb22.png
创建自界说数据集 (Creating Custom Dataset)
如前所述,我们可以先将数据集上传到S3存储桶,然后使用它创建项目。假设我们在S3存储桶中有一个“employee.json”文件。我们将使用这个文件创建一个数据集。我们点击左侧的“数据集”标签,然后点击“连接新数据集”按钮。
https://img-blog.csdnimg.cn/direct/161f1642b7884a748c54537674934882.png
我们需要给数据集定名并指定数据文件的位置。一旦选择“Amazon S3”,全部现有的存储桶(在此示例中列出一个存储桶)将出如今“S3存储桶”列表中。一旦选择存储桶,它的全部对象(即文件)将被列出,我们可以选择“employee.json”。在“其他配置”部门,我们为“选择的文件范例”选择“JSON”选项。然后我们为“JSON文件范例”选择“JSON文档”选项。末了,我们点击“创建数据集”按钮。
https://img-blog.csdnimg.cn/direct/d6f435ae10e643d0955c012f7bf74c1f.png
https://img-blog.csdnimg.cn/direct/41aeff87cb364c7b9a091f72698b0e84.png
https://img-blog.csdnimg.cn/direct/010021d661a44dd791c9b0c5d80c0d69.png
创建配方 (Creating a Recipe)
在上一节中,我们已经看到我们可以创建项目并向其添加数据集。我们看到的数据集示例基于“团结国大会对国家的投票”。如果我们启动项目,我们应该能够看到数据的每个属性的初步概览。
https://img-blog.csdnimg.cn/direct/3a4739ece8cb4fcba33bfb8636cdc98a.png
我们可以看到快速分布、独特和唯一实例的数量、平均值、中位数和其他统计数据。假设我们要盘算每个国家的总票数和“yes_votes”列的实例数。如果你认识SQL查询,你可以猜到我们可以使用“group by”查询来完成这项任务。我们将在这里以交互方式完成相同的任务。我们将编写步骤来在配方中完成这些任务。在编写配方之前,让我们看看AWS Glue DataBrew可以做什么。
https://img-blog.csdnimg.cn/direct/958d03bb327243498e4841ea7a2ed9ac.png
我们可以看到此服务答应我们通过单击这些选项来对数据举行许多操作。这个选项栏在项目视图的顶部可用。我们如今必须添加步骤来完成这些任务。可以从顶部栏(如上所示)或从右侧的“配方”菜单中添加配方。我们可以“添加步骤”来界说我们想要对数据应用的内容。
https://img-blog.csdnimg.cn/direct/fc9711b5603a4ea1854ad99bd5dd378a.png
让我们界说一个包罗以下步骤的配方:
[*]处置处罚缺失值
[*]盘算每个国家的总票数
[*]盘算每个国家的“yes_votes”实例数
在检察数据时,我们可以看到一些列有缺失(即“null”)值,此中之一是“affinityscore_china”。
https://img-blog.csdnimg.cn/direct/043ada75c60d43cb99ec6efa29f3ff78.png
我们可以点击顶部标签栏中的“缺失”标签。我们将看到如那边置处罚缺失值的多个选项 - 通常可以替换值或删除整行。在此示例中,我们将通过全部现有/有效值的平均值替换缺失值。我们可以展开“缺失”标签,选择要处置处罚的列。然后我们需要选择“填凑数值聚合”。接下来,我们需要选择聚合方法,在此示例中是全部有效值的“平均值”。我们还可以指定我们要在“应用转换到”中应用此过程的行数。
https://img-blog.csdnimg.cn/direct/468d9ef37fa745908b308b0db9f14ca6.png
https://img-blog.csdnimg.cn/direct/1ab9f08328c440a0ae57725d7c9950f3.png
我们可以点击“应用”按钮,将聚合方法应用于数据列。
https://img-blog.csdnimg.cn/direct/12d74b0a698c4564aedb9dbec1a85d71.png
一旦应用,此过程将作为步骤添加到我们的配方中。
https://img-blog.csdnimg.cn/direct/dadee8f9b1f64baebe237952650abe04.png
接下来,我们要盘算“all_votes”的总票数和“yes_votes”列的实例总数。我们可以点击顶部标签栏中的“分组”标签。这将带来以下界面。
https://img-blog.csdnimg.cn/direct/250ceaeeb0ed4a66b16d10908f835bea.png
https://img-blog.csdnimg.cn/direct/0d5d9fbfa43046fdb1ae441ad78624db.png
我们需要选择要“分组依据”的列。然后选择要聚合的列。我们可以根据需要添加多个列。“作为新表分组”选项将替换原始表,因此在应用前需要细致查抄。我们可以将结果添加为“新列”和“仅检察受影响的列”。全部这些操作应用后将添加到我们的配方中。
https://img-blog.csdnimg.cn/direct/0294fca3370345bdaae23f6d4a715729.png
发布和下载配方 (Publishing and Downloading Recipe)
一旦创建配方,我们可以发布它。未发布之前,我们无法导出或在其他项目中使用它。发布前,配方处于“工作版本”状态。我们可以点击“配方”界面右上角的“发布”按钮。
https://img-blog.csdnimg.cn/direct/cd32524e30444d2387823fd498ac8cb2.png
然后点击“发布”按钮。
https://img-blog.csdnimg.cn/direct/7b2540b837404211bc96f11abd10167a.png
配方将立即发布,版本将变为“版本1.0”。
https://img-blog.csdnimg.cn/direct/fde0522833b941bd96f2ad76cf278322.png
一旦发布,我们可以通过点击“更多”按钮,然后选择“下载为JSON”来下载配方。JSON文件将如下所示。
https://img-blog.csdnimg.cn/direct/54de2846fa4c4bf4bb6efc806bc412ee.png
[
{
"Action": {
"Operation": "FILL_WITH_AVERAGE",
"Parameters": {
"sourceColumn": "affinityscore_china"
}
}
},
{
"Action": {
"Operation": "GROUP_BY",
"Parameters": {
"groupByAggFunctionOptions": "[{\"sourceColumnName\":\"yes_votes\",\"targetColumnName\":\"yes_votes_count\",\"targetColumnDataType\":\"int\",\"functionName\":\"COUNT\"},{\"sourceColumnName\":\"all_votes\",\"targetColumnName\":\"all_votes_sum\",\"targetColumnDataType\":\"int\",\"functionName\":\"SUM\"}]",
"sourceColumns": "[\"state_name\"]",
"useNewDataFrame": "false"
}
}
}
]
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]