Articleaws.amazon.com·2026년 8월 12일·2

Part 2: Amazon Bedrock cost attribution with Amazon Athena and CUDOS

Quick Summary

CUR 2.0의 IAM 주체 데이터를 Amazon Athena와 CUDOS에서 활용하면 Amazon Bedrock 비용을 사용자·애플리케이션·태그·모델 사용 유형별로 귀속하고 비교할 수 있다.

Part 2: Amazon Bedrock cost attribution with Amazon Athena and CUDOS 관련 대표 이미지

🖼️ 인포그래픽

Part 2: Amazon Bedrock cost attribution with Amazon Athena and CUDOS 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

Part 2: Amazon Bedrock cost attribution with Amazon Athena and CUDOS의 핵심 내용을 4단계로 요약한 인포그래픽
Part 2: Amazon Bedrock cost attribution with Amazon Athena and CUDOS 핵심 내용을 4단계로 압축한 4컷 인포그래픽

💡 한 줄 요약

CUR 2.0의 IAM 주체 데이터를 Amazon Athena와 CUDOS에서 활용하면 Amazon Bedrock 비용을 사용자·애플리케이션·태그·모델 사용 유형별로 귀속하고 비교할 수 있다.

📌 핵심 요약

  • Amazon Bedrock는 각 추론 요청을 호출한 IAM 주체와 연결하며, CUR 2.0의 line_item_iam_principal 및 IAM 주체 태그로 사용자·애플리케이션·팀·프로젝트별 비용을 귀속할 수 있다.
  • CUR 2.0에서 호출자 자격 증명 할당 데이터를 켜고 시간 단위를 시간별, 파일 버전 관리를 기존 보고서 덮어쓰기로 설정해야 하며 첫 보고서는 최대 24시간 뒤 전달될 수 있다.
  • 호출자 데이터를 활성화하면 사용량 행이 IAM 주체별로 확장되어 CUR 파일과 Amazon S3 저장량이 늘 수 있으므로, 사용량이 많고 주체가 다양한 환경은 저장 공간과 수명 주기 정책을 고려해야 한다.
  • Amazon Athena의 세 가지 SQL 패턴은 IAM 주체·사용 유형별 비용, 활성화된 iamPrincipal 태그별 비용, UNNEST를 이용한 미지 태그별 비용을 분석하며, CUDOS는 모델·사용 유형·토큰 100만 개당 비용을 사전 구축 시각화로 제공한다.
  • 예시에서는 ChatApp이 Claude 4.6 Sonnet로 80달러를 넘게 쓰고 DocProcessor가 Nova Lite로 5달러 미만을 쓰며, Amazon Athena는 스캔 데이터 TB당 5달러와 쿼리당 최소 10MB 기준으로 과금된다.

🧩 주요 포인트

  1. 호출자 데이터 활성화 → line_item_iam_principal이 비용과 실행 주체를 연결해 개인·서비스 수준의 비용 책임 범위를 구체화한다.
  2. 고정 태그 집계와 UNNEST 탐색 → 알려진 조직 분류뿐 아니라 팀마다 다른 iamPrincipal 태그 스키마까지 비용 관점에서 발견할 수 있다.
  3. ChatApp·DocProcessor 비교와 TB당 5달러 과금 → 모델·입출력 사용 유형의 비용 차이와 Amazon Athena의 데이터 스캔량을 함께 고려해야 한다.

🧠 상세 정리

1. 세분화된 비용 귀속의 출발점

이 글은 Part 1에서 소개한 Amazon Bedrock의 세분화된 비용 귀속 기능을 실제 분석 과정으로 연결한다. Amazon Bedrock는 각 추론 요청을 호출한 IAM 주체로 자동 추적하고, CUR 2.0의 line_item_iam_principal 열을 통해 사용자와 애플리케이션 단위의 지출을 드러낸다. IAM 주체에 비용 할당 태그를 붙여 활성화하면 팀·프로젝트·테넌트 단위로도 비용을 합산할 수 있어 Claude Code·Codex 같은 외부 도구와 자체 애플리케이션을 동일한 기준으로 다룰 수 있다. 이번 글의 범위는 IAM 주체 데이터가 포함된 CUR 2.0 준비, Amazon Athena SQL 분석, 조직 구조에 맞춘 사전 구축 시각화를 제공하는 CUDOS 활용이다.

