MinIO

Last updated
MinIO Object Storage
Developer(s) MinIO, Inc
Initial release11 March 2016;8 years ago (2016-03-11) [1]
Stable release
2024-02-14T21-36-02Z [2]   OOjs UI icon edit-ltr-progressive.svg / 14 February 2024;2 months ago (14 February 2024)
Repository
Written in Go
Type Object storage
License GNU Affero GPL
Website min.io   OOjs UI icon edit-ltr-progressive.svg

MinIO is a High-Performance Object Storage system released under GNU Affero General Public License v3.0. [3] It is API compatible with the Amazon S3 cloud storage service. It is capable of working with unstructured data such as photos, videos, log files, backups, and container images with the maximum supported object size being 50TB.[ citation needed ]

Contents

History & development

MinIO's main developer is MinIO Inc, a Silicon Valley based technology startup founded by Anand Babu Periasamy, Garima Kapoor, and Harshavardhana in November 2014. [4]

MinIO has published a number of benchmarks to disclose both its own performance and the performance of an object storage in general. These benchmarks include comparisons to an Amazon S3 for Trino, Presto, and Spark, as well as throughput results for the S3Benchmark on HDD and NVMe drives. [5] [6]

Re-licensing

In April 23, 2021, MinIO, Inc re-licensed the project from its previous Apache V2 to GNU Affero Public License Version 3 (AGPLv3). [7]

Architecture

MinIO's storage stack has three major components: MinIO Server, MinIO Client (a.k.a. mc, which is a command-line client for the object and file management with any Amazon S3 compatible servers), and MinIO Client SDK, which can be used by application developers to interact with any Amazon S3 compatible server.

MinIO Server

MinIO cloud storage server is designed to be as small as possible and scalable. Additionally, It is light enough to be bundled along with an existing application stack, similar to NodeJS and Redis.

MinIO is optimized for large enterprise deployments, including features like erasure coding, bitrot protection, encryption/WORM, identity management, continuous replication, global federation, and multi-cloud deployments via gateway mode.

MinIO server is hardware agnostic and thus can be installed both on physical and virtual machines or launched as Docker containers and deployed on container orchestration platforms like Kubernetes. [8]

MinIO Client

MinIO Client provides an alternative to the standard UNIX commands (e.g. ls , cat , cp , mirror, diff , etc.) and adds support for Amazon S3 compatible cloud storage services. It works on Linux, Mac, and Windows platforms. [9]

MinIO Client SDK

MinIO Client SDK provides an API to access any Amazon S3 compatible object storage server. [10] [ failed verification ] Language bindings are available for Go, Java, Python, JavaScript, Haskell, and languages hosted on top of the .NET Framework.

Related Research Articles

Filesystem in Userspace (FUSE) is a software interface for Unix and Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a bridge to the actual kernel interfaces.

Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface. Amazon S3 uses the same scalable storage infrastructure that Amazon.com uses to run its e-commerce network. Amazon S3 can store any type of object, which allows uses like storage for Internet applications, backups, disaster recovery, data archives, data lakes for analytics, and hybrid cloud storage. AWS launched Amazon S3 in the United States on March 14, 2006, then in Europe in November 2007.

Nuxeo is a software company making an open source content management system.

Ceph is a free and open-source software-defined storage platform that provides object storage, block storage, and file storage built on a common distributed cluster foundation. Ceph provides completely distributed operation without a single point of failure and scalability to the exabyte level, and is freely available. Since version 12 (Luminous), Ceph does not rely on any other conventional filesystem and directly manages HDDs and SSDs with its own storage backend BlueStore and can expose a POSIX filesystem.

An embedded database system is a database management system (DBMS) which is tightly integrated with an application software; it is embedded in the application. It is a broad technology category that includes:

Redis is a source-available, in-memory storage, used as a distributed, in-memory key–value database, cache and message broker, with optional durability. Because it holds all data in memory and because of its design, Redis offers low-latency reads and writes, making it particularly suitable for use cases that require a cache. Redis is the most popular NoSQL database, and one of the most popular databases overall. Redis is used in companies like Twitter, Airbnb, Tinder, Yahoo, Adobe, Hulu, Amazon and OpenAI.

<span class="mw-page-title-main">Jenkins (software)</span> Open source automation server

Jenkins is an open source automation server. It helps automate the parts of software development related to building, testing, and deploying, facilitating continuous integration, and continuous delivery. It is a server-based system that runs in servlet containers such as Apache Tomcat. It supports version control tools, including AccuRev, CVS, Subversion, Git, Mercurial, Perforce, ClearCase, and RTC, and can execute Apache Ant, Apache Maven, and sbt based projects as well as arbitrary shell scripts and Windows batch commands.

