API開発のためのプログラミング言語"Ballerina"の直感的な構文について解説します。認証や承認、OpenAPIツール、可観測性、SQL/NoSQLクライアントライブラリなど、重要な言語機能についても論じます。記事を読み終えれば、Ballerinaが次のバックエンドAPI開発の有力な候補である理由がよく理解できるでしょう。2022年4月InfoQ編集チームが2022年に進化するソフトウェアアーキテクチャと設計のトピックをどのように見ているかの概要です。アーキテクトが今、何を設計しているかに焦点を当てています。Pan氏が、分散データベースシステムにおけるシャーディングアーキテクチャのパターンについて論じます。ShardingSphereプロジェクトがデータシャーディングの課題にいかに対処しているかを説明した上で、DistSQLを使って分散データベースと暗号化テーブルを生成する方法の実例2つを論じています。カルチャー&手法カオステストで、見えない課題からアプリケーションのレジリエンスを改善するこの記事では、Netflixが提唱するカオステストの原則を列挙した。読者は、カオステストが提供するメリットとデメリットを理解できるはずだ。することで、カオステストを行うかどうかの判断材料となる。リスクに対するすべてのメリットを考慮して、カオステストを行うために経営陣を説得すべき理由も説明した。1.0のリリースをアナウンスした。サーバー用の新しい共通のJavaAPIである。今回のリリースには以下のOLAPサーバーへのサポートを含んでいる。APIを提供しようという試みがあった。Processは公式に標準OLAPインターフェースを要求しており、ベンダーを変更する際に実装を変える必要性を最小限にしようとした。APIは、ベンダー非依存なやり方で、OLAPデータやメタデータの生成と維持をサポートする」ものであった。APIが無いままだった。Hyde氏にolap4jについて詳しく聞いた。1.0リリースの主要なフィーチャは何ですか?olap4jはAPIで、Java環境からOLAPデータベースに繋いだり、そのメタデータにクエリしたり、MDXクエリを実行できるようになります。ドライバーは2つあります。サーバーと話すことができます。Palo、SAP/BWがその中に入ります。Mondrian用のolap4jドライバーは同じJVM中のMondrianエンジンと話すことができます。Mondrianドライバーはolap4jのリファレンス実装であり、実際数年間にわたって、Mondrianの主要APIです。APIと2つのドライバーは、すべて安定しており、数年間、製品で実績があります。開発コミュニティにとって、OLAPサーバーとインターフェースするオープンな標準を持ちことが重要なのでしょうか?オープンな標準は、開発者、インテグレータ、エンドユーザーに選択肢を与えます。オープンな標準がないと、もしあなたがベンダーXのOLAPサーバーを使いたいとすると、ベンダーXのOLAPクライアントを使わなければならない、という制約があります。あなたがアプリケーションを作っているとすると、そのアプリケーションはそのベンダーに縛られることになります。olap4jを使うと、違うサーバーのほうがより良く、安くて、より速い、あるいは単に特定の顧客がそのサーバーのサイトライセンスを持っているという理由で、他のサーバーに切り替えることができます。広範囲のOLAPクライアントから選ぶことができます。69にはいくつかの欠点があります。Metamodelに基づいた)とリッチなクエリモデルを理解する必要があります。クエリはAPIを呼ぶことで作られ、SQLやMDXのような言語でテキスト的に指示するのではありません。それは既存の実装を持つベンダーのグループが支援してました。彼らは様々なクエリ作成APIの妥協案を見つけようとしましたが、行き詰ってしまいました。マーケットトップのOLAPサーバーを生み出したMicrosoftは、提案された仕様のコントリビューターではありませんでした。(SOAPの一種でSaaS向け)。JDBC)と話すには、開発者が馴染んでいるAPI以上のものでした。これらの標準はそれぞれの環境で普及しましたが、もちろんMicrosoftはJava用の標準を作ることには、過去も現在も興味がありません。olap4jは、JDBCで馴染んでいるパラダイムを採用することによって、直ぐにJava開発者が使えることを目指しました。接続を作成し、命令を用意し、実行するコードは、olap4jとJDBCとで大変似ています。差はクエリ言語がMDXで、SQLではないこと、そして、結果が多次元のCellSetであり、行と列から成るResultSetではない、ということです。olap4jが文字通りJDBCの拡張である、という事実は、JDBCコネクションと同様にolap4jコネクション用のコネクションプールやディレクトリサービスのようなインフラを使うことができる、ということです。InfoQ:そのMDXクエリはどのように生成されるのですか?SQLは一般にJDBCアプリケーション中にハードコードされますが、OLAPの目的は、インタラクティブなデータ探索なので、クエリは動的に形成される必要があります。olap4jはクエリを段階的に作成し、それからクエリをMDXに変換するクエリモデルを提供しています。ようなクエリモデル中心のAPIの一番の違いは、olap4jでは、クエリモデルはオプションだ、ということです。あなたがアプリケーション開発者で、あなたのアプリケーションがいつも同じチャートやデータテーブルを示す必要があるなら、あなたはMDXクエリをハンドで書くことができます。あなたがOLAPツール開発者ならolap4jのクエリモデルを使うことができ、あるいは自分自身のクエリモデルを作成することだってできます。バージョン1に到達しましたが、olap4jのクエリモデルはまだ開発中です。良いニュースは、それはAPIのコア部分ではない、そしてAPIの他の部分を壊さずに進化できる、ということです。APIよりも小さく、単純です。このことはAPIを学習しているアプリケーション開発者や実装しようとしているサーバーやドライバー開発者にもいい話です。今までJOLAPは、主に他の活動の基盤の役を果たしてきました。APIを使っています。仕様自体はこれまでこのような標準には、実際になりませんでした。JOLAP仕様自身を復活させたいと思っていますか?いいえ、これまでの話を分かってください。olap4jは意図的に最も重要な現在のOLAP仕様、XMLAに非常によく従っています。両方のAPIからのメタデータは非常に似ており、クエリ言語、MDXは全く同じです。主な違いは、Java環境では、olap4jの方がXMLAよりもずっと使いやすいことです。多くの場合、XMLAよりもずっと効率的です。ドライバーがキャッシュを使ったり、XMLオーバーHTTPよりも効率のよいプロトコルを使うことができるからです。JCPに仕様を提出するつもりですか?あるいはスタンドアローンな仕様とプロセスのままにしておくつもりですか?我々は、olap4jをJDBCのようにJavaランタイムライブラリの標準の一部と考えて欲しいと思います。現時点で、JCPに提出する計画はありません。69の失敗が教えてくれたことの1つが、JCPから何がでてくるかよりも、市場のほうが重要だ、ということです。我々が望んでいるのは、olap4jドライバーがもっともっと多くのサーバーに追加されて、olap4jが市場で勢力と成ることです。サーバーベンダーがolap4jの優位性を理解すれば、願わくば、彼らは、JCP内でolap4jの提案において、我々を支持してくれるでしょう。APIとの大きな違いは何ですか?まず、OracleのAPIを含んでほかのAPIは、MDXクエリ言語を基にしていません。なく、クエリはプログラムで作られています。クエリ作成のAPIはベンダー毎に違う傾向にあります。次に他のAPIはユーザーを1つのベンダーにロックします。全てではないにしても殆どのOLAPサーバーは、XMLAを実装してます。そのため2つの重要な結果をもたらしました。1つは、これらのサーバー用のolap4jドライバーを作成するのは簡単で、XMLA用のオープンソースolap4jドライバーを出発点として使えばいいのです。2つ目は、これらのサーバーがXMLAを実装しているという事実は、MDX言語を実装している、ということです。これらのサーバー用にネイティブolap4jドライバーを実装することは可能ですし、そうすればXMLAベースのドライバーよりもずっと効率的です。プロジェクトとして、コミュニティから価値のある貢献を受けたいと願っています。ドライバーを実装しています。Oracle/Essbase用のドライバーをリリースされるのを期待しています。1.0で仕様になったコアAPIは安定しています。将来APIが進化しても後方互換性を維持することは約束しています。1.0で止まるわけではありません。互換性を維持しながらコアAPIを改善していきます。将来のバージョンで、APIに追加したいことがいくつかあります。クエリモデルを拡張し、改善したいです。クエリモデルはMDXを生成するクライアント側のライブラリであることを思い出してください。メタデータのクエリやクエリの実行用のAPIのコア部分を変えずに、クエリモデルを変更するのは簡単です。セル-ライトバック用の実験的な機能があります。これによって、「仮説」のシナリオやアプリケーション計画ができます。Mondrianはそれを実装します。通知を受けとる、というのがあります。あなたの目の前でセルの値が変わり、その変化を警告するために、一瞬色を変えるようなwebクライアントを想像してください。Licenseの下でライセンスされている。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。あなたの意見をお聞かせください。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。Inc.プライバシーBT。