2. CUR 2.0 분석을 위한 준비 조건

Amazon Bedrock 비용을 분석하려면 먼저 CUR 2.0 데이터 내보내기를 만들고 Amazon Athena에 연결해야 한다. 준비 항목에는 청구 콘솔에 접근할 수 있는 AWS 계정, Cost and Usage Reports·Amazon S3·Amazon Athena에 대한 IAM 권한, CUR 데이터를 저장할 Amazon S3 버킷이 포함된다. 표준 SQL과 AWS Management Console에 대한 기본적인 이해도 필요하며, 필요한 IAM 권한이 실제로 부여되었는지 확인해야 한다. 자동화된 설정을 원하는 경우 Claude Code 또는 Kiro-CLI를 선택적으로 사용할 수 있지만, 비용 귀속에 필수적인 기반은 CUR 2.0과 호출자 데이터 설정이다.

3. 호출자 데이터 설정과 저장량 영향

CUR 2.0 표준 데이터 내보내기의 추가 콘텐츠 항목에서는 호출자 자격 증명인 IAM 주체 할당 데이터를 반드시 선택해야 한다. 이 설정이 line_item_iam_principal 열을 채우고, iamPrincipal/ 접두사가 붙은 IAM 주체 태그를 비용 데이터에 노출하는 핵심 조건이다. 최대한 세밀한 분석을 위해 시간 단위는 시간별로 설정하고, 중복 데이터 저장을 피하려면 파일 버전 관리를 기존 보고서 덮어쓰기로 지정한다. 호출자 데이터를 켜면 하나였던 사용량 행이 기여한 IAM 주체별 여러 행으로 확장되므로 CUR 파일이 커질 수 있으며, 주체가 많은 고사용량 환경은 Amazon S3 용량과 오래된 파일의 수명 주기 정책을 고려해야 한다. 첫 CUR 2.0 보고서가 Amazon S3 버킷에 전달되기까지는 최대 24시간이 걸릴 수 있다.

4. Amazon Athena 연결과 초기 검증

Amazon Athena를 이용하면 별도의 쿼리 인프라를 관리하지 않고 표준 SQL로 CUR 데이터를 분석할 수 있다. 선택적 자동화 방법은 sample-cur-iam-principal-bedrock-tracking 저장소를 복제한 뒤 Claude Code나 Kiro-CLI에서 agent.md의 절차를 따라 CUR 연결과 당월 Amazon Bedrock 주체별 쿼리를 실행하는 방식이다. 같은 환경은 수동으로 설정할 수도 있으며, CUDOS를 함께 배포할 경우 AWS CloudFormation이 Amazon Athena 쿼리 데이터베이스도 구성한다. 초기 검증 쿼리는 AmazonBedrock와 AmazonBedrockService 제품 코드만 선택하고 line_item_iam_principal이 비어 있지 않은 행을 조회한다. 결과에 IAM 주체 ARN과 Amazon Bedrock 사용 유형이 나타나면 더 깊은 비용 분석을 수행할 수 있는 연결 상태가 갖춰진 것이다.

5. IAM 주체와 사용 유형별 비용 분석

첫 번째 쿼리 패턴은 line_item_iam_principal과 line_item_usage_type을 기준으로 사용량과 비혼합 비용을 합산해 누가 어떤 모델을 호출하고 얼마를 지출했는지 보여 준다. 조건에는 AmazonBedrock와 AmazonBedrockService 제품 코드, 현재 청구 월, 값이 존재하는 IAM 주체가 포함되며 결과는 총비용이 큰 순서로 정렬된다. line_item_usage_type에 Sonnet 출력 또는 nova 같은 LIKE 패턴을 적용하면 특정 모델과 입출력·캐시 사용 유형으로 분석 범위를 좁힐 수 있다. line_item_iam_principal에는 전체 ARN이 저장되며, 역할을 위임받은 호출에서는 마지막 슬래시 뒤의 세션 이름으로 구체적인 사용자나 실행 세션을 식별할 수 있다. 따라서 하나의 총액을 보는 대신 IAM 역할·세션·모델 사용 유형이 결합된 비용 구조를 확인할 수 있다.

