探索亚马逊Amazon S3:无缝存储管理与极速数据传输的奥秘
亚马逊云科技中Amazon S3,因其设计简单与高度可靠,允许用户通过互联网存储和检索任意数量的数据,并能够自动扩展以满足各种规模的需求,使得Amazon S3成为了许多云计算应用和网站的核心存储基础设施之一,Amazon S3提供的功能涉及方面众多,今天博主就云存储服务这一方面知识简单讲解一下Amazon S3。
目录
初识Amazon S3
安全性与加密
S3使用教程
S3托管静态网站
写在最后
初识Amazon S3
AmazonSimple Storage Service,也称为Amazon S3,是一种面向对象的存储服务,能够在不需要额外投资的情况下实现对任何类型数据进行持久化存储管理,并支持基于网络的快速查询与下载,为各种规模和行业的客户提供了存储和保护任意数量数据的能力,适用于数据湖、网站、移动应用、数据备份与恢复、文件归档、企业应用、IoT设备以及大数据的分析工作。
我们可以来到亚马逊云科技的 资源地址 可以看到,亚马逊提供了很多的云服务内容,这里我们可以看到今天博主讲解的Amazon S3也赫然其中:

点击进入到Amazon S3,页面也随即跳转到对应的官方页面,这里详细讲解了Amazon S3存在的优势以及其服务的场景,从官网我们可以了解到Amazon S3强大的使用案例,对于从事机器学习要求庞大的数据源操作时,Amazon S3是一个比较不错的选择:

对于Amazon S3的工作原理,官方也给出了详细的解释,原来Amazon S3是将数据作为对象存储在存储桶中,对象是一个文件和描述该文件的任何元数据而存储桶是对象的容器,通过创建一个存储桶并指定存储桶名称和服务区域,数据将会作为Amazon S3中的对象上传到该存储桶,每个对象都有一个密钥,它是存储桶中对象的唯一标识符方便后期对数据进行处理,流程图大致如下:

安全性与加密
Amazon S3作为存储桶存储数据,数据是否具备安全性和加密是及其重要的,换句话讲我应该通过怎样的加密手段来确保我存储到S3中的数据是安全的呢?S3也是为这两点提供了重要的保障,包括静态数据加密、权限控制、安全策略配置等等。接下来对S3的安全配置进行一个简单的概述,如下所示:
1)确保Amazon S3存储桶使用正确的策略且不可公有访问,实施最低权限访问。
当我们创建存储桶的时候要限制桶的公开访问权限,避免其他无关人员能够访问我们的数据;然后也要保证存储桶策略没有过大的权限,比如通配符操作(比如给所有人读的权限,或者给某个人执行所有桶的所有操作的权限),当然同样在访问控制列表(ACL)层面也要杜绝类似配置。
2)将IAM角色用于需要Amazon S3访问权限的应用程序和亚马逊服务
在用 IAM 角色来管理需要访问Amazon S3的应用程序或服务的临时凭证,在使用角色时不需要将长期凭证(如用户名和密码或访问密钥)分配给Amazon EC2实例或亚马逊云科技提供的其他服务(例如Amazon Lambda),角色可提供临时权限供应用程序在调用其他亚马逊云科技资源时使用。
3)考虑加密静态数据及实施传输中数据加密
静态数据加密分为服务端和客户端两种加密,例如我们把文件上传到S3上,S3这个服务帮助我们进行加密就是服务端进行加密,如果我们想自己加密的话,我们也可以在客户端对文件进行SDK进行加密。
传输中加密一般来说就是在上传或下载S3的资源的时候在整个传输路径中进行加密,这种加密方式一般就七层了,如HTTPS这种TLS加密,而S3本身也是支持HTTPS的,所有在整个过程中S3是能够保证一定的数据安全性的,如下操作:

这里选择服务端对应的加密密钥类型:

