Jump to content

MinIO: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m Duplicate word removed
 
(39 intermediate revisions by 28 users not shown)
Line 1: Line 1:
{{Short description|High Performance Object Storage released under the AGPL open-source license}}
{{Advert|date=September 2019}}
{{Advert|date=September 2019}}
{{notability|corp|date=September 2021}}
{{Infobox software
{{Infobox software
| name = MinIO
| name = MinIO
| title = MinIO Object Storage
| title = MinIO Object Storage
| logo =
| logo = https://min.io/resources/img/logo/main-logo.svg
| developer = MinIO, Inc
| developer = MinIO, Inc
| released = {{Start date and age|df=yes|2016|03|11}}<ref>{{Cite web|title=minio/minio at RELEASE.2016-03-11T03-45-50Z|url=https://github.com/minio/minio/releases/tag/RELEASE.2016-03-11T03-45-50Z|website=GitHub|language=en}}</ref>
| released = {{Start date and age|df=yes|2016|03|11}}<ref>{{Cite web|title=minio/minio at RELEASE.2016-03-11T03-45-50Z|url=https://github.com/minio/minio/releases/tag/RELEASE.2016-03-11T03-45-50Z|website=GitHub|language=en}}</ref>
| latest release version = {{wikidata|property|edit|reference|P348}}
| programming language = [[Go (programming language)|Go]]
| latest release date = {{start date and age|{{wikidata|qualifier|P348|P577}}}}
| genre = [[Object storage]]
| programming language = [[Go (programming language)|Go]]
| license = [[GNU_Affero_General_Public_License|GNU Affero GPL]]
| genre = [[Object storage]]
| license = [[GNU Affero General Public License|GNU Affero GPL]]
}}
}}


'''MinIO''' is a High Performance Object Storage released under GNU Affero General Public License v3.0. It is API compatible with [[Amazon S3]] cloud storage service. It can handle unstructured data such as photos, videos, log files, backups, and container images with (currently) the maximum supported object size of 5TB.<ref>https://docs.min.io/docs/minio-server-limits-per-tenant.html</ref>
'''MinIO''' is an [[object storage]] system released under GNU Affero General Public License v3.0.<ref>{{Cite web |title=Kubernetes storage: It’s object or nothing for MinIO {{!}} Computer Weekly |url=https://www.computerweekly.com/news/366553212/Kubernetes-storage-Its-object-or-nothing-for-MinIO |access-date=2023-11-03 |website=ComputerWeekly.com |language=en}}</ref> 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.<ref>{{Cite web |title=MinIO Documentation: Thresholds and Limits |url=https://min.io/docs/minio/linux/operations/concepts/thresholds.html |access-date=2024-05-23 |website=min.io |language=en}}</ref>


== History & development ==
== History & development ==
MinIO is developed by MinIO Inc, a [[Silicon Valley]]{{En dash}}based technology startup in November 2014.<ref>{{Cite web |last=Miller |first=Ron |date=2023-05-15 |title=Hear how MinIO built a unicorn in object storage on top of Kubernetes and open source |url=https://techcrunch.com/2023/05/15/hear-how-minio-built-a-unicorn-in-object-storage-on-top-of-kubernetes-and-open-source/ |access-date=2023-10-29 |website=TechCrunch |language=en-US}}</ref>
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.


MinIO has published a number of [[Benchmark (computing)|benchmarks]] to disclose both its own performance and the performance of an [[object storage]] in general, those include comparisons to an [[Amazon S3]] for [[Trino (SQL query engine)|Trino]], [[Presto (SQL query engine)|Presto]], and [[Apache spark|Spark]] as well as throughput results for the S3Benchmark on [[Hard disk drive|HDD]] and [[NVM Express|NVMe]] drives.<ref name="BandF"/><ref>https://blocksandfiles.com/2019/11/13/minio-benchmark-object-storage-speed-wars/</ref>
MinIO has published a number of [[Benchmark (computing)|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 (SQL query engine)|Trino]], [[Presto (SQL query engine)|Presto]], and [[Apache Spark|Spark]], as well as throughput results for the S3Benchmark on [[Hard disk drive|HDD]] and [[NVM Express|NVMe]] drives.<ref name="BandF">{{cite web |last1=Mellor |first1=Chris |date=2019-07-24 |title=Traditional file and block storage vendors are toast – Minio |url=https://blocksandfiles.com/2019/11/13/minio-benchmark-object-storage-speed-wars/ |accessdate=2021-10-17 |website=blocksandfiles.com}}</ref><ref>{{Cite web|url=https://blocksandfiles.com/2019/11/13/minio-benchmark-object-storage-speed-wars/|title = MinIO fires fresh salvo in object storage speed wars|date = 13 November 2019}}</ref>

=== Re-licensing ===
As of April 23 2021 MinIO, Inc submitted a change that re-licensed the project from its previous Apache V2 to GNU Affero Public License Version 3 (AGPLv3). <ref>https://github.com/minio/minio/commit/069432566fcfac1f1053677cc925ddafd750730a#diff-c693279643b8cd5d248172d9c22cb7cf4ed163a3c98c8a3f69c2717edd3eacb7</ref>.


== Architecture ==
== Architecture ==
MinIO storage stack has three major components: '''MinIO Server''', '''MinIO Client''' (a.k.a. <code>mc</code>, which is a command-line client for the object and file management with any [[Amazon S3]] compatible servers), and '''MinIO Client SDK''' that can be used by application developers to interact with any [[Amazon S3]] compatible server.
MinIO's storage stack has three major components: '''MinIO Server''', '''MinIO Client''' (a.k.a. <code>mc</code>, 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 Server ===
MinIO [[cloud storage]] server is designed to be bundled along with an existing application stack, and is optimized for large [[Enterprise resource planning|enterprise deployments]]. MinIO server can be installed both on physical and virtual machines or launched as [[Docker (software)|Docker]] containers and deployed on container orchestration platforms like [[Kubernetes]].<ref>{{Cite web|url=https://diamanti.com/hyperscale-ml-with-kubeflow-minio-tensorflow-and-diamanti/|title = Hyperscale ML with Kubeflow, MinIO, TensorFlow and Diamanti|date = 14 November 2020}}</ref>
MinIO [[cloud storage]] server is designed to be minimal and scalable. It is light enough to be bundled along with the application stack, similar to [[NodeJS]], and [[Redis]].

Designed for high performance,<ref name="BandF">{{cite web|url=https://blocksandfiles.com/2019/11/13/minio-benchmark-object-storage-speed-wars/ |title=Traditional file and block storage vendors are toast – Minio|first1=Chris |last1=Mellor|date=2019-07-24|accessdate=2021-10-17|website=blocksandfiles.com}}</ref> MinIO offers a suite of features that are specific to large [[Enterprise resource planning|enterprise deployments]], these include [[erasure coding]], [[data degradation|bitrot]] protection, [[encryption]]/[[Write once read many|WORM]], [[identity management]], continuous [[Replication (computing)|replication]], global federation, and multi-cloud deployments via gateway mode.

MinIO server is hardware [[agnostic]], it can be installed on physical or virtual machines or launched as [[Docker (software)|Docker]] containers and deployed on container orchestration platforms like [[Kubernetes]].<ref>https://diamanti.com/hyperscale-ml-with-kubeflow-minio-tensorflow-and-diamanti/</ref>


=== MinIO Client ===
=== MinIO Client ===
MinIO Client (<code>mc</code>) provides an alternative to the standard UNIX commands (e.g. <code>[[ls]]</code>, <code>[[cat (Unix)|cat]]</code>, <code>[[cp (Unix)|cp]]</code>, <code>mirror</code>, <code>[[diff]]</code>, etc) adding support for an [[Amazon S3]] compatible cloud storage services. It works on [[Linux]], [[MacOS|Mac]] and [[Microsoft Windows|Windows]] platforms.<ref>https://github.com/minio/minio#binary-download</ref>
MinIO Client provides an alternative to the standard UNIX commands (e.g. <code>[[ls]]</code>, <code>[[cat (Unix)|cat]]</code>, <code>[[cp (Unix)|cp]]</code>, <code>mirror</code>, <code>[[diff]]</code>, etc.) and adds support for [[Amazon S3]] compatible cloud storage services. It works on [[Linux]], [[MacOS|Mac]], and [[Microsoft Windows|Windows]] platforms.<ref>{{Cite web|url=https://github.com/minio/minio#binary-download|title = MinIO Quickstart Guide|website = [[GitHub]]|date = 20 November 2021}}</ref>


=== MinIO Client SDK ===
=== MinIO Client SDK ===
MinIO Client SDK provides an [[Application programming interface|API]] to access any [[Amazon S3]] compatible object storage server.<ref>{{Cite news|last=Nicolas|first=Philippe|date=2016-07-15|title=The History Boys: Object storage ... from the beginning|language=en|work=The Register|url=https://www.theregister.co.uk/2016/07/15/the_history_boys_cas_and_object_storage_map/}}</ref>{{fv|reason=The linked article mentions MinIO only in a bulleted list, never again; and certainly doesn't substantiate this claim.|date=October 2021}} Language bindings are available for [[Go (programming language)|Go]], [[Java (programming language)|Java]], [[Python (programming language)|Python]], [[JavaScript]], [[Haskell (programming language)|Haskell]], and languages hosted on top of the [[.NET Framework]].
MinIO provides client SDKs for [[Go (programming language)|Go]], [[Java (programming language)|Java]], [[Python (programming language)|Python]], [[JavaScript]], [[Haskell (programming language)|Haskell]], and [[.NET Framework]] to access any [[Amazon S3]] compatible object storage server.<ref>{{Cite news|last=Nicolas|first=Philippe|date=2016-07-15|title=The History Boys: Object storage ... from the beginning|language=en|work=The Register|url=https://www.theregister.co.uk/2016/07/15/the_history_boys_cas_and_object_storage_map/}}</ref>{{failed verification|reason=The linked article mentions MinIO only in a bulleted list, never again; and certainly doesn't substantiate this claim.|date=October 2021}}


==References==
==References==

Latest revision as of 21:56, 9 August 2024

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] Edit this on Wikidata / 14 February 2024; 8 months ago (14 February 2024)
Repository
Written inGo
TypeObject storage
LicenseGNU Affero GPL
Websitemin.io Edit this on Wikidata

MinIO is an 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.[4]

History & development

[edit]

MinIO is developed by MinIO Inc, a Silicon Valley–based technology startup in November 2014.[5]

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.[6][7]

Architecture

[edit]

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

[edit]

MinIO cloud storage server is designed to be bundled along with an existing application stack, and is optimized for large enterprise deployments. MinIO server 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

[edit]

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

[edit]

MinIO provides client SDKs for Go, Java, Python, JavaScript, Haskell, and .NET Framework to access any Amazon S3 compatible object storage server.[10][failed verification]

References

[edit]
  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. ^ "MinIO Documentation: Thresholds and Limits". min.io. Retrieved 2024-05-23.
  5. ^ 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.
  6. ^ Mellor, Chris (2019-07-24). "Traditional file and block storage vendors are toast – Minio". blocksandfiles.com. Retrieved 2021-10-17.
  7. ^ "MinIO fires fresh salvo in object storage speed wars". 13 November 2019.
  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.
[edit]