Azure 방울 저장소를 사용하여 스트림 분석 작업에서 오는 원격 측정 데이터를 저장하는 현재 프로젝트에 몇 가지 테스트를 추가하고 있습니다. 텔레 메 트리 데이터를 가져 오는 루틴에 대한 테스트를 수행하고자하므로 테스트 데이터 용 별도의 컨테이너를 만들었습니다. 샘플 데이터 세트를 다운로드하고 필요에 맞게 데이터를 수정 한 다음 Azure 스토리지 탐색기를 사용하여 모든 것을 새 컨테이너로 다시 업로드했습니다.Azure 방울 저장소에 테스트 데이터 컨테이너 만들기
테스트가 즉시 실패했고 파일의 LastModified 날짜가 업로드 날짜/시간으로 변경 되었기 때문에이 테스트가 곧 발견되었습니다. 괜찮지 만 업로드 순서도 다릅니다. 내 코드는 파일의 수정 된 날짜를 사용하여 어느 것이 가장 최근인지를 확인합니다. 새 날짜를 기준으로 다른 파일을 반환합니다.
다른 속성을 업데이트하도록 변경할 수는 있지만이 속성은 수정할 수 없다는 것을 발견했습니다. 그래서 해결책을 알았습니다. 프로덕션 인스턴스에서 파일 순서를 얻은 다음 동일한 순서로 테스트 인스턴스의 모든 파일에 접근하는 빠른 스크립트를 작성할 수있었습니다.
하지만 ... 이것이 최선의 선택인지 궁금합니다. 또한 별도의 속성에 맞춤 datetime을 저장하는 것이 '우수 사례'라고 읽었지 만 스트림 애널리틱스 (BLOB 작성)에서 바로 수행 할 수 있다고는 생각하지 않습니다. 나는 또한 이것을하기 위해 Azure 함수를 사용하는 것을 고려했다. (새로운 BLOB => 업데이트 속성), 그러나 나는 어떤 이유로 든 실패 할 수도있는 복잡성과 무언가를 추가하는 것이다.
그래서이 문제를 해결하는 가장 좋은 방법을 찾고 있습니다. 누군가?
업데이트 :이 부분은 아마도 조금 더 설명 할 가치가 있습니다. LastModified 날짜를 사용하여 정렬하는 것 외에도 Blob을 필터링하는데도 사용합니다. BLOB 자체는 ASA 출력 데이터가 포함 된 CSV 파일이므로 원격 측정 기록입니다. 각 레코드에는 시간 소인이 있지만 그 정보는 파일에 있습니다. 데이터를 가져올 때 각 파일에 타임 스탬프가 무엇인지 알기를 원하지 않습니다. 따라서 미리 필터를 사용하여 특정 시간 범위 내의 얼룩을 필터링 한 다음 해당 파일을 내부의 레코드에만 다운로드/열기합니다.
blob을 전혀 건드리지 않는 한 완벽하게 작동하지만 분명히 어떤 이유로 든 blob이 수정되는 즉시 작동을 멈 춥니 다. 그래서 저는 이제이 문제를 해결하기 위해 다른/더 좋은 방법이 필요하다는 것을 확신합니다. 하지만 어떻게?
정확하게 이해한다면 하늘색 분석을 사용하여 일부 계산을 수행하고 결과를 BLOB에 저장하고 그 BLOB를 다른 프로세스에서 사용합니다. 그리고 다운로드 할 얼룩을 알아내는 마지막 수정 시간에 의존하고 있습니까? 맞습니까? 내가 마지막으로 수정 한 시간에 의존해야하는 이유가 궁금합니다. 출력 blob을 시간별로 분할하고 적절한 폴더를 살펴 보는 것이 어떻습니까? –
그게 참으로 유효한 설명이고, 실제로 나는 그런 얼룩을 저장하고 있습니다. 그러나 어떤 경우에는 ASA가 두 개의 CSV 파일을 폴더 안에 넣을 것입니다. 나는 둘 다 로딩 한 다음 올바른 내부 비교를하기 위해 내부 날짜를 사용하는 것으로 할 수 있다고 생각한다. 이 일을 더 일찍 생각해야했는데 때로는 일을 복잡하게 만드는 것이 너무 쉽습니다. – Jasper