コンピュータ言語を1つ挙げろと言われたら、多くの人は広く知られた汎用手続き型言語を選ぶだろう。学校で教わる「C」「Java」「Python」などのはずだ。しかし、いつも名前が挙がるこれらの言語は、コンピュータ言語という氷山の一角でしかない。キーワードと構造を使って情報を伝達するものは言語と言える。ここでは、検討すべき10のクラウド言語を紹介する。
1. SQLデータ言語
誰もが認めるところだが、SQLは何十年にもわたってデータ言語の王者として君臨してきた。非リレーショナルデータベースサーバでさえも、何らかのSQLに対応する。クラウドでも、他のすべてのIT分野と同様、至るところでSQLが使われている。
SQLにまつわるジョークを1つ紹介しよう。開発者なら誰でも理解できるはずだ。「バーに入ってきた男が2つのテーブル(table)を見つけてこう言った。『君たちを結合(join)してもいいかな』」
2. XMLデータ言語
XMLは命令ストリームの実行でなく、文書の記述に使用される。通常、コンピュータに命令を出すことはないため、コンピュータ言語とみなされることはあまりない。
XMLは人気の高いデータマークアップ言語である。人気の主な理由はJavaだ。JavaがあるところにはXMLがある。クラウドがコンピューティングの世界に登場するはるか前から、Javaは大規模な分散型システムを動かしているため、XML文書はあらゆるところに存在する。「Apache Hadoop」の設定はXMLファイルに記述されている。
3. 「R」数学言語
R言語は、統計、レポート、グラフの作成といった作業に役立つ。初めての開発者はこちらのインタラクティブなRチュートリアルで、ベクトル、要素、相関データセットの喜びに触れることができる。
Amazonは「Amazon Elastic MapReduce」(Amazon EMR)サービスに「RStudio IDE」をバンドルして、ビッグデータ分析を支援している。
4. 「Clojure」数学言語
Clojureは単なる数学言語ではない。汎用言語でもあり、関数型言語でもある。当然ながら、データアナリストの間で人気が高い。
リアルタイムでデータストリームを処理する「Apache Storm」は、Clojureで記述されている。関数型言語は手続き型言語と違って、セミコロンが不要だ。このClojureスクリプトでは、セミコロンはコメントにしか使われていない。
5. 「Haskell」関数型言語
Haskellは分散コンピューティングに最適な関数型言語であり、クラウドHaskellプラットフォームプロジェクトが数年前に開始されている。
Haskellは業界でかなり普及しており、GitHubのトップ20にランクインしているが、クラウドでの普及は現時点ではそれほど進んでいない。もしかすると、Haskellは習得が難しいと考えられているのかもしれない。それが事実かどうかは、「Try Haskell」チュートリアルを試して、自分で判断してほしい。

提供:Google