2016/02/20

Dominoデータをモダナイズする「LDC Via」ソリューション

IBM Connect 2016に参加するにあたり、テクてく Lotus 技術者夜会で「LDC Via」という海外ソリューションを視察してくる、という宿題を頂きました。
現地では、LDC Viaチームと2回ほどミーティングをさせて頂きましたので、簡単にご報告いたします。

LDC Via とは
イギリスで活動する4人の熟練の Domino 技術者が立ち上げた組織で、現在のNotesのデータ(nsf) をより活用するためのソリューションを提供しています。
彼らの言葉では、データや知識を "modernize" する、と呼んでいるようです。

主に以下の3つがこのソリューションのキーです。
1) NotesDBライクなクラウドデータベースサービス
2) Notesデータベース(nsf)とMongoDBとの同期
3) MongoDBのデータをUI表示するための機能

それぞれ、詳細は以下の通りです。(以下は全て私の理解であり、実際は異なる可能性があります)

1) NotesDBライクなクラウドデータベースサービス

これはバックエンドの実体にMongoDBを使いつつ、NotesDBのような使い方が出来るサービスです。
例えば IBMのDBaaSの1つである compose などの同類に聞こえなくもないのですが、特徴的なのは「Notesデータベースを強く意識している」という点です。

例えば、以下のようなことが実現されています。
- 読者フィールド、作成者フィールドに相当するセキュリティがある
- 返答文書などの階層構造がある
- Notesのリッチテキストデータを引き続ける
- 添付ファイルが格納出来る

基本的にはクラウドのDBサービスですので、データアクセスは REST API になり、上記の機能を含め、Notesの扱いを意識したAPIが大量にあります。
LDC Via API Reference
逆に、いくらバックエンドが MongoDB であったとしても、MongoDBのAPIを直接叩くことは許可されていないそうです。
MongoDBを使うことで、DBサイズやスケーラビリティなど、今の nsf 以上のメリットを受けつつ、Notes的なAPIを使った開発が出来ることになるそうです。
MongoDBを使うことの恩恵は他にもあるのでしょうが、それは利用者が直接使うのではなく、API経由などで提供されていく形になるようです。

REST API ということは、開発言語を問わないので、node.js や Java、そしてXPages も含め好きな言語でデータ取得に行ってよいというのが売りです。

2) Notesデータベース(nsf)とクラウドデータベースとの同期
既存のNotesデータベースと、LDC Viaクラウドサービス(実体MongoDB)とのデータの同期機能があります。現在は、Notes⇒クラウドDBの片側同期ですが、近い将来、双方向の機能がサポートされるとのことです。
この同期にはツールを使いますが、以下の2種類が用意されています。

(1) DominoでDDSを有効にし、クラウド側からJSON経由でデータを同期する
(2) DominoのJavaAPIで作られたツールを使って同期する

デモを拝見して会話したところ、JSON経由はデータベースを1つ1つ指定するため、一括での大量移行には向きません。まとめて移行する場合は、Javaツールを使います。
もちろん、この移行のときに、現行の読者フィールドや文書階層などが維持されるということのようです。

3) MongoDBのデータをUI表示するための機能
上記の通り、基本的な機能はクラウドデータベース機能+ツールなのですが、LDC Via Lens という機能を使うと、さらにデータを表示することが出来ます。
特に、Dominoアプリケーションの中でも代表的な
- ディスカッション
- 文書ライブラリ
- チームルーム
- メールデータベース
は、近代的な Responsive Web UI でモバイルを含む、マルチデバイスで、セキュリティや階層構造を維持したまま閲覧が可能だそうです。

さらに、Notes でフォームを作るように、フィールドマッピングを行いながら、任意のDBの表示フォームを作ることが可能なようです。
ただ、私が理解する限り、アプリケーションプラットフォームとして使えるほどではなさそうなので、REST API 以外のデータ閲覧手段の1つだと認識してます。
(Notesワークフローがそのまま動くとかではないと思います)

また、データベースの検索なども可能であり、いわゆる「全文検索」と「フィールド別検索」 の組み合わせなどが可能とのことです。
複数のDBを串刺し検索したいという要望も多いらしく、現在は REST API での自作が可能なレベルですが、トッププライオリティで対応すると言っておりました。


LDC Viaソリューションの適用箇所
データをNotesの外に出していくわけですが、現行のNotes/Domino環境に対してポジティブに適用しているところが売りで、そこらへんはDominoコミュニティから生まれてくるだけのことがあります。

- 閲覧だけで使っているDominoの文書ライブラリをクラウドに移行し、オンプレ運用負担を軽くする
-外部へのデータ公開の1つのやり方として
セキュリティの維持や部分的な公開、マルチデバイスへの対応、検索対応など、良いとこどりを出来るのが売りみたいです。


よくある質問と、その回答
Q: 読者フィールドが守れるということは、ユーザーディレクトリの同期が必要なのでは?
A: やはりユーザー情報として、Notes階層名を別名として持つことが必要なようですが、APIで入れ込めますよう、とのことです。
なお、TDI のアダプターがあるわけではないですが、技術的には出来るでしょうとのこと。

Q: 読者フィールドがあるということは、パフォーマンスに問題はないのか?
A: 過去にパフォーマンスの問題があったNotesDBなどを使ってテストしてみたが、今のところパフォーマンス問題は見当たらない

Q: サイズ制限、DB数制限などは?
A: 特にないと思っている

Q: ノンコーディングで、どこまでアプリが作れるのか?
A: Lens機能の範囲で、フォームやビューを作ることが出来る。
(ワークフローなどは多分無理でしょう)

Q: ソーシャル連携を含め、外部連携はどうなっているか?
A: API で好きにつなげてください

Q: モバイルからのアクセスは?
A: Lens 機能で、例えば標準テンプレートは Responsive インタフェースで提供されている

Q: 串刺し検索は?
A: 現行はAPI。これから開発する予定。

Q: 文書リンクは機能するか?
A: 機能する (みたいです)

Q: Notesは出来るが、LDC Via が出来ないことは?
A: データベース機能という意味では、例えば現在データの暗号化の機能などはない。


最後に、UIやドキュメンテーションの日本語対応は現在されていませんが、日本のマーケットにも興味はあると言っていました。

以上が私の理解のサマリーになります。ご興味がある方は、彼らのホームページから、資料や動画が見れるので、確認してみてください。
LDC Via: modernise your Domino data

その他、詳細は、彼らの口から直接説明する機会が日本においてもあるかもしれません。
なお、IBM Champion でもあり、彼ら4人の1名である Mark Myers は日本が大好きで、よくプライベートで来日されるそうです。



なお、私はこの組織の関係者ではなく、テクてくでの宿題の結果としてこのエントリを書いております。

0 件のコメント: