本記事は、株式会社ギックスの運営していた分析情報サイト graffe/グラーフ より移設されました(2019/7/1)
目次
オープンソースソフトウェア(OSS)は無償で利用できるソフトウェアです(制限はあります)
みなさんは、「オープンソースソフトウェア」(略してOSS)という言葉を耳になさったことがあるでしょうか?OSSはソフトウェアの作成者がソフトウェアの元になっているソースコードをみんなに原則無償で公開し再利用を許可しているソフトウェアです。
無償でも高性能。今やITの社会基盤です
OSSは無償で公開されているがゆえに仕様に関する一切の責任を使用者が負うことになります。そう聞くとなんだか無責任でいい加減なものに聞こえるかもしれませんが、OSSの中には企業が販売しているものよりも遥かに高性能、高信頼性を実現しているものが数多くあります。これはソースコードが公開されていることにより全世界の優秀な技術者がそのソフトウェアに対して評価,障害抽出,障害解消,機能追加などさまざまな取り組みを行っていることで、ソフトウェアそのものの性能が向上しているからなのです。現在は、この高性能さゆえに「企業が商用自社製品をOSSを元に開発する」という活動も非常に一般的です。
代表的なオープンソースの利用形態
ここでみなさんが「インターネット上で小さな通販サイトのシステムを作りたい」としましょう。この通販サイトシステムは1つのコンピュータ上に入っています。この場合、このシステムにおいOSSがどのように使われているかを説明します。
OSにはLinuxを
まずコンピュータにはOSがインストールされなければなりません。このOSもOSSを利用することができます。OSSの名前はLinux(リナックス)といいます。
通販サイトのサーバにはApacheを
通販サイトはサイト利用者に画面を表示しなければなりません。この画面を提供するサーバもOSSを利用します。OSSの名前はApache(アパッチ)といいます。
通販サイトのデータベースにはPostgreSQLを
通販サイトはデータを格納・管理しなければなりません。このためにサイトにはデータベースマネージメントシステム(DBMS)が必要です。このDBMSに関してもOSSの利用が可能です。OSSの名前はPostgreSQL(ポストグレエスキューエル)といいます。
上記の通り、サイトの構築に必要なほぼ全てのソフトウェアをOSSで揃えてしまうことが可能なのです。
クラウド上にもOSSがあふれている
以前の記事でクラウドについて説明させていただきました。また有名なクラウドベンダであるAWSのクラウドサービス「Amazon EC2(仮想コンピュータ)」や「Amazon RDS(クラウドデータベース)」についても説明させていただきました。これらのクラウドサービスに関しても数多くのOSSが利用されています。以下に主だったものを例として挙げます。
Amazon EC2:
OSとしてLinuxが使用されています。
Amazon RDS
DBMSとしてMySQLやPostgreSQLが使用されています。
Amazon EMR
基盤としてApache Hadoopが使用されています。
(注意)どんなOSSでも自由に使っていいわけではありません
このように直接,間接を問わず、今や我々の生活に欠かせないOSSですが、いつ、どんな場合でも、どのような用途でも使ってよいわけではありません。OSSにはソフトウェア個別に「ライセンス」が宣言されています。利用者にはこのライセンスに準拠した利用が求められます。一番わかりやすい例として「商用利用」があります。「研究目的に使用するのであれば無償ですが、そのOSSを使って商行為を行う目的で使用するのであれば有償です」といったOSSも数多く存在します。我々がOSSの導入を検討する際には検討対象のOSSがどのようなライセンス形態をとっているかを事前に確認することが重要です。
データ分析用語:索引