Amazon QuickSight でクエリ結果保存先に Athena マネージドを使うと、データセット更新時に「ManagedQueryResultsConfiguration and ResultConfiguration cannot be set together」が発生する

Amazon QuickSight でクエリ結果保存先に Athena マネージドを使うと、データセット更新時に「ManagedQueryResultsConfiguration and ResultConfiguration cannot be set together」が発生する

Clock Icon2025.07.05

いわさです。

2025 年 6 月上旬のアップデートで Amazon Athena ではクエリ実行結果の保存先に従来のような S3 を個別に指定せずとも Athena マネージドストレージを指定出来るようになりました。

https://dev.classmethod.jp/articles/update-amazon-athena-aws-managed-storage-query-results/

S3 の用意が不要で簡単に Athena ワークグループの使用を開始できるので便利なのですが、一方でこの機能を有効化すると本日時点で Amazon QuickSight のデータセット統合に問題が生じていることがわかりました。
将来的に修正される可能性はありますが、結論としては本日時点のワークアラウンドはワークグループのクエリ結果設定に Athena マネージドではなくカスタマーマネージド(従来の S3 のやつ)を設定することです。

この記事では問題の発生から解消までの様子を紹介します。

新しい Athena データセットが作成できない...

先日 Amazon QuickSight で新しい Athena データセットを作成しようとしたところ、接続検証ボタン押下時に次のエラーが発生しました。

5276125D-B103-4750-B341-6335232B19A2.png

エラー詳細からエラーメッセージを確認してみると、「ManagedQueryResultsConfiguration and ResultConfiguration cannot be set together」というエラーが発生していました。なんだこりゃあ。

image.png

QuickSight はデータセット作成時に Athena 統合の場合は検証用のクエリを発行するためにStartQueryExecutionが実行されます。
CloudTrail でその API を実行している時にエラーが発生していることが確認できます。

{
    "eventVersion": "1.11",

:

    "eventTime": "2025-07-04T21:42:40Z",
    "eventSource": "athena.amazonaws.com",
    "eventName": "StartQueryExecution",
    "awsRegion": "ap-northeast-1",
    "sourceIPAddress": "quicksight.amazonaws.com",
    "userAgent": "quicksight.amazonaws.com",
    "errorCode": "InvalidRequestException",
    "errorMessage": "ManagedQueryResultsConfiguration and ResultConfiguration cannot be set together.",
    "requestParameters": {
        "queryString": "***OMITTED***",
        "clientRequestToken": "aa9a6719-073c-42d2-b021-bda395347b68",
        "queryExecutionContext": {
            "database": "default",
            "catalog": "AwsDataCatalog"
        },
        "resultConfiguration": {
            "outputLocation": "s3://aws-athena-query-results-ap-northeast-1-123456789012"
        },
        "workGroup": "primary",
        "resultReuseConfiguration": {
            "resultReuseByAgeConfiguration": {
                "enabled": false
            }
        }
    },
 
:

}

上記のリクエスト内容を見てみるとパラメータにResultConfigurationが指定されていますね。
そして対象ワークグループprimaryを確認してみたところ、次のようにクエリ結果の管理に Athnea マネージドを指定していました。最近この冒頭のアップデートを試すために primary ワークグループで有効化をしていました。

image.png

この機能を有効化すると、Athena ワークグループのManagedQueryResultsConfigurationEnable:trueに設定されます。どうやらこの設定と先ほどの QuickSight から明示的に指定されるresultConfigurationが競合しているようです。なんてこったい。

% aws athena get-work-group --work-group primary
{
    "WorkGroup": {
        "Name": "primary",
        "State": "ENABLED",
        "Configuration": {
            "ManagedQueryResultsConfiguration": {
                "Enabled": true
            },
            "EnforceWorkGroupConfiguration": false,
            "PublishCloudWatchMetricsEnabled": false,
            "RequesterPaysEnabled": false,
            "EngineVersion": {
                "SelectedEngineVersion": "AUTO",
                "EffectiveEngineVersion": "Athena engine version 3"
            },
            "EnableMinimumEncryptionConfiguration": false
        },
        "CreationTime": "2020-12-25T11:57:30.371000+09:00"
    }
}

primary 以外であればデータセット作成自体はできる

切り分けをするために新しいワークグループを2つ作成して QuickSight 上で新規データセットを作成してみたところおもいしろい現象が発生しました。
primary ワークグループ以外であれば、Athena マネージド設定が有効でもデータセット作成自体はできたのです。

次のように Athena マネージドストレージとカスタマーマネージドストレージのワークグループを新規で2つ作成しました。

57239792-8A63-45FB-A56D-D0310F96F417.png
A5B8B341-7E0A-465A-B75B-E8C997A61897.png

そして QuickSight でこれらを指定して先ほどと同じようにデータセットを作成してみます。

450EDDE6-08F7-4CEC-A781-89A80D22765A.png
592CDC3B-39FF-4209-94EF-48B21A8648FD.png
BCF70680-8BF9-4F3C-B24B-969303D9B851_4_5005_c.jpeg

なんと、どちらもデータセットの作成ができてしまいました。
カスタマーマネージドストレージについては従来どおりなので作成できて当然ですが、Athena マネージドストレージについても成功したのはどういうわけでしょうか。

先ほどと同じように CloudTrail のログを確認してみると、なんと primary ワークグループじゃない場合はresultConfigurationが指定されていないことが確認できました。

{
    "eventVersion": "1.11",

:

    "eventTime": "2025-07-04T21:41:28Z",
    "eventSource": "athena.amazonaws.com",
    "eventName": "StartQueryExecution",
    "awsRegion": "ap-northeast-1",
    "sourceIPAddress": "quicksight.amazonaws.com",
    "userAgent": "quicksight.amazonaws.com",
    "requestParameters": {
        "queryString": "***OMITTED***",
        "clientRequestToken": "f626213a-2921-4490-9c62-e908ffcc1a56",
        "queryExecutionContext": {
            "database": "default"
        },
        "workGroup": "hoge0705qs1"
    },
    "responseElements": {
        "queryExecutionId": "122a5fa1-e304-4276-b4c0-265024b7b500"
    },

:

}

primary じゃなければ作成はできるのだが、結局データセット更新には失敗するみたい

じゃあ Athena マネージドを使いたい場合は primary 以外のワークグループを作成すれば使えるのかなと思ったのですが、これもまたちょっと違うようです。
データセットの作成初期作成自体はできたのですが、その後の SPICE 更新でエラーになっていることがわかりました。

B293ABB1-5C18-4431-B6FA-486541781CA6.png

見たことのないエラータイプですね。SPICE 取り込みのエラーコードページでも確認が出来ませんでした。[1]
QuickSight のサービスロールは Administrator Access を持っているので権限が理由ではないようです。
確認してみたところ Athena ワークグループに対して SPICE 更新時のクエリ記録が残っていなかったのでその前段階のようです。明確ではないのですが切り分け結果からすると Athena マネージドストレージが悪さしているような気がします。

primary ワークグループを Athena マネージドストレージに変更するとデータセット更新に失敗する

また今回の問題ですが、従来のカスタマーマネージドストレージのワークグループで QuickSight データセットを作成している状態で、その後に Athena マネージドストレージに変更する場合どうなるでしょうか。結論としてはデータセット更新に失敗するようになりました。

先ほどまで失敗していた primary ワークグループですが、カスタマーマネージドストレージに戻すことでデータセット作成自体は可能になります。

1C988F88-030D-407D-A247-0A2928B0D182.png

4BC71D28-61A0-421D-9664-16CE7E6112E6.png

データの取り込みも正常に行うことが出来ていました。

900DE1A7-28E8-4BBC-855E-DC71A9876336.png

そしてここから primary ワークグループを Athena マネージドストレージに変更してみるとどうなるでしょうか。

5EEEC83E-D899-4812-B0FE-BBE30933A165.png
E11F7C35-3AF1-43EA-88F5-CDB8BA41A7CB.png

別のワークグループとエラーメッセージが異なっていますが、SPICE の更新に失敗しました。

さいごに

本日は Amazon QuickSight でクエリ結果保存先に Athena マネージドを使うと、データセット更新時に「ManagedQueryResultsConfiguration and ResultConfiguration cannot be set together」が発生したので調べてみました。

今回の確認結果から、本日時点では QuickSight 側で Athena マネージドストレージがまだサポートされていないと考えて良さそうです。
QuickSight 運用中の環境の場合、QuickSight で使用している Athena ワークグループのクエリ結果保存先は、Athena マネージドストレージを選択しないようにしましょう。
SPICE 更新に失敗し、ダッシュボードが更新されなくなってしまいます。

今後解消されるかもしれませんので、その際にはこの記事に追記したいと思います。

脚注
  1. SPICE ingestion error codes - Amazon QuickSight ↩︎

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.