6. IAM 주체 태그를 이용한 조직별 집계

IAM 주체에 team·project·costcenter 같은 태그를 붙이고 비용 할당 태그로 활성화하면 CUR 2.0의 tags 열에 iamPrincipal/ 접두사와 함께 나타난다. 프로젝트별 예시는 tags의 iamPrincipal/project 값을 사용 유형과 함께 그룹화하고, 토큰 사용량과 비혼합 비용을 합산해 프로젝트별 Amazon Bedrock 지출을 계산한다. 이 방식으로 엔지니어링 팀의 당월 비용이나 챗봇 프로젝트의 총비용처럼 조직 단위 질문에 답할 수 있으며, data-science와 engineering 같은 태그 값을 모델 사용 유형별로 나누어 비교할 수도 있다. 다만 관련 IAM 주체에 해당 키가 실제로 지정되어 있고 그 태그가 비용 할당 태그로 활성화되어 있어야 결과가 반환된다. 태그가 없거나 활성화되지 않았다면 태그 기준 쿼리만으로는 해당 조직 차원의 비용 구분을 얻을 수 없다.

7. UNNEST를 활용한 미지 태그 탐색

규모가 큰 조직에서는 모든 IAM 주체에 어떤 태그 키가 적용되었는지 미리 알기 어렵고, 팀마다 서로 다른 키를 사용하거나 시간이 지나면서 새로운 태그가 추가될 수 있다. 이를 처리하는 세 번째 패턴은 Amazon Athena의 UNNEST 함수로 tags 맵을 키와 값의 행으로 펼친 뒤 iamPrincipal/로 시작하는 항목만 선택한다. 공통 테이블 식에서는 태그 이름·태그 값·사용 유형·비혼합 비용을 추출하고, 최종 단계에서는 각 키와 값 및 사용 유형별로 비용을 합산해 큰 순서로 정렬한다. 이 쿼리는 사전에 project나 team 같은 단일 키를 지정하지 않고도 Amazon Bedrock 워크로드 전반에서 실제로 사용 중인 IAM 주체 태그를 발견한다. 그 결과 알려진 태그 스키마를 집계하는 방식과 알 수 없는 태그 구조를 탐색하는 방식을 함께 사용할 수 있다.

8. ChatApp과 DocProcessor 비용 비교

다중 서비스 사례에서는 문서 요약 파이프라인인 DocProcessor와 고객용 챗봇인 ChatApp에 각각 별도의 IAM 역할을 부여해 서비스 비용을 분리한다. 쿼리는 현재 청구 월의 Amazon Bedrock 데이터 중 IAM 주체 ARN에 DocProcessor 또는 ChatApp이 포함된 행만 골라 사용 유형별 사용량과 비용을 집계한다. 예시에서 ChatApp의 Claude 4.6 Sonnet 출력 토큰 480만 개는 72달러, 입력 토큰 290만 개는 8.70달러이며, DocProcessor의 Nova Lite 출력 토큰 610만 개는 1.46달러, 입력 토큰 320만 개는 0.19달러다. 이에 따라 ChatApp은 80달러를 넘게 지출하지만 DocProcessor는 5달러 미만이며, 토큰 수만으로 비용 규모를 판단할 수 없음을 수치로 보여 준다. 글은 단순 요약 작업에 Nova Lite를 쓰는 DocProcessor와 달리 ChatApp의 일부 상호작용을 더 가벼운 모델로 처리할 수 있는지를 평가 대상으로 제시한다.

9. Amazon Athena 쿼리 과금 구조

