开发区域

先进与MATLAB软件开发

的遗愿清单

当我们在说什么是有道理的,我把你介绍给另一种类型的桶。这一个包含对象和允许保留大量的非结构化数据。

它是2019,在这个云的时代,有很多对象存储系统提供给用户。在这篇文章中,我将侧重于提供的服务这样一个亚马逊提供的存储系统。的Amazon S3™(简单存储服务)使用相同的可伸缩的存储基础设施,亚马逊使用其平台运行。

MATLAB和Simu金宝applink开发人员可以使用这些服务与我们的航运R2018b / 19个产品作为记录通过利用数据存储函数,允许简单的读/写访问的数据存储在S3(在其他形式的远程数据)。

特殊形式的数据存储函数允许用户直接处理图像(ImageDatastore),文件(FileDatastore),电子表格(SpreadsheetDatastore)或表格文本(TabularTextDatastore)。通常,一旦用户配置MATLAB与访问密钥ID、访问密钥和秘密区域,数据存储将提供用户一个抽象数据指向的国际化资源标识符(IRI)。

抽象是不错,但是开发人员需要更好的控制他们的代码所做的数据为一个很好的理由。他们需要声明和附加权限,控制数据的加密,定义谁能和不能访问数据和发挥他们的权利来创建、读取、更新和删除(CRUD)的内容。许多这些行动需要满足各种业务,法律和技术要求远远超出了单纯的分析。此外,开发人员可以扩展工具和使用它来调试自己的数据访问工作流。

S3键和对象上传加密卡通

在这一点上,言归正传,允许我把你介绍给一个开源*原型* MATLAB客户机发布在github.com上允许MATLAB开发人员使用Amazon S3。最简单的方法开始克隆这个存储库和所有必需的依赖项使用:

git克隆——递归https://github.com/mathworks-ref-arch/mathworks-aws-support.git金宝app

存储库包含利用MATLAB代码AWS SDK为Java。这个包下许可的使用某些第三方内容这是单独的许可协议。砰的一声。在构建时xml文件的第三方软件下载。

构建底层Java工件

您可以使用Maven构建底层Java SDK,过程很简单:

cd matlab-aws-s3 /软件/ Java / mvn美元清洁包

在成功构建一个JAR归档打包,并可用MATLAB运行启动。m文件

> > cd matlab-aws-s3 /软件/ MATLAB > >创业 验证S3服务

你可以以多种方式包括使用亚马逊CLI(你可以叫直接从MATLAB),令牌服务期限或基于多因素身份验证(STS),环境变量,等等。为了演示,并保持简单,我将使用MATLAB的静态文件路径,从亚马逊身份和访问管理凭证(IAM)服务:

{“aws_access_key_id”:“修订”、“secret_access_key”:“修订”、“地区”:“us-west-1”} 创建一个桶

创建一个桶中,您可以使用API接口:

%创建客户端s3 = aws.s3.Client () s3.initialize ();%创建一个桶,注意AWS提供命名指南bucketName =“com-example-mybucket”;s3.createBucket (bucketName); 列出现有的桶

你可以列出所有现有的桶:

%得到的列表水桶bucketList = s3.listBuckets ();bucketList =创建日期名称所有者OwnerId ______________________________ __________________________售予_________________的星期四3月02 02:13:19格林尼治时间2018年“com-example-mybucket”“aws_test_dept”“[编辑]”“清华2018年6月08 18:46:37 BST”“com-example-my-test-bucket”“aws_test_dept”“[编辑]”

我警告你,这篇文章是关于水桶名单!

存储数据

从MATLAB将数据存储到云水桶基于Amazon S3变得简单。

%上传文件%创建一些随机数据x =兰德(100100);%将数据保存到一个文件还是= (tempname,“.mat”);保存(还是“x”);% .MAT文件放入一个S3对象称为“myobjectkey”桶S3。putObject (bucketName,还是“myobjectkey”); 获取数据

类似地,您可以把物体分成MATLAB从S3 bucket如下。

%下载一个文件s3.getObject (bucketName myobjectkey, download.mat); 清理

你懂的。MATLAB接口允许您施加控制的数据保存在云对象存储在Amazon S3。你可以同样删除数据和桶可以清理。

s3.deleteBucket (bucketName); 控制,控制,控制的访问

与接口,您现在可以发挥更好的控制从谁来访问数据和他们必须读/写什么权利。

%创建一个罐头ACL对象在这种情况下AuthenticatedRead并应用它%谨慎授予权限AuthenticatedUsers将允许%任何一个AWS帐户这桶将成为可读的更广泛的互联网myCannedACL = aws.s3.CannedAccessControlList (“AuthenticatedRead”);s3.setBucketAcl (myBucket myCannedACL); 影响
  1. MATLAB工具构建的Java SDK发布的亚马逊。SDK本身是由许多团队积极开发人员经金宝app常与新特性和修复和更新。给你的这些SDK的进化速度,总共有1508和215128添加和修改过的文件删除79774一个月。释放MATLAB工具GitHub的含义是现在MATLAB用户可以跟上这些快速发展的重建SDK和使用最新的版本,与MATLAB。
  2. 对象存储系统可以提供巨大的价值在廉价存储加上高耐用性(即11 9 99.99999999999%)。反过来,与一个项目相关的存储成本开始下降,这一运动引发了用户停止问如何捕获和储存。现在的谈话围绕着我们如何分析这些数据,因为它是逻辑容易捕获和存储它的一切。反过来,让我们大数据(一个经常过度使用和炒作词汇)。另一个话题了。
  3. MATLAB用户提供的API尽可能相同的底层API提供的Java开发人员。通过保持忠诚,MATLAB用户可以利用亚马逊提供的大量资源和蒸馏知识位置像StackOverflow直接将这些技术应用于MATLAB工作流。

最后,接口,如一个在这篇文章中所讨论的,方便你,开发人员利用几乎无限的基于云的存储你的承诺工作流在你现有的和熟悉MATLAB和Simulink工具。金宝app最重要的是,这些都没有阻止你使用相同的高层接口代码,更合适的地方,给你一个更广泛的选择的方法。

所以,你用云对象存储?一如既往,我们珍视你的想法、反馈和评论。

|

댓글

댓글을남기려면링크를클릭하여MathWorks계정에로그인하거나계정을새로만드십시오。