Qwiklab'实验-DynamoDB, Redshift, Elasticsearch'
title: AWS之Qwiklab
subtitle: 4. Qwiklab'实验-Amazon DynamoDB, Amazon Redshift, Elasticsearch Service'
date: 2018-09-22 12:29:20
Introduction to Amazon DynamoDB
知识梳理
1. 定义与作用
首先,Amazon DynamoDB是非关系型数据库(NoSQL),NoSQL 是一个术语,用于描述高度可用的、可扩展的并且已针对高性能进行优化的非关系数据库系统。有别于关系模型,NoSQL 数据库 (如 DynamoDB) 使用替代模型进行数据管理,例如键-值对或文档存储。
2. 工作原理
https://docs.aws.amazon.com/zh_cn/amazondynamodb/latest/developerguide/HowItWorks.html
3. Python和Amazon DynamoDB
https://docs.aws.amazon.com/zh_cn/amazondynamodb/latest/developerguide/GettingStarted.Python.html
创建表Movies
from __future__ import print_function # Python 2/3 compatibility
import boto3
dynamodb = boto3.resource('dynamodb', region_name='us-west-2', endpoint_url="http://localhost:8000")
table = dynamodb.create_table(
TableName='Movies',
KeySchema=[
{
'AttributeName': 'year',
'KeyType': 'HASH' #Partition key
},
{
'AttributeName': 'title',
'KeyType': 'RANGE' #Sort key
}
],
AttributeDefinitions=[
{
'AttributeName': 'year',
'AttributeType': 'N'
},
{
'AttributeName': 'title',
'AttributeType': 'S'
},
],
ProvisionedThroughput={
'ReadCapacityUnits': 10,
'WriteCapacityUnits': 10
}
)
print("Table status:", table.table_status)
Introduction to Amazon Redshift
Users表
CREATE TABLE users (
userid INTEGER NOT NULL,
username CHAR(8),
firstname VARCHAR(30),
lastname VARCHAR(30),
city VARCHAR(30),
state CHAR(2),
email VARCHAR(100),
phone CHAR(14),
likesports BOOLEAN,
liketheatre BOOLEAN,
likeconcerts BOOLEAN,
likejazz BOOLEAN,
likeclassical BOOLEAN,
likeopera BOOLEAN,
likerock BOOLEAN,
likevegas BOOLEAN,
likebroadway BOOLEAN,
likemusicals BOOLEAN
);
数据查询
查询表的行数
SELECT COUNT(*) FROM users;
查询俄亥俄州(OH)的用户喜欢体育不喜欢歌剧的情况,列表按其名字排序
SELECT userid, firstname, lastname, city, state
FROM users
WHERE likesports AND NOT likeopera AND state = 'OH'
ORDER BY firstname;
查询显示热爱Jazz的用户所居住的十大城市
SELECT
city,
COUNT(*) AS count
FROM users
WHERE likejazz
GROUP BY city
ORDER BY count DESC
LIMIT 10;
Introduction to Amazon Elasticsearch Service
Amazon Elasticsearch Service简介
知识梳理
1. 定义与作用
Amazon Elasticsearch Service (Amazon ES) 是一种托管服务, 可以轻松地在AWS云中部署,操作和扩展Elasticsearch。Elasticsearch是一种流行的开源搜索和分析引擎,用于日志分析,实时应用程序监控,点击流分析和文本搜索等用例。
您可以在几分钟内从AWS管理控制台设置和配置AmazonElasticsearchService
Cluster.
Amazon ES为您的群集配置了所有资源并启动它。AmazonES自动检测并替换故障节点,从而减少与自我管理基础架构相关的开销。设置AmazonES群集没有前期成本,您只需为您使用的服务资源付费。
AmazonES提供托管服务的以下好处:
- 通过API进行简单的集群扩展
- 自愈簇
- 按需提供高可用性
- 用于数据持久性的自动集群快照
- 安全
- 集群监控
AmazonES包含与Kibana的内置集成,并支持与Logstash的集成。Logstash是一个开源数据管道,可帮助您处理日志和其他事件数据,并将其加载到Elasticsearch中。Kibana是一个开源分析和可视化平台,可帮助您更好地了解Elasticsearch中的数据。
2. Amazon Elasticsearch Service 的组件
AmazonES包含以下组件:
域:AmazonES域包含Elasticsearch Service Cluster(硬件和软件)以及提供负载平衡,安全性,监控等的其他硬件和软件。该域由AmazonES的服务说点公开,其名称必须符合以下条件:
- 唯一标识AWS账户中的域
- 以字母或数字开头
- 包含至少三个字符,但不超过28个字符
- 仅包含小写字符az,数字0-9和连字符(-)
群集:运行Elasticsearch Service所需的一个或多个数据节点,可选的专用主节占和存储的集合。
节点:Elasticsearch Service集群中的单个实例,能够识别和处理或转发消息到其他节点。
存储:AmazonES支持两种不同的存储类型:实例存储或弹性块存储(EBS),可以是通用(SSD),配置IOPS(SSD)或磁性。
3. 相关服务
Amazon ES通常与以下服务起使用:
AWS Cloud Trail
使用AWS CloudTrail求取您帐户的Amazon ES API调用和相关事件的历史记录。CloudTrail是一种Web服务,可记录来自您帐户的API调用,并将生成的日志文件传递到您的Amazon S3存储桶。您还可以使用CloudTrail限踪对AWS资源所做的更改。
Amazon CloudWatch
Elasticsearch Service域会自动将指标发送到Amazon CloudWatch,以便您可以收集和分析性能统计信息。您可以使用AWS CLL或AWS开发工具向监控这些指标。您还可以轻松地将CloudWatchLogs日志组订阅到Amazon ES域,以将该日志组中的数据加载到AmazonES中。
Amazon Kinesis
Amazon Kinesis是一种托管服务,可以弹性扩展,实现大规模流数据的实时处理。AmazonES提供Lambda示例代码以与Kinesis集成。
Amazon S3
Amazon Simple Storage Service (Amazon S3) 是Internet的存储. 您可以随时使用AmazonS3在Web上的任何位置存储和检索任意数量的数据。
Amazon ES提供Lambda示例代码以与S3集成。
AWS身份和访问管理(IAM)
AWS身份和访问管理(IAM)是一种Web服务,可用于管理AWS中的用户和用户权限。使用IAM为您的Amazon ES域创建基于用户或基于IP的访问策略。
域访问策略-允许对域进行公开访问:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Action": [
"es:*"
],
"Resource": "arn:aws:es:us-west-2:563924657756:domain/mydomain/*"
}
]
}
Qwiklab'实验-DynamoDB, Redshift, Elasticsearch'的更多相关文章
- Qwiklab'实验-Hadoop, IoT, IAM, Key Management'
title: AWS之Qwiklab subtitle: 1. Qwiklab'实验-Hadoop, IoT, IAM, Key Management Service' date: 2018-09-1 ...
- Qwiklab'实验-CloudFront, EFS, S3'
title: AWS之Qwiklab subtitle: 3. Qwiklab'实验-CloudFront, EFS, S3' date: 2018-09-21 17:29:20 --- Introd ...
- Qwiklab'实验-API Gateway, AWS Lambda'
title: AWS之Qwiklab subtitle: 2. Qwiklab'实验-API Gateway, AWS Lambda' date: 2018-09-20 17:29:20 --- In ...
- ELK学习实验004:Elasticsearch的简单介绍和操作
一 集群节点 Elstaicsearch的集群是由多个节点组成都,通过cluster.name设置集权名称,比能切用与区分其他的集群,每个节点通过node.name指定节点 在Elasticsearc ...
- ELK学习实验003:Elasticsearch 集群安装
前面已经介绍了Elasticsearch这个工具,并对单机安装做了简单介绍,现在使用三台机器做一个elasticsearch集群 一 环境准备 1.1 机器准备 1.2 同步时间 [root@node ...
- ELK学习实验002:Elasticsearch介绍及单机安装
一 简介 ElasticSearch是一个基于Luncene的搜索服务器.它提供了一个分布式多用户能力全文搜索引擎,基于RESTful web接口,ElsticSearch使用Java开发的,并作为A ...
- ASP.NET Core开发者成长路线图
目录 ASP.NET Core开发者路线图RoadMap 免责声明 请给一个星星! ⭐ 路线图 资源 总结 贡献 许可协议 ASP.NET Core开发者路线图RoadMap 来源: MoienTaj ...
- ASP.NET Core开发者指南
ASP.NET Core开发者指南 2019年ASP.NET Core开发者指南: 你可以在下面找到一张图,该图展示了你可以选取的路径及你想学习的库,从而成为一名 ASP.NET Core 开发者.“ ...
- 记录一次mysql使用load into命令导入csv格式数据的过程
今天从qwiklab实验获取一组数据,大概有5万条,在qwiklab实验室使用的是pgsql数据库,但是今天想把他插入本地的mysql数据库中. 1.首先是查看一下数据内容: 数据中有的是空值,有的是 ...
随机推荐
- CentOS7环境RabbitMQ集群配置管理(转载)
CentOS7环境RabbitMQ集群配置管理(转载) CentOS7系统内核版本:3.10.0-514.26.2.el7.x86_64 一.对应主机host地址(三台主机host文件要保持一致) ...
- luogu P2634 [国家集训队]聪聪可可 点分治
Description 聪聪和可可是兄弟俩,他们俩经常为了一些琐事打起来,例如家中只剩下最后一根冰棍而两人都想吃.两个人都想玩儿电脑(可是他们家只有一台电脑)……遇到这种问题,一般情况下石头剪刀布就好 ...
- Substring Uva 11468_记忆化搜索 + AC自动机
Code: #include<cstdio> #include<cstring> #include<queue> using namespace std; cons ...
- java 文件夹不存在的解决方案
使用new File(path).mkdirs()创建所需路径,几十有多层不存在的路径也可以直接创建,切记方法名以s结尾,不带s的智能创建一层不存在的目录,不能自动创建多层目录结构.
- Django的时间字段DateTimeField
一. Django的时间字段DateTimeField 创建django的model时,有DateTimeField.DateField和TimeField三种类型可以用来创建日期字段,其值分别对应着 ...
- [luogu1463 HAOI2007] 反素数 (约数)
传送门 Description 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数.例 ...
- 巴塞尔问题(Basel problem)的多种解法——怎么计算$\frac{1}{1^2}+\frac{1}{2^2}+\frac{1}{3^2}+\cdots$ ?
(PS:本文会不断更新) $\newcommand\R{\operatorname{Res}}$ 如何计算$\zeta(2)=\frac{1}{1^2}+\frac{1}{2^2}+\frac{1}{ ...
- RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第一篇【安装】
文章来源http://blog.csdn.net/deadgrape/article/details/50563119 前言:关于RobotFrameWork+APPIUM实现对安卓APK的自动化测试 ...
- mysql修改配置文件
在Apache, PHP, MySQL的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分.对于Discuz!论坛程序也是如此,MySQL的设置是否合理优化,直接影响到论坛的速度和承载量!同 ...
- BA--步进电机工作原理
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件.在非超载的情况下,电机的转速.停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动 ...