나는 각 행에 고객 정보와 상점 ID가 포함 된 매우 큰 CSV를 거래 정보와 함께 가지고 있습니다. 현재 테스트 파일은 약 40GB (약 2 일 소요)이므로 선택 쿼리의 합리적인 반환 시간은 파티셔닝이 절대적으로 필요합니다.U-SQL 및 파일의 특정 필드만을 사용하여 큰 파일을 파일/디렉토리로 분할하는 방법은 무엇입니까?
내 질문은 : 파일을 받으면 여러 저장소의 데이터가 포함되어 있습니다. "가상 열"기능을 사용하여이 파일을 각각의 디렉토리 구조로 분리하고 싶습니다. 그 구조는 "/Data/{CustomerId}/{StoreID}/file.csv"입니다.
아직 OUTPUT 문을 사용하지 않았습니다. 명령문 사용하여이었다
Bad request. Invalid pathname. Cosmos Path: adl://<obfuscated>.azuredatalakestore.net/Data/{0}/{1}/68cde242-60e3-4034-b3a2-1e14a5f7343d
사람이 물건의 같은 종류의 시도했습니다 :
// Output to file
OUTPUT @dt
TO @"/Data/{CustomerNumber}/{StoreNumber}/PosData.csv"
USING Outputters.Csv();
그것은 다음과 같은 오류를 준다? 필자는 필드에서 출력 경로를 연결하려고했으나 아무 것도하지 않았습니다. 두 ID 및 필터 전체 데이터 집합을 걸리는 함수 (UDF)로 그것을 수행하는 생각,하지만 그것은 매우 비효율적 인 보인다.
미리 읽기/응답 해 주셔서 감사합니다!
완벽한 각 쌍에 대한 명시 적 OUTPUT 문을 갖는 제 2 U-SQL 스크립트를 만들 ! 답장을 보내 주셔서 감사합니다. (나는 실제로 팀으로부터 청력이 약간 흐트러집니다!) –
Saveen의 답변에 추가하려면 : 기능 요청은 https://feedback.azure.com/forums/327234-data-lake/suggestions/10550388-support에서 추적됩니다. -dynamic-output-file-names-in-adla. 해당 기능이 개발 중이더라도 투표를 추가하십시오. –