"Size of hashkey has exceeded the maximum size limit of 2048 bytes" — 해시키 크기가 최대 크기 제한인 2048바이트를 초과했습니다.

TL;DR — DynamoDB는 키 길이를 제한합니다. 파티션(해시) 키 값은 최대 2048바이트, 정렬(범위) 키 값은 최대 1024바이트(UTF-8(또는 원시 이진) 바이트로 측정)입니다. 키가 한도를 초과하는 쓰기는 거부됩니다. 키를 줄이세요. 긴 값을 해시하거나 부피가 큰 데이터를 키가 아닌 속성으로 이동하세요.

무엇을 의미하는가

ValidationException: One or more parameter values were invalid: Size of hashkey has exceeded the maximum size limit of2048 bytes

# sort-key variant:
ValidationException: One or more parameter values were invalid: Aggregated size of all range keys has exceeded the size limit of 1024 bytes

# on DynamoDB Local you get one combined sentence instead, naming neither key:
ValidationException: Hash primary key values must be under 2048 bytes, and range primary key values must be under 1024 bytes

(예, "of2048"에서 누락된 공간은 서비스의 실제 메시지에 있습니다.) 주요 속성은 DynamoDB에 의해 인덱싱되고 물리적으로 분할되므로 해당 길이는 400KB 항목 제한보다 훨씬 낮습니다. 파티션 키 값은 1~2048바이트이고 정렬 키 값은 1~1024바이트여야 합니다. 바이트 수는 인코딩된 크기입니다(문자열의 경우 UTF-8, 바이너리의 경우 원시 바이트). 멀티바이트 문자 수는 2개 이상입니다. 클라이언트 측 HTTP 400 00이며 키가 줄어들 때까지 재시도할 수 없습니다.

왜 발생하는가

  • 파티션 키로 사용되는 긴 문자열 — 키 값으로 직접 사용되는 URL, 전체 문서, 인코딩된 Blob 또는 연결된 복합 키입니다.
  • 자세한 복합 정렬 키#로 결합된 많은 세그먼트가 모두 1024바이트를 초과합니다.
  • Base64/키의 직렬화된 데이터 — 인코딩은 바이트 수를 제한을 초과하여 부풀립니다.
  • 멀티바이트 텍스트 — UTF-8 인코딩이 문자 수에서 제안하는 것보다 큰 비ASCII 콘텐츠입니다.

어떻게 해결하는가

  1. 긴 값을 해시합니다 — 결정적 다이제스트(예: SHA-256, ~32바이트)를 키로 저장하고 전체 값을 키가 아닌 별도의 속성에 유지합니다.
  2. 더 컴팩트한 키를 선택하세요 — 부피가 큰 필드 대신 더 짧은 자연 식별자를 사용하세요.
  3. 복합 키 단축# 결합된 정렬 키를 구성하는 세그먼트를 자르거나 축약합니다.
  4. 크기가 큰 콘텐츠를 키에서 일반 속성(400KB 항목 제한에만 맞춰야 함)으로 이동합니다.
  5. 문자가 아닌 UTF-8 바이트를 계산합니다. 이모티콘과 CJK 텍스트는 빠르게 확장됩니다. 500자 문자열은 2048바이트를 초과할 수 있습니다.

DynoTable에서 연결

초안 키 값을 item size calculator에 붙여넣고 쓰기 전에 2048/1024 제한과 비교하여 바이트 수를 확인하세요. DynoTable에서 스테이징(⌘S)은 ⌘K로 열린 테스트 항목에서 대형 키를 포착합니다.

복합 키를 단축할 때 Query Builder에서 프로토타입 쿼리를 수행합니다. ⌘P로 프로필을 전환합니다. 설정 → 프로필에서 연결 테스트를 수행합니다. Connect to AWSInstall를 참조하세요.

출처

관련 오류

참고 자료

위에 링크된 공식 AWS 문서를 기준으로 2026년 7월 13일에 마지막으로 확인되었습니다.

Console 없이 DynamoDB 작업하기

DynamoDB로는 실행할 수 없는 진짜 SQL(JOINs, GROUP BY, 집계)을 실행하는 빠른 DynamoDB 데스크톱 클라이언트. 시각적 편집과 여러분 자신의 Bedrock 키로 동작하는 AI 에이전트를 제공합니다.

30일 무료 체험, 신용카드 불필요 — 이후 기간 제한 없는 무료 요금제.