Amazon Athena는 실제로 실행한 쿼리에 대해서만 비용을 부과하며, 각 쿼리가 스캔한 데이터 양을 기준으로 요금을 계산한다. 스캔 데이터량은 쿼리 실행 후 콘솔에서 확인할 수 있고 Amazon Athena 콘솔의 최근 쿼리 항목에서도 조회할 수 있다. 제시된 요율은 스캔 데이터 TB당 5달러이며 각 쿼리에는 최소 10MB의 과금 단위가 적용되므로, 작은 조회도 최소 기준 아래로 청구되지는 않는다. 따라서 Amazon Bedrock 비용을 세밀하게 나누는 SQL 분석에서는 반환된 행 수뿐 아니라 실제 스캔된 CUR 데이터량도 쿼리 비용과 직접 연결된다. 호출자 데이터 활성화로 CUR 행과 파일 크기가 늘 수 있다는 저장 측면의 제약과 Amazon Athena의 스캔량 기반 과금은 함께 인지해야 할 운영 조건이다.

10. CUDOS 시각화와 Amazon Athena의 역할 구분

CUDOS는 오픈 소스 Cloud Intelligence Dashboards 프레임워크에 속하며 조직의 AWS 계정에 배포하는 사전 구축형 대시보드로 소개된다. Amazon Athena가 자유로운 집계, 다른 비즈니스 인텔리전스 도구와의 연동, 비용 환급 처리에 적합하다면 CUDOS는 조직 구조에 맞춘 시각화를 제공하는 데 초점을 둔다. 상위 차트의 필터와 연동된 추가 시각화는 모델별 지출, 사용 유형별 지출, 모델별 토큰 100만 개당 비용을 세분화해 보여 주어 SQL 집계 결과를 비교 가능한 화면으로 전환한다. AWS CloudFormation으로 CUDOS를 배포하면 Amazon Athena 쿼리 데이터베이스도 함께 구성되며, CUR 2.0의 IAM 주체 데이터가 세분화된 Amazon Bedrock 비용 및 사용량 시각화의 기반이 된다.

🧾 핵심 주장 / 시사점

  • line_item_iam_principal은 추론 사용량을 단순한 계정 총액이 아니라 실제 호출 사용자·역할·세션·애플리케이션에 연결하는 비용 귀속의 핵심 열이다.
  • iamPrincipal 태그 집계는 IAM 주체 태그 지정과 비용 할당 태그 활성화를 전제로 하므로, 태그 쿼리에 결과가 없다는 사실만으로 Amazon Bedrock 지출이 없다고 판단할 수 없다.
  • DocProcessor의 Nova Lite는 ChatApp의 Claude 4.6 Sonnet보다 더 많은 입력·출력 토큰을 처리하면서도 예시 비용은 훨씬 낮아, 토큰 수와 함께 모델 및 사용 유형을 구분해야 함을 보여 준다.

✅ 액션 아이템

  • CUR 2.0 호출자 자격 증명 할당을 활성화하고 line_item_iam_principal을 수집해 Amazon Bedrock 비용을 사용자·애플리케이션 단위로 귀속한다.
  • Amazon Athena에서 iamPrincipal 태그 집계와 UNNEST를 함께 적용해 팀별 태그 스키마를 반영한 모델·입출력 사용 유형별 비용 비교 기준을 잡는다.
  • 호출자 데이터 활성화로 CUR 파일·Amazon S3 저장량이 늘 수 있으므로 사용량 다수·주체 다수 환경의 수명 주기 정책을 먼저 점검한다.

❓ 열린 질문

  • CUR 2.0의 line_item_iam_principal 기준으로 이번 달 Amazon Bedrock 비용이 가장 큰 IAM 주체는 누구인가?
  • ChatApp의 Claude 4.6 Sonnet와 DocProcessor의 Nova Lite 사이에서 입력·출력 사용 유형별 비용 차이는 얼마나 되는가?
  • CUDOS의 모델별·사용 유형별·토큰 100만 개당 비용 시각화에서 가장 큰 Amazon Bedrock 지출 항목은 무엇인가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.