storage

package module
v0.0.0-...-0dabf1d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 23, 2023 License: Apache-2.0 Imports: 0 Imported by: 0

README

go-storage

A fork of beyondstorage-go-storage

Documentation

Overview

Package storage intends to provide a unified storage layer for Golang.

Goals

- Production ready: high test coverage, enterprise storage software adaptation, semantic versioning, well documented.

- High performance: more code generation, less runtime reflect.

- Vendor agnostic: more generic abstraction, less internal details.

Examples

The most common case to use a Storager service could be following:

1. Init a storager.

    store, err := fs.NewStorager(pairs.WithWorkDir("/tmp"))
	if err != nil {
		log.Fatalf("service init failed: %v", err)
	}

2. Use Storager API to maintain data.

var buf bytes.Buffer

n, err := store.Read("path/to/file", &buf)
if err != nil {
	log.Printf("storager read: %v", err)
}

Directories

Path Synopsis
cmd
definitions/tests
Code generated by go generate via cmd/definitions; DO NOT EDIT.
Code generated by go generate via cmd/definitions; DO NOT EDIT.
Code generated by go generate cmd/definitions; DO NOT EDIT.
Code generated by go generate cmd/definitions; DO NOT EDIT.
internal
Package pairs intend to provide all available pairs.
Package pairs intend to provide all available pairs.
pkg
azblob
Package azblob provided support for Azure Storage containers and blobs objects (https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction)
Package azblob provided support for Azure Storage containers and blobs objects (https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction)
azfile
Package azfile provided support for Azure Files(https://azure.microsoft.com/en-us/services/storage/files/).
Package azfile provided support for Azure Files(https://azure.microsoft.com/en-us/services/storage/files/).
bos
Package bos provided support for bos by go-storage.
Package bos provided support for bos by go-storage.
cephfs
Package cephfs provided support for ceph file system(https://ceph.io).
Package cephfs provided support for ceph file system(https://ceph.io).
cos
Package cos provided support for Tencent Cloud's Cloud Object Storage (https://intl.cloud.tencent.com/product/cos)
Package cos provided support for Tencent Cloud's Cloud Object Storage (https://intl.cloud.tencent.com/product/cos)
dropbox
Package dropbox provides support for Dropbox (https://www.dropbox.com/).
Package dropbox provides support for Dropbox (https://www.dropbox.com/).
example
Package example provided support for local file system.
Package example provided support for local file system.
fs
Package fs provided support for local file system.
Package fs provided support for local file system.
ftp
Package ftp provided support for ftp by go-storage.
Package ftp provided support for ftp by go-storage.
gcs
Package gcs provided support for Google Cloud Storage (https://cloud.google.com/storage/)
Package gcs provided support for Google Cloud Storage (https://cloud.google.com/storage/)
gdrive
Package gdrive provided support for local file system.
Package gdrive provided support for local file system.
hdfs
Package hdfs provided support for Hadoop Distributed File System (HDFS).
Package hdfs provided support for Hadoop Distributed File System (HDFS).
kodo
Package kodo provided support for qiniu kodo object storage (https://www.qiniu.com/en/products/kodo)
Package kodo provided support for qiniu kodo object storage (https://www.qiniu.com/en/products/kodo)
memory
Package memory provided support for memory file system.
Package memory provided support for memory file system.
minio
Package minio provided support for minio by go-storage.
Package minio provided support for minio by go-storage.
obs
Package obs provided support for the Huawei Object Storage Service(https://www.huaweicloud.com/intl/en-us/product/obs.html).
Package obs provided support for the Huawei Object Storage Service(https://www.huaweicloud.com/intl/en-us/product/obs.html).
ocios
Package ocios provided support for Oracle Object Storage(https://www.oracle.com/cloud/storage/object-storage/).
Package ocios provided support for Oracle Object Storage(https://www.oracle.com/cloud/storage/object-storage/).
onedrive
Package onedrive provided support for Microsoft onedrive(https://www.microsoft.com/zh-cn/microsoft-365/onedrive/online-cloud-storage).
Package onedrive provided support for Microsoft onedrive(https://www.microsoft.com/zh-cn/microsoft-365/onedrive/online-cloud-storage).
oss
Package oss provided support for Aliyun Object Storage Service (https://cn.aliyun.com/product/oss)
Package oss provided support for Aliyun Object Storage Service (https://cn.aliyun.com/product/oss)
qingstor
Package qingstor provided support for qingstor object storage (https://www.qingcloud.com/products/qingstor/)
Package qingstor provided support for qingstor object storage (https://www.qingcloud.com/products/qingstor/)
s3
Package s3 provided support for AWS s3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html)
Package s3 provided support for AWS s3 (https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html)
storj
Package storj provided support for Storj Decentralized Cloud Storage(https://www.storj.io).
Package storj provided support for Storj Decentralized Cloud Storage(https://www.storj.io).
tar
Package tar provided support for tar archive files.
Package tar provided support for tar archive files.
us3
Package us3 provided support for Ucloud(https://docs.ucloud.cn).
Package us3 provided support for Ucloud(https://docs.ucloud.cn).
uss
Package uss provided support for UPYUN Storage Service (https://www.upyun.com/products/file-storage)
Package uss provided support for UPYUN Storage Service (https://www.upyun.com/products/file-storage)
webdav
Package webdav provided support for webdav archive files.
Package webdav provided support for webdav archive files.
zip
Package zip provided support for zip archive files.
Package zip provided support for zip archive files.
Package types intends to provide all types used in storage layer.
Package types intends to provide all types used in storage layer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL