OpenDAL提供一个统一、简单、高效、可靠、可观察的数据访问层,让开发者可以无缝地使用不同的存储服务,并享受到最佳的用户体验。
OpenDAL不仅简化了不同存储服务的接口,还提供自动重试、请求优化和可观察性等特性。开发者只需要使用OpenDAL就可以无痛访问数十种存储服务,而无需了解和掌握特定SDK的细节。
特性:支持多种存储服务,包括本地文件系统、HDFS、S3、OSS数十种服务等。提供统一的数据访问接口,无需关心底层存储细节。支持多种常用数据操作,包括 read 、write 、list 等。支持自动重试、请求优化、可观察性机制。零成本,直接映射到API调用。跨语言bindings:Python,Node.js,C(workingon)等快速开始useopendal::Result;useopendal::layers::LoggingLayer;useopendal::services;useopendal::Operator;#[tokio::main]asyncfnmain()->Result<()>{//Pickabuilderandconfigureit.letmutbuilder=services::S3::default();builder.bucket("test");//Initanoperatorletop=Operator::create(builder)?//Initwithlogginglayerenabled..layer(LoggingLayer::default()).finish();//Writedataop.write("hello.txt","Hello,World!").await?;//Readdataletbs=op.read("hello.txt").await?;//Fetchmetadataletmeta=op.stat("hello.txt").await?;letmode=meta.mode();letlength=meta.content_length();//Deleteop.delete("hello.txt").await?;Ok(())}更多示例可查看文档。
评论