最近では「Postgres」が勢いに乗っている。Postgresは、時代遅れになりつつあるオープンソースリレーショナルデータベースだという評価があるにも関わらず、「MySQL」よりも成長している。実際、PostgresはDB-Enginesの調査による最新のデータベース人気ランキングで、4位に返り咲いた。
しかし、NoSQL系データベースの最近の人気は、そのPostgresを上回る。
NoSQLの台頭を示す数字は多いが、人気を集めているのには明白な理由がある。最近は乱雑で、変化が大きく、極めて増加のペースが速いデータが扱われることが多くなっているためだ。このようなデータには、新たな種類のデータベースが必要となる。
高まる人気
2015年の「Microsoft SQL Server」(そしてOracleとMySQL)の不振はこれが理由かもしれない(IBMの「DB2」の凋落はもう少し前から始まっている)。
三大リレーショナルデータベース(RDBMS)は、それに続く3つのデータベース(Postgres、「MongoDB」、およびIBMのDB2)に対してまだ大きなリードを保っているが、新たに導入されるものは、圧倒的にNoSQL系のデータベースが多い。
次の表は、データベーストップ10の過去1年間の成績をまとめたものだ。
DB-Enginesは、データベースの人気を評価するために、さまざまなデータ(Google検索からLinkedInのプロフィールまで)を集約しているが、導入の進み具合を示す最善の指標は、その技術のスキルを持つ技術者の求人の数かもしれない。
これについては、RDBMSではあまり変化がないのに対して、MongoDBや「Apache Cassandra」などのNoSQL系のデータベースでは飛躍的に増加している。
NoSQL系のデータベースを採用する利点はいくつもあるし、以前からあるワークロードもNoSQLで処理できることは確かだが、NoSQLの採用が増えている最大の理由は、やはりビッグデータだろう。
ビッグデータはさらに大きく
今では、データはあらかじめ整理された、予想可能なものばかりではなくなっている。確かにそのモデルに当てはまるアプリケーションも多いが、構造が部分的だったり、構造がなかったりといった、扱いにくいデータはますます増えてきている。
リレーショナルデータベースは、誕生した時代には素晴らしいものだった。クエリの設計とスキーマの設計を切り離すことにより、開発者は後から好きな形でデータをクエリできたため、スキーマの設計だけに集中することができた。しかし、その利点(つまり固定されたスキーマ設計)が、RDBMSのアキレス腱となった。