2022년 Snowflake Connector for Spark 릴리스 정보

이 문서에는 Snowflake Connector for Spark 에 대한 릴리스 정보가 있는데, 해당되는 경우 다음을 포함합니다.

  • 동작 변경 사항

  • 새로운 기능

  • 고객이 직면한 버그 수정

Snowflake는 Snowflake Connector for Spark 업데이트에 의미 체계 버전 관리를 사용합니다.

버전 2.11.1(2022년 12월 13일)

새로운 기능

  • 세션 수준에서 VPCE DNS 이름을 지정하는 S3_STAGE_VPCE_DNS_NAME 구성 매개 변수를 추가함으로써 AWS VPCE 배포를 위한 지원을 추가했습니다.

  • 쿼리가 Decimal(<any_precision>, 0) 을 반환하는 경우 Spark 커넥터가 BigDecimal 값 대신 Long 값을 반환할 수 있도록 새로운 구성 옵션 treat_decimal_as_long을 추가했습니다. WARNING: 값이 Long 의 최대값보다 크면 오류가 발생합니다.

  • AWS 배포로 프록시 프로토콜(http 또는 https)을 지정하기 위한 새로운 옵션 proxy_protocol을 추가했습니다. (이 옵션은 Azure 및 GCP 배포에는 아무런 영향도 미치지 않습니다.)

  • 행 개수가 Integer의 최대값보다 큰 테이블의 행 개수를 세기 위한 지원을 추가했습니다.

  • Snowflake JDBC 드라이버 3.13.24를 사용하도록 커넥터를 업데이트했습니다.

버그 수정 사항

  • 연결 누수를 방지하기 위해 JDBC 연결을 종료하도록 커넥터를 업데이트했습니다.

  • 원격 분석 메시지를 보낼 때 발생하는 NullPointerException 문제를 수정했습니다.

버전 2.11.0(2022년 9월 2일)

호환되는 JDBC 드라이버 버전: 3.13.22

  • Spark 3.3을 위한 지원을 추가하고 몇 가지 버그를 수정했습니다.

    • 보안 취약점 CVE-2022-31197 을 방지하기 위해 테스트에 사용하는 PostgreSQL JDBC 드라이버 버전을 업그레이드했습니다.

    • Snowflake JDBC 드라이버 3.13.22 및 Snowflake Ingest SDK 0.10.8을 사용하도록 커넥터를 업데이트했습니다.

참고

  • 버전 2.11.0부터는 Spark용 Snowflake 커넥터가 Spark 3.1, 3.2, 3.3을 지원합니다. Spark용 Snowflake 커넥터 버전 2.11.0은 Spark 3.0을 지원하지 않습니다. 이전 버전의 커넥터에서는 Spark 3.0을 계속해서 지원합니다.

  • Snowflake GCP 계정의 경우 Snowflake JDBC 드라이버 버전 3.13.16~3.13.21은 Spark 커넥터에서 작동하지 않습니다.

버전 2.10.1(2022년 8월 15일)

호환되는 JDBC 드라이버 버전: 3.13.14

버그 수정 사항

  • 보안 취약점 CVE-2020-8908CVE-2018-10237 을 방지하기 위해 라이브러리에 대한 불필요한 종속성을 제거했습니다.

  • Snowflake에서 데이터를 읽을 때 JDBC 데이터 타입 TIMESTAMP_WITH_TIMEZONE 을 사용하기 위한 지원을 추가했습니다.

  • Snowflake에 DataFrame을 저장하기 전에 테이블 존재 여부를 확인하는 논리를 변경했습니다.

    • 이제 커넥터는 새 연결을 생성하는 대신 기존 연결을 재사용하여 토큰 만료와 관련된 잠재적인 문제를 방지합니다.

    • 테이블 이름이 정규화되지 않은 경우(즉, 스키마 이름을 포함하지 않은 경우) 커넥터는 이제 세션에서 현재 사용 중인 스키마가 아니라 sfSchema에서 지정한 스키마 아래에 테이블이 있는지 확인합니다.

      참고

      DataFrame을 sfSchema 이외의 스키마에 있는 테이블에 저장해야 하는 경우, 현재 스키마를 변경하려고 USE SCHEMA를 실행하는 대신 테이블의 정규화된 이름의 일부로 스키마를 지정하십시오.

  • ArrayType, MapType 또는 StructType 열이 포함된 DataFrame을 Snowflake에 쓸 때 COPY INTO TABLE 명령에서 불필요한 parse_json() 호출을 방지하여 성능을 개선했습니다.

  • Utils 클래스에 getLastSelectQueryIdgetLastCopyLoadQueryId 메서드를 추가했습니다. 이러한 메서드는 각각 Snowflake에서 데이터를 읽은 마지막 쿼리의 쿼리 ID와 마지막으로 실행된 COPY INTO TABLE 문을 반환합니다.

버전 2.10.0(2022년 2월 17일)

호환되는 JDBC 드라이버 버전: 3.13.14

동작 변경 사항

  • Spark 버전 3.2를 위한 지원을 추가했습니다. 이번 릴리스부터 Spark용 Snowflake 커넥터는 Spark 3.0, 3.1, 3.2를 지원합니다. Spark 버전 2.4는 더 이상 지원되지 않습니다.

버그 수정

  • 문자열 《null》이 NULL 타입으로 간주되는 문제를 수정했습니다.