In computing, a distributed file system (DFS) or network file system is any file system that allows access to files from multiple hosts sharing via a computer network. This makes it possible for multiple users on multiple machines to share files and storage resources.

Docker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers. The service has both free and premium tiers. The software that hosts the containers is called Docker Engine. It was first released in 2013 and is developed by Docker, Inc.

In computing, Hazelcast is a unified real-time data platform based on Java that combines a fast data store with stream processing. It is also the name of the company developing the product. The Hazelcast company is funded by venture capital and headquartered in Palo Alto, California.

appserver.io is an application server for PHP-based web environments. The project consists of middleware which delivers classical PHP web applications and provides additional services.

Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. Originally designed by Google, the project is now maintained by a worldwide community of contributors, and the trademark is held by the Cloud Native Computing Foundation.

<span class="mw-page-title-main">Eclipse Che</span> Developer workspace server software

Eclipse Che is an open-source, Java-based developer workspace server and online IDE. It includes a multi-user remote development platform. The workspace server comes with a flexible RESTful webservice. It also contains a SDK for creating plug-ins for languages, frameworks or tools. Eclipse Che is an Eclipse Cloud Development (ECD) top-level project, allowing contributions from the user community.

<span class="mw-page-title-main">Wiki.js</span> Wiki engine written in JavaScript

Wiki.js is a wiki engine running on Node.js and written in JavaScript. It is free software released under the Affero GNU General Public License. It is available as a self-hosted solution or using "single-click" install on the DigitalOcean and AWS marketplace.

<span class="mw-page-title-main">OpenIO</span>

OpenIO offered object storage for a wide range of high-performance applications. OpenIO was founded in 2015 by Laurent Denel (CEO), Jean-François Smigielski (CTO) and five other co-founders; it leveraged open source software, developed since 2006, based on a grid technology that enabled dynamic behaviour and supported heterogenous hardware. In October 2017 OpenIO was completed a $5 million funding rounds. In July 2020 OpenIO had been acquired by OVH and withdrawn from the market to become the core technology of OVHcloud object storage offering.

The tools listed here support emulating or simulating APIs and software systems. They are also called API mocking tools, service virtualization tools, over the wire test doubles and tools for stubbing and mocking HTTP(S) and other protocols. They enable component testing in isolation.

TiDB is an open-source NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. Designed to be MySQL compatible, it is developed and supported primarily by PingCAP and licensed under Apache 2.0. It is also available as a paid product. TiDB drew its initial design inspiration from Google's Spanner and F1 papers.

Teleport is an open-source tool for providing zero trust access to servers and cloud applications using SSH, Kubernetes and HTTPS. It can eliminate the need for VPNs by providing a single gateway to access computing infrastructure via SSH, Kubernetes clusters, and cloud applications via a built-in proxy.

<span class="mw-page-title-main">Azure Linux</span> Microsoft open source operating system

Azure Linux, previously known as CBL-Mariner, is a free and open-source Linux distribution that Microsoft has developed. It is the base container OS for Microsoft Azure services and the graphical component of WSL 2.

<span class="mw-page-title-main">Dapr</span> Event-driven, portable runtime for building microservices on cloud and edge

Dapr is a free and open source runtime system designed to support cloud native and serverless computing. Its initial release supported SDKs and APIs for Java, .NET, Python, and Go, and targeted the Kubernetes cloud deployment system.

References

  1. "minio/minio at RELEASE.2016-03-11T03-45-50Z". GitHub.
  2. "Bugfix release".
  3. "Kubernetes storage: It's object or nothing for MinIO | Computer Weekly". ComputerWeekly.com. Retrieved 2023-11-03.
  4. Miller, Ron (2023-05-15). "Hear how MinIO built a unicorn in object storage on top of Kubernetes and open source". TechCrunch. Retrieved 2023-10-29.
  5. Mellor, Chris (2019-07-24). "Traditional file and block storage vendors are toast – Minio". blocksandfiles.com. Retrieved 2021-10-17.
  6. "MinIO fires fresh salvo in object storage speed wars". 13 November 2019.
  7. "Update license change for MinIO · minio/Minio@0694325". GitHub .
  8. "Hyperscale ML with Kubeflow, MinIO, TensorFlow and Diamanti". 14 November 2020.
  9. "MinIO Quickstart Guide". GitHub . 20 November 2021.
  10. Nicolas, Philippe (2016-07-15). "The History Boys: Object storage ... from the beginning". The Register.