4)考虑S3对象锁定
使用文件锁来保存对象,做到一次写入多次读写数据,能保存合规的数据,将数据保存为WORM格式有权限的用户可以更改数据保留期。
5)考虑使用VPC端点进行AmazonS3访问
S3的VPC端点是 VirtualPrivate Cloud(VPC) 内的逻辑实体,仅允许连接到S3,可以使用S3存储桶策略控制从特定VPC端点或特定VPC对存储桶的访问,可以控制允许通过特定VPC端点访问的请求、用户或组;也可以使用S3存储桶策略控制哪些VPC或VPC端点有权访问S3存储桶。
S3使用教程
进入控制台:首先我们来到亚马逊管理控制台,然后点击S3服务进入到S3操作界面:

如果没有出现在控制台也没关系,这里我们可以直接在顶部的搜索栏搜索Amazon S3,点击对应的服务进入到S3的服务平台,如下所示:

创建存储桶:这里我们点击创建我们的新的S3存储桶按钮,开始进行创建:

进入创建界面,这里我们需要输入相关的配置信息,例如存储桶的名称以及亚马逊服务的区域

然后这里的话默认S3存储桶是私有的状态,如果取消勾选的话就对存储桶的数据进行公开展示:

后面的话就正常选择默认配置就好了,每个配置都有详细的说明,根据自身情况进行内容填写。
上传文件:创建好存储桶之后,回到S3控制台,点击刚刚我们创建好的存储桶,进入之后点击上传按钮可以上传对应的资源文件了,如下:

添加文件上传对应的文件信息:

资源共享:上传的资源,我们也可以通过后期的操作选择预签名URL共享的操作,可以制作一个临时的URL链接,然后设置对应的URL时效,可以分享给其他人观看,超过我们设置的时效资源就自动访问不了了,安全性可谓是非常的高了!


生命周期管理:我们也可以配置存储桶生命周期管理规则,我们可以指定一个筛选条件,选择符合条件的对象来进行相应的生命周期管理,我们可以指定对象的名称前缀和对象的标签来作为筛选条件,比如只针对pgototype这个标签和photos/这个前缀的对象进行归档操作,

S3托管静态网站
接下来我们通过S3来托管一个我们的静态网站,我们知道如果要做一个网站的话一般来讲要使用亚马逊云科技EC2的实例,或者说购买其他平台的VPS服务器来托管我们整个服务器,甚至我们还要在上面安装Apache、Nginx或者Windows中的IIS然后才能托管网站。
而S3是另外的一个方法而且其成本比较低,所以基本上如果我们要在S3上取部署一个静态网站的话,成本的话一个月也就几块钱而已,当然取决于你的流量是多是少的情况了。S3它本身也没有固定的成本不像EC2不管你用不用,你开着它就得有一个固定成本在那个地方,所以针对静态网站,S3是一个非常适合的方法。如果想部署一个动态网站,譬如存在JSP或者ASP.NET这些服务器端的脚本的话,还是需要用到EC2这种服务器来解析后端脚本。
这里和上面S3使用教程一样,创建一个存储桶,然后选择添加文件,将静态网站的文件进行一个上传,如下所示,上传完成之后鼠标往下滑动,点击上传按钮进行文件上传:

上传完毕之后,回到我们的控制台进入我们上传好文件的存储桶,然后进入属性界面进行配置操作

往下滑动找到我们静态网站托管的选项,点击编辑按钮:

然后对静态网站托管进行一个编辑操作:

配置完成之后再次回到我们的属性配置页面,来到这个地方可以看到我们静态网站的分享链接已经生成了,可以分享给别人进行查看了。

然后我们也可以来到权限的界面,对访问我们资源的人员进行一个权限控制:

写在最后
当谈到现代数据存储和云计算时,Amazon S3无疑是一颗耀眼的明星,作为亚马逊云科技提供的对象存储服务,它不仅简单易用,更是企业和开发者们的信赖之选,其魅力在于它超越了传统存储的边界,无论是个人用户还是全球企业,S3 提供了可靠、高度可扩展的存储解决方案,如果感兴趣的朋友也可以去体验一番:地址 ,这里亚马逊也是提供了S3一年的免费试用!

