2020/01/22 にポストした「Webinar: Domino Query Language for Domino v11 in Action」ですが、リプレイが公開されました。
この Webinar でやりとりされた Q & A が英語ブログ Domino Query Language for Domino v11 in Action で公開されました。以下はその翻訳です。
Domino Query Language for Domino v11 in Action
2020年2月3日
Domino 11のDomino Query Language (DQL) は、全文索引を使用して、Dominoデータを検索するすべての手段の統合を完成させました。今回のWebcastでは、この機能強化やその他の重要な機能強化について解説、デモを行いました。さらに、DQLの広大な未来、そしてDQLを使ううえでの問題を解決するための方法を示しました。参加の皆様から多くの質問をいただきましたので、ここで回答を公開したいと思います。
Q: DQLに関するチュートリアルはありますか。
A: DQL に関するプレゼンテーションとガイドをいくつか公開しています。DQLの機能について開発者を教育するためにより多くのものを出していくべきことに同意です。このブログで今後公開していきます。
Q: 一致する文書がデータベースに追加されると、Qbusの結果は自動的に更新されますか。
A: はい、結果セットにはクエリーに一致する文書が含まれます。
Q: 検索クエリーにドイツ語のウムラウト (例:Müller) またはUnicode文字が含まれている場合はどうなりますか。11で動作しますか。
A: アクセント・センシティブ検索は、FTSearch呼び出しを通じて考慮されますが、11のビューやNSF呼び出しでは無視されます。これは今後のバックログ項目としてあります。
Q: FTSEARCHなどの特定のNotesビューでDQLを使用して検索できますか。再検索ではDB全体に及ぶようです。
A: はい。IN句とFTSearchの検索条件を ANDedで組み合わせて使用可能です。例: "in ('myview') and lastname contains ('Schmidt'm, 'Rose*')"
Q: DQLで、フィールドの数値や日付の範囲でクエリーできますか。
A: はい。ビューおよびNSFスキャンを使用したDQLでサポートされています。11.0.1は、将来FTSearchを使用した日付と数値をサポートします。
Q: マルチ・データベースの集約検索は次のリリースで計画されていますか。
A: 現在作業中です。デザインもあります。ただし、スケジュールはまだ整っておらず、リリース日は確約できません。
Q: DQLのXPagesクラスは11で使用できますか。
A: 今はできません。しかし、Ahaポータルで提起されたアイデアを見て、それを検討し始めたところです。
Q: 11.01はいつリリースされますか。
A: 第1四半期の終わりを目指しています。ただし、正確なタイミングは品質テストに依存します。
Q: QueryBus機能はいつ利用可能になりますか。
A: 12の一部として利用できると予想しています。
Q: 確認です。DQLは開発者がコード内で検索を実行する方法だと理解しています。エンドユーザーがデータベースで検索を実行する代替方法とはならないと理解しています (開発者が作成していない限り)が、正しいですか。
A: YesでありNoでもあります。今のところ、これを一般的なエンドユーザーに提供するには複雑すぎます。しかし、将来についてお話しできることがあります。DQL Explorerでは、サンプルのクエリーを示す形のUIによりエンドユーザーが操作できます。Low-Codeユーザー向けにより使いやすいものになるように試みています。
Q: どの「ネイティブ」な方法でDQLからJSONを取得できますか (GSONまたはサードパーティは使用しない前提) 。
A: 11では文書コレクションをスキャンし、文書データをNotesJSONNavigator (LotusScript) またはJavaベースのJSONクラスに送信する必要があります。将来のリリースのQBusでは、そのオプションの1つとしてJSON出力を採用する予定です。
Q: WebアプリケーションでDQLを同時に実行するとどのような影響がありますか。
A: DQLは、サーバー上の他の負荷と共に実行されます。そのパフォーマンスとリソースへの影響は、クエリーの複雑さとデータ量が複雑に絡んできますが、同時実行性の制限はまったくありません。
Q: DQLを使用してクライアント側のエージェントからサーバーベースのアプリケーションにアクセスするためのサポートを拡張する計画はありますか。現時点では、ユーザーが開始したエージェントは次のエラーを生成します。「メソッドは使用できません。リモートデータベースでは機能はサポートされていません (Method is not available. Function is not supported for remote databases.)」
A: はい、DQLを使用してサーバーベースのアプリケーションにアクセスできます。Nomad / Notesクライアントではサーバー上でDQLを実行でき、C API呼び出しもパブリッシュされますし、サポートされています。真のクライアント/サーバーDQLはv12で提供される予定です。
Q: インスタント・リフレッシュは、DQLのみ使えるものですか。あるいはhttpなどのNotes以外のクライアントにも対応しますか。
A: インスタント・リフレッシュはクエリーに対するオプションです。設定されている場合、クエリー時にFTインデックスが更新されます。障害報告 (SPR): JCUSBKSN4Zで FTSearchの問題が上がっています。この障害修正を強く要望される場合は、引き続きAhaポータルでフィードバックしてください。
翻訳者注: 多くの障害を修正するうえで優先度を設けています。問題の深刻度や影響するお客様の範囲などを考慮して決められています。Ahaでのフィードバックが多ければ、それだけ優先度が上がっていきます。やる気がないと言い放っているわけでは決してありませんのでご理解ください。
Q: 全文検索では日本語のワイルドカードを使用できませんが、DQLのContains演算子を使用して検索できますか。
A: スペース区切り文字がないため、ワイルドカードはDBCS言語ではあまり有用ではありません。ただし、Containsを使用しても問題なく機能するはずです。
Q: DQLは、DominoデータベースのACLとどのように連携しますか。多くの場合、ログに記録されたユーザーには、ACLグループとロールに基づいてデータを表示する必要があります。
A: ACLが優先されます。DQLでは、特権のないユーザーが文書を開くことを許可したり、特権のあるユーザーが文書を開くことを許可したりすることはありません。