ほとんど知られていない、IoTに役立つ10個の最新Apacheプロジェクト - 2018年2月

Apache TLP+Incubator 一覧 2018年2月 を作りながら目をつけた、IoTに役立つ10個の最新Apacheプロジェクトを紹介します。まだほとんど日本語解説記事が無いもの(Google日本語力が1,000件未満のもの)を集めました。

筆者はざっと見ただけでまだ使ってはいませんので、解説が不正確かもしれませんし、本当に役立つかは未知数です。まずは、「こんなオープンソースがあるんだ〜」というふうに、本記事が知るキッカケになっていただければ幸いです。

なお、Google日本語力は、Googleにおいて"Apache X"とダブルクォーテーションで囲って日本語検索をした検索件数のことで、「日本で知られている」度合いを表しています。特に、Google日本語力0件となったプロジェクトは、もしかしたら本記事が日本初紹介かもしれません。

1. ほとんど知られていないIoTに役立つ10個のプロジェクト

以下では、Google日本語力が小さい(=知られていない)方から紹介しています。

1.1. Apache PLC4X (Incubator)

  • 2017年12月 Incubator昇格、Google日本語力 0件。
  • 産業用PLC (Programmable Logic Controller)との通信ライブラリ。
  • Modbus、OPC-UA、S7/Profinetをサポート。

1.2. Apache Gossip (Incubator)

  • 2016年4月 Incubator昇格、Google日本語力 0件。
  • ピアツーピアで情報を伝播させるGossipプロトコル(というプロトコルがあるのですね)の実装。
  • 本来は、クラスタの障害検出に使われるようだ。Aapche Cassandraで使われているGossipと同じ?
  • IoTのデバイス同士のピアツーピアの情報交換にも使えるかもしれない。

1.3. Apache iota (Incubator)

  • 2016年1月 Incubator昇格、Google日本語力 0件。
  • Apacheの著名オープンソースを組み合わせたフルスタックのIoTプラットフォーム。同名のブロックチェーン技術とは無関係。
  • iotaとしては、セキュリティサービスを含むデータフロー、マネジメント、暗号化や変換などのマイクロサービスとAPIフレームワークを提供し、デバイスとKafkaとの仲介を行う。

1.4. Apache Twill

  • 2016年6月 TLP昇格、Google日本語力 84件。
  • Hadoop YARNを使ったリソース制御アプリを、Javaスレッドと同様なモデルで開発できる。

1.5. Apache Bahir

  • 2016年5月 TLP昇格、Google日本語力 90件。
  • Spark、Flinkの拡張機構(ストリーミングコネクタやデータソース)を共通化したもの。
  • バハールまたはバヒルと読む?

1.6. Apache Edgent (Incubator)

  • 2016年2月 Incubator昇格、Google日本語力 91件。
  • エッジコンピューティングのためのプログラミングモデルとランタイムを提供。エッジデバイス上でストリーミング分析する上で、一定の条件のもと、バックエンドに限定されたデータを送信する。
  • バックエンドとの通信は、Kafka、MQTT、IBM Watson IoT Platformなどに対応。
  • Java、Android対応。主ターゲットはRaspberry Pi。

1.7. Apache Mynewt

  • 2017年6月 TLP昇格、Google日本語力 120件。
  • 少リソースでも動作する組み込み向けRTOS (RealTime OS)。
  • BLE5、Bluetooth mesh、Wi-Fi、LoRaなどのネットワークスタックを提供する。
  • Arduinoを含むボードマイコン向け。
  • OIC1.1(OCF規格)による集中管理が可能。

1.8. Apache RocketMQ

  • 2017年9月 TLP昇格、Google日本語力 288件。
  • 中国アリババ社が提供する爆速のメッセージングミドルウェア。Kafkaの置き換えを狙う。多重度が高い分散環境において、Kafkaよりも高速らしい。
  • https://rocketmq.apache.org/docs/motivation/ にKafkaとの比較詳細がある。

1.9. Apache PredictionIO

  • 2017年10月 TLP昇格、Google日本語力 672件。
  • Spark上で使える機械学習。

1.10. Apache Samza

  • 2015年1月 TLP昇格。Google日本語力 959件。
  • LinkdIn社がKafkaと親和性が高いように開発したストリーミングエンジン。

2. ある程度知られている〜超有名プロジェクト

ある程度知られているプロジェクトを、比較対象としていくつか紹介します。そうはいっても、Flinkは知らない人も多いのでは。後ろの3つは超有名プロジェクトです。

2.1. Apache Flink

  • 2014/12 TLP昇格、Google日本語力 3,860件。
  • バッチもできるがリアルタイムストリーミングに強い。ストリーミング領域ではSparkを置き換える存在になる可能性あり。
  • フリンクと読む。

2.2. Apache Kafka

  • 2012/11 TLP昇格、Google日本語力 36,400件。
  • メッセージブローカーとしてApacheエコシステムの中核の一部をなす存在。

2.3. Apache Hadoop

  • 2008/1 TLP昇格、Google日本語力 52,200件。
  • 2010年代のApacheビッグデータ関連プロジェクトのエコシステムの中核。

2.4. Apache Spark

  • 2014/2 TLP昇格、Google日本語力 74,400件。
  • バッチ、インタラクティブ、ストリーミングそれぞれに活用可能な高機能・分散ビッグデータクエリエンジン。Apacheエコシステムの中でHadoopのクエリエンジンを置き換える存在になった。

3. おまけ

IoTとは関係は薄いが、面白そうだと思ったプロジェクトを紹介します。

3.1. Apache Royale

  • 2017年9月 TLP昇格、Google日本語力 38件。
  • JavaScriptで、あらゆるデバイス上でのネイティブアプリ開発ができる仮想環境。Cordovaの発展系?

3.2. Apache Fineract

  • 2017年4月 TLP昇格、Google日本語力 80件。
  • 金融業務システムのオープンソース版という珍しい存在。

3.3. Apache OpenWhisk (Incubator)

  • 2016年11月 Incubator昇格、Google日本語力 632件。
  • サーバーレスコンピューティング環境。

3.4. Apache Metron

  • 2017年4月 TLP昇格、Google日本語力 657件。
  • いわゆるSIEM (Security Information and Event Management: セキュリティ情報イベント管理)のオープンソース版。Cisco社寄贈。
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.