FT.CREATE - Amazon ElastiCache

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

FT.CREATE

FT.CREATE 명령은 빈 인덱스를 생성하고 채우기 프로세스를 시작합니다. 각 인덱스는 여러 필드 정의로 구성됩니다. 각 필드 정의는 필드 이름, 필드 유형 및 각 인덱싱된 키 내의 경로를 지정하여 선언된 유형의 값을 찾습니다. 일부 필드 유형 정의에는 추가 하위 유형 지정자가 있습니다.

HASH 키의 인덱스의 경우 경로는 해시 멤버 이름과 동일합니다. 원하는 경우 선택적 AS절을 사용하여 필드의 이름을 바꿀 수 있습니다. 필드 이름을 바꾸는 것은 멤버 이름에 특수 문자가 포함된 경우에 특히 유용합니다.

JSON 키의 인덱스의 경우 경로는 선언된 유형의 데이터에 대한 JSON 경로입니다. JSON 경로에는 항상 특수 문자가 포함되어 있으므로 AS절이 필요합니다.

구문

FT.CREATE <index-name> ON HASH | JSON [PREFIX <count> <prefix1> [<prefix2>...]] SCHEMA (<field-identifier> [AS <alias>] | VECTOR [HNSW|FLAT] <attr_count> [<attribute_name> <attribute_value>]) | TAG [SEPARATOR <sep>] [CASESENSITIVE] | NUMERIC )+

<index-name>(필수): 인덱스에 지정한 이름입니다. 동일한 이름의 인덱스가 이미 있는 경우 오류가 반환됩니다.

ON HASH | JSON(선택 사항): 지정된 유형과 일치하는 키만 이 인덱스에 포함됩니다. 생략하면 HASH가 가정됩니다.

PREFIX <prefix-count> <prefix>(선택 사항): 이 절을 지정하면 지정된 접두사 중 하나 이상과 동일한 바이트로 시작하는 키만 이 인덱스에 포함됩니다. 이 절을 생략하면 올바른 유형의 모든 키가 포함됩니다. 길이가 0인 접두사는 올바른 유형의 모든 키와도 일치합니다.

필드 유형:

  • TAG: 태그 필드는 하나 이상의 태그 값을 포함하는 문자열입니다.

    • SEPARATOR <sep>(선택 사항): 개별 태그를 구분하는 데 사용되는 ,.<>{}[]"':;!@#$%^&*()-+=~ 문자 중 하나입니다. 생략 시 기본값은 ,입니다.

    • CASESENSITIVE(선택 사항): 있는 경우 태그 비교는 대/소문자를 구분합니다. 기본값은 태그 비교는 대/소문자를 구분하지 않는다는 것입니다.

  • NUMERIC: 숫자 필드에는 숫자가 포함됩니다.

  • VECTOR: 벡터 필드에는 벡터가 포함됩니다. 현재 HNSW(Hierarchical Navigable Small World)와 FLAT(brute force)라는 두 가지 벡터 인덱싱 알고리즘이 지원됩니다. 각 알고리즘에는 추가 속성 세트가 있으며, 그 중 몇 가지는 필수이고 나머지는 선택 사항입니다.

    • FLAT: Flat 알고리즘은 정확한 답변을 제공하지만 인덱싱된 벡터 수에 비례하여 런타임이 있으므로 대규모 데이터세트에 적합하지 않을 수 있습니다.

      • DIM <number>(필수): 벡터의 차원 수를 지정합니다.

      • TYPE FLOAT32(필수): 데이터 형식, 현재 FLOAT32만 지원됩니다.

      • DISTANCE_METRIC [L2 | IP | COSINE](필수): 거리 알고리즘을 지정합니다.

      • INITIAL_CAP <size>(선택 사항): 초기 인덱스 크기입니다.

    • HNSW: HNSW 알고리즘은 대략적인 답변을 제공하지만 FLAT보다 훨씬 빠르게 작동합니다.

      • DIM <number>(필수): 벡터의 차원 수를 지정합니다.

      • TYPE FLOAT32(필수): 데이터 형식, 현재 FLOAT32만 지원됩니다.

      • DISTANCE_METRIC [L2 | IP | COSINE](필수): 거리 알고리즘을 지정합니다.

      • INITIAL_CAP <size>(선택 사항): 초기 인덱스 크기입니다.

      • M <number>(선택 사항): 각 계층의 그래프에 있는 각 노드에 허용되는 최대 발신 엣지 수입니다. 계층 0에서 발신 엣지의 최대 수는 2*M입니다. 기본값은 16이고 최댓값은 512입니다.

      • EF_CONSTRUCTION <number>(선택 사항): 인덱스 생성 중에 검사되는 벡터 수를 제어합니다. 이 파라미터의 값이 높을수록 인덱스 생성 시간이 길어지는 대신 재현율이 향상됩니다. 기본값은 200입니다. 최대값은 4,096입니다.

      • EF_RUNTIME <number>(선택 사항): 쿼리 작업 중에 검사할 벡터 수를 제어합니다. 기본값은 10이고 최댓값은 4096입니다. 실행하는 각 쿼리에 대해 이 파라미터 값을 설정할 수 있습니다. 값이 높을수록 쿼리 시간이 늘어나지만 쿼리 재현율은 향상됩니다.

RESPONSE: OK 또는 오류입니다.