然而,Amazon S3 背后更深层的含义是它在数字化时代的角色。它不仅仅是一个存储平台,更是数据安全、可靠性和可用性的典范。通过S3,用户可以在全球范围内实现数据的高速传输和复制,保证数据的持久性和安全性,无论面对何种挑战和规模的应用需求。

因此,Amazon S3 的意义不仅在于其技术本身的高度可靠和先进,更在于它对数据管理和云计算发展方向的深远影响。它让我们重新审视数据的存储、访问和保护,为未来的数字化社会提供了可持续的基础架构,在Amazon S3的世界里,我们看到了技术的力量如何改变我们的工作方式和生活方式。它激发了无数创新和应用的可能性,为我们打开了通往数字化未来的大门。
相关文章:
探索亚马逊Amazon S3:无缝存储管理与极速数据传输的奥秘
亚马逊云科技中Amazon S3,因其设计简单与高度可靠,允许用户通过互联网存储和检索任意数量的数据,并能够自动扩展以满足各种规模的需求,使得Amazon S3成为了许多云计算应用和网站的核心存储基础设施之一,Amazon S3提供的…...
Linux_监测CPU和内存
通过TOP持续获取进程的CPU和内存消耗,并写入到表格 # 配置进程名 processvm-agent # 配置次数 number100 # 配置间隔时间 time5 # csv结果文件 filecm_$(date %s).csv echo "%CPU,%MEM">${file} pid$(ps -aux | grep ${process} | awk -F {OFS"…...
OpenCV经典案例:01 答题卡识别
目录 透视变换矫正 选项识别匹配 QT 界面设计 引言:随着信息化的发展,计算机阅卷已经成为一种常规操作。在大型考试中,客观题基本不再 需要人工阅卷。本项目旨在开发一个基于OpenCV的高效答题卡识别系统,通过先进的图像处理和模…...
进程的管理与控制详解:创建、终止、阻塞等待与非阻塞等待
目录 一、进程创建 1、实例 2、fork函数详解 (1)fork函数模板 (2). fork() 函数的工作原理 (3). fork() 返回值和错误处理 3、如何理解进程创建过程 二、进程终止 1、终止是在做什么? 2、进程终止,有三种情况 3、进程如何终止? 三…...
【从零开始一步步学习VSOA开发】开发环境搭建
开发环境搭建 开发 VSOA 首先需要搭建开发环境,这里讲解 Windows 下 C/C 开发环境搭建方法。 下载 IDE 并申请授权码 SylixOS 的开发和部署需要 RealEvo-IDE 的支持,因此您需要先获取 RealEvo-IDE 的安装包和注册码。 RealEvo-IDE 分为体验版和商业版…...
一篇文章让你用我的世界中的红石搞懂什么是ALU!
目录 1.一些在开始的约定 2.七大逻辑门电路 1、 与门 2、 或门 3、 非门 5、 或非门 6、 异或门 7、 同或门 3.半加器 4.全加器 5.ALU 1.一些在开始的约定 相同的概念:相同的概念:高电平低电平逻辑真逻辑假 开关的开 开关的关 灯的亮 灯…...
硬盘数据恢复:所需时长、全面指南及注意事项
在数字化时代,硬盘作为我们存储重要数据的核心设备,其重要性不言而喻。然而,由于各种原因,如误删除、格式化、硬盘故障等,我们时常面临数据丢失的困境。数据恢复不仅关乎个人隐私和信息安全,更可能影响到我…...
基于SpringBoot+Vue的科研管理系统(带1w+文档)
基于SpringBootVue的科研管理系统(带1w文档) 基于SpringBootVue的科研管理系统(带1w文档) 科研的管理系统设计过程中采用Java开发语言,B/S结构,采取springboot框架,并以MySql为数据库进行开发。结合以上技术,对本系统的整体、数据库、功能模块…...
计算机组成原理 —— 五段式指令流水线
计算机组成原理 —— 五段式指令流水线 五段式指令流水线运算类指令LOAD指令的执行过程STORE指令的执行过程条件转移指令执行过程无条件转移指令的执行过程 我们今天来看看五段式指令流水线: 五段式指令流水线 五段式指令流水线是一种常见的处理器架构设计中采用的…...
【Bigdata】什么是关系联机分析处理
这是我父亲 日记里的文字 这是他的生命 留下留下来的散文诗 几十年后 我看着泪流不止 可我的父亲已经 老得像一个影子 🎵 许飞《父亲写的散文诗》 关系联机分析处理(Relational Online Analytical Processing,简称 ROLA…...
svd在求解最小二乘中的应用
文章目录 线性最小二乘的直接解法(正规方程解法)什么是伪逆?伪逆矩阵的一般形式伪逆矩阵与SVD的关系 线性最小二乘的直接解法(正规方程解法) 对于 A x b \boldsymbol{A}xb Axb的线性最小二乘问题,有直解析…...
JVM—垃圾收集算法和HotSpot算法实现细节
参考资料:深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)周志明 1、分代回收策略 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取…...
nvidia系列教程-AGX-Orin基础环境搭建
目录 前言 一、Agx-Orin(32GB)介绍 1.1 GPU 1.2 CPU 1.3 NVDLA 1.4 内存 1.5 存储 二、安装JetPack SDK 三、基础环境配置 四、jetpack软件版本 总结 前言 NVIDIA Jetson AGX Orin 是一款功能强大的嵌入式AI平台,专为需要高性能和低…...
使用SpringAOP实现公共字段填充
文章目录 概要整体架构流程技术细节小结 概要 在新增员工或者新增菜品分类时需要设置创建时间、创建人、修改时间、修改人等字段,在编辑员工或者编辑菜品分类时需要设置修改时间、修改人等字段。这些字段属于公共字段,也就是也就是在我们的系统中很多表…...
c++初阶-----适配器---priority_queue
作者前言 🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂 🎂 作者介绍: 🎂🎂 🎂 🎉🎉🎉…...
VSCode上安装C#环境教程
本章教程,教你如何在vscode上,可以快速运行一些基础的c#代码。 1、下载 .NET Code SDK 下载地址:https://dotnet.microsoft.com/zh-cn/download/dotnet/sdk-for-vs-code?utm_source=vs-code&utm_medium=referral&utm_campaign=sdk-install 根据自己的操作系统,选择…...
VS Code 和 Visual Studio 哪个更好
文章目录 VS Code 和 Visual Studio 哪个更好Visual Studio Code简介Visual Studio简介相同点差异点总结 VS Code 和 Visual Studio 哪个更好 Visual Studio Code简介 Visual Studio Code(简称 VS Code)是一款开源的、免费的、跨平台的、轻量级的代码编…...
FCA-数据分析理论试卷
其他参考: https://segmentfault.com/a/1190000043363073 https://blog.csdn.net/CSDN_WYY/article/details/137082340 Part.1:判断题(总分:8分 得分:8) 第1题 判断题 对任意事件A和B,必有 …...
WPF程序通过CadLib4加载CAD .dwg格式文件
1、下载CadLib相关dll文件,主要用到的:WW.dll、WW.Cad.dll、WW.GL.dll 2、程序中引用dll库。 3、创建WPF程序,使用Canvas来加载dwg文件,支持拖动和放大缩小。 4、部分代码: public void Init(string filename) {tr…...
图表全能王(ChartStudio) 上架VisionPro!
图表全能王(ChartStudio) - 终极图表制作工具!支持条形图、折线图、面积图、柱形图、条形图、饼图、玫瑰图、雷达图、牛肉图、风琴图、旭日图、桑基图等图表。 https://apps.apple.com/app/chartstudio-data-analysis/id6474099675 https://apps.apple.com/cn/app/…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
