php エディタ Baicao は、開発者がクエリのパフォーマンスを最適化し、アプリケーションの応答速度を向上させることを目的とした Go SDK の AWS Athena クエリ実行ガイドを待っています。 AWS Athena は、事前定義されたスキーマやデータの読み込みを行わずに、S3 バケットで直接 SQL クエリを実行できるサーバーレス クエリ サービスです。ただし、クエリの非同期実行の性質により、開発者は結果を取得する前にクエリが完了するまで待つ必要があります。このガイドでは、Go SDK の待機メカニズムを使用して、クエリの実行中に効果的に待機し、クエリの完了後に結果を取得して、ユーザー エクスペリエンスとアプリケーションのパフォーマンスを向上させる方法について説明します。
Athena クエリを実行し、返された error
に対して getqueryresults
をポーリングすることでクエリを待機する動作するコードがあります。次のコード 終了:
問題は、クエリが失敗した場合にループを中断する方法がまったくないことです。
たとえば、Python では次のことができます:
リーリーfor
ループ内で strings.contains(err.error(),"failed")
のようなチェックを行うこともできますが、よりクリーンな方法を探しています。
go に相当するものを探してみましたが、成功しませんでした。 go SDKには実行ステータスを返すことができる関数はありますか? go でエラーをさらにチェックするための err != nil
よりも良い方法はありますか?
sdkにはリトライ機能が用意されています。
これは、aws-sdk-go-v2 を使用した例です。
リーリー以上がGo SDK で AWS Athena クエリの実行を待機していますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。