MongoDBの次バージョン3.4が近々リリース予定です。
(現時点では3.4.0-rc3)
毎度年のリリースサイクルを考えると12月中頃予定で, 何か致命的なバグがあれば12月末か1月頭に食い込むかもといったところだと思う。
なので, リリースを控えた今だからこそ今回追加される新機能/サービスをおさらいしておこう。

v3.4で追加される新機能

  • Atlas
  • Compass
  • Multi-Datacenter Deployment
  • Graph analytics
  • Faceted navigation
  • Read only views over collection data
  • Sort by collation

Atlas

MongoDB as a Service といった所のMongoDBをオンデマンドで提供するクラウドサービス。
ストレージ量、性能、暗号化の設定が可能。動的変更やレプリカ/シャーディングの設定も可能に。

Compass

MongoDBのGUIツール。MySQLでいうところのPHPmyadminの様なツール。
CRUD機能やデータ構造の可視化, データを地図上に可視化も可能に。

Multi-Datacenter Deployment

地理的に分散されたZoneにパーティショニングが可能に。
Zone間のバランシングのバランシングの速度もお大幅に改善された為,柔軟にスケールアウトがさせやすくなった。
Zoneに分けることで, 複数データを利用者近くに集中させるようなケースにも対応可能になる。

Graph analytics

3.2で追加された$Lookup の拡張としてグラフ検索や分析がサポートされた。
簡単なグラフ処理等でシステム構成にNeo4J等のグラフデータベースを使わなくてよくなる。

Faceted navigation

SQLでいうサブクエリのパイプライン向けオペレータの追加。
サブクエリでaggregationしたデータに対してaggregationの実行が可能に。

Read only views over collection data

既存のコレクションから読み取り専用のビューを作成するためのサポートが追加されました。
ビューを定義するために、既存のcreateコマンドにviewOnのパラメタとパイプラインオプションを追加しました。

Sort by collation

文字列を比較したりソートしたりするときに、言語特有のルールにしたがって比べる事が可能になった。
日本語もサポートされている。ひらがな<カタカナといった
collectionに対して設定しておくと、indexや各メソッドで指定がない限りはcollectionでの設定がそのまま適用される。

その他もろもろ

  • Compression of wire protocol
    クラスタ間, クラサバ間での圧縮処理の追加。
  • Case insensitive index
    大文字小文字の区別をしないインデックスの追加(区別する設定も可能)
  • Spark Connector
    v2.x系サポート。MongoのノードにWorkarを配備しRDDとDB間の効率的な処理ができる。
  • BI-Connector
    Tableau等のBIツールからMySQL互換のSQLが実行が可能になるコネクタ。

個人的な所感

3.2に比べて驚くような機能は機能はさほどなくエンタープライズの視点から見た時にMongoDBに不足している点を埋めてきた様な印象。
機能的にも分析に寄ったところが多いのが少々気がかりだが, グラフ扱える点やcase insensitive indexやcollation等の言語処理面での進化もある。
Spark connectorでSpark 2.x対応も入っているので, 国内では非構造データを扱うDBとしてのMongoDB × 分析用途でのSparkが順当な構成になるのかなと感じています。

Related Posts