url_* 세션 설정
url_* 세션 설정
이 페이지에서는 URL 해석과 관련된 url_* 세션 설정들을 다뤄요. url 테이블 함수와 URL 테이블 엔진에서 상대 URL을 해석하는 기준 URL과 와일드카드 확장 시 탐색할 최대 디렉터리 수를 설정해요. 이 설정들은 system.settings 테이블에서 확인할 수 있으며 ClickHouse 소스에서 자동 생성돼요.
출처: 문서
본문
이 설정들은 system.settings에서 확인할 수 있으며 소스에서 자동 생성돼요.
url_base
url 테이블 함수와 URL 테이블 엔진에서 상대 URL을 해석하는 데 사용되는 기준 URL이에요. 설정되면 상대 URL은 다음과 같이 해석돼요:
-
경로 상대 URL(예:
data.csv): RFC 3986에 따라 기준 URL 경로와 병합돼요. 기준 경로에서 마지막/이후의 모든 것이 상대 URL로 대체되므로 끝 슬래시가 중요해요:https://example.com/dir/+data.csv=https://example.com/dir/data.csv이지만,https://example.com/dir+data.csv=https://example.com/data.csv이에요. 기준에 경로가 없으면(예:https://example.com)/가 삽입돼요:https://example.com/data.csv. 상대 URL의 점 세그먼트(./와../)는 정규화돼요:https://example.com/dir/+../a.csv=https://example.com/a.csv. -
호스트 상대 URL(예:
/test/data.csv): 기준 URL의 스킴과 호스트에 대해 해석돼요. -
스킴 상대 URL(예:
//other.com/test/data.csv): 기준 URL의 스킴을 사용해 해석돼요. -
쿼리 전용 참조(예:
?x=1): 기준 URL 경로에 추가돼요(기존 쿼리/프래그먼트 대체). -
프래그먼트 전용 참조(예:
#frag): 기준 URL에 추가되며 쿼리 문자열을 보존해요(기존 프래그먼트 대체). -
빈 참조: 프래그먼트 없는 기준 URL을 반환해요.
-
기준 URL이 스킴뿐이라면(예:
file://) 경로 상대 URL이 그것에 직접 추가돼요:file://+data.csv=file://data.csv.file://스킴의 경우 이는user_files디렉터리(clickhouse-local에서는 현재 디렉터리)에 대한 상대 경로를 의미해요. 이 경우 점 세그먼트는 그대로 유지되므로, 대상 엔진이 자신의 기준 디렉터리를 기준으로 해석해요.
예를 들어 url_base가 https://example.com/def/이면:
-
data.csv는https://example.com/def/data.csv로 해석돼요. -
/test/data.csv는https://example.com/test/data.csv로 해석돼요. -
//other.com/test/data.csv는https://other.com/test/data.csv로 해석돼요.
url_wildcard_max_directories_to_read
인덱스 페이지에서 URL 와일드카드를 확장하는 동안 탐색할 수 있는 최대 디렉터리 수예요.