API開発のためのプログラミング言語"Ballerina"の直感的な構文について解説します。認証や承認、OpenAPIツール、可観測性、SQL/NoSQLクライアントライブラリなど、重要な言語機能についても論じます。記事を読み終えれば、Ballerinaが次のバックエンドAPI開発の有力な候補である理由がよく理解できるでしょう。2022年4月InfoQ編集チームが2022年に進化するソフトウェアアーキテクチャと設計のトピックをどのように見ているかの概要です。アーキテクトが今、何を設計しているかに焦点を当てています。Pan氏が、分散データベースシステムにおけるシャーディングアーキテクチャのパターンについて論じます。ShardingSphereプロジェクトがデータシャーディングの課題にいかに対処しているかを説明した上で、DistSQLを使って分散データベースと暗号化テーブルを生成する方法の実例2つを論じています。カルチャー&手法カオステストで、見えない課題からアプリケーションのレジリエンスを改善するこの記事では、Netflixが提唱するカオステストの原則を列挙した。読者は、カオステストが提供するメリットとデメリットを理解できるはずだ。することで、カオステストを行うかどうかの判断材料となる。リスクに対するすべてのメリットを考慮して、カオステストを行うために経営陣を説得すべき理由も説明した。原文(投稿日:2018/03/20)へのリンクあなたのリクエストに応じて、ノイズを減らす機能を開発しました。大切な情報を見逃さないよう、お気に入りのトピックを選択して、メールとウェブで通知をもらいましょう。民泊サイトであるAirbnbは機械学習を使ってクレジットカード不正利用と戦っている。同社は"フリクション"を使って、チャージバックと戦いながら、正当な顧客が予約できなくなるというネガティブな結果を最小限にしている。同社にとって不正の検知はとても重要だ。一晩で200万人の人がAirbnbで見つかる191の国の宿泊先に宿泊している。同社の世界的なコミュニティの急成長は信頼を前提にしているのだ。同社は事前の計測と即応的なサポートで不正と戦っている。事前の計測は取り引きの前にバッググラウンドで行われ、機械学習を利用し、実験と分析をして、サイトで盗まれたクレジットカードが使われないようにしている。Press氏は不正利用を特定しブロックしながら正しいユーザーへの影響を最小にするために、どのように機械学習を使っているかについて書いている。同社の不正検出プログラムはチャージバックにフォーカスしている。チャージバックはオンラインビジネスでは一般的なものであり、盗まれたクレジットカードを使って不正なユーザーが行った取り引きだ。本当のカードの持ち主がカードが盗まれ不正に利用されたことに気づいた場合、カード会社はマーチャント(Airbnb)に払い戻しを発令し、マーチャントは返金をする。Airbnbはチャージバックのコストをすべて引き受けており、ホストに負債を負わせないようにしている。同社は積極的に盗まれたカードの利用をブロックして、ユーザーコミュニティを守り、自身のチャージバックのコストを削減しようとしている。取り引きは完全にブロックされる場合もあるが、ほとんどの場合、ユーザーには"フリクション"と呼ばれる追加の検証を満たす機会が与えられる。フリクションは不正なユーザーをブロックするが、正しいユーザーは簡単に通過することができるものだ。フリクションには、マイクロ承認(クレジットカードにふたつの小さな承認を設定し、カードの所有者はこの承認をオンラインの銀行の取引明細の記録で確認しなければならない)3-Dセキュア(クレジットカード会社がパスワードやSMSを使って直接認証する)、請求書検証(カードの持ち主にカードの請求書のアップロードを求める)がある。氏は不正利用者をブロックするためにフリクションを出現させるため機械学習のモデルをどのように利用しているか、説明している。3つの異なるシナリオを考慮した損失関数を最小化することで、機械学習モデルの閾値を選択していることについても、概略を述べている。同社は過去のサンプルを元に学習させた機械学習モデルを使って、不正利用を検知している。ような異なるシナリオに対処する必要がある。偽陽性の場合、モデルが"悪い"(閾値を超えている)と判断したが、実際には"良い"イベント。偽陰性の場合、実際には不正なイベントだが、スコアが機械学習モデルの閾値を下回っている。真陽性の場合、モデルが正しく不正を判定し、スコアも閾値を超えている。氏はそれぞれのシナリオのコストを説明している。正しい予約に対して不適切にフリクションを適用してしまった場合(偽陽性)、彼らは損失を被る。フリクションのせいで、正しいユーザーが取り引きせず、Airbnbを使わない可能性が生まれるからだ。偽陰性のコストは偽陰性のイベントの数とそれぞれのイベントのコストの乗算して求める。Airbnbはチャージバッグに関するコストをすべて引き受けているので、不正利用者の支払いのすべてが同社のコストになる。チャージバッグに関連する販売手数料などもコストになる。真陽性の場合は、フリクションを不正利用者をブロックするという目的を達成できている。機械学習モデルの閾値は過去の予約の陽性(不正)と陰性(不正ではない)についてのチャージバックモデルを訓練することで最適化される。不正件数はかなり少ないので、陽性がほとんどない、不均衡な分類の問題となる。同社は真陽性率と偽陽性率の観点からさまざまな閾値を選択して、不正の検知と正しい予約を特定させることで、このモデルの性能を特徴付け、損失関数を使ってそれぞれの閾値に関連する全コストを評価している。Frameworkを使ってA/Bテストを実施し、正しいユーザーに対するフリクションの影響を調査している。不正利用者に対してフリクションを適用するのと同じファネルの段階で、スコアの低い(つまり不正利用者ではなさそうな)ユーザーに実験をしている。Press氏は取り引きのブロックを最適化した場合とフリクションを適用した場合を比較した数値例も示している。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。あなたの意見をお聞かせください。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。Inc.プライバシーBT。