글
초대용량 처리 시, 이터레이터
IT/Python3
2021. 3. 22. 15:35
반응형
리얼타임. 실시간 성으로 데이터를 처리 시, 공간복잡도를 크게 고려하지 않아도 되었으나, 현재 초 대용량 (목표치는 약 5.2 천만건 Rows) 데이터를 파일로 내리고 파싱할 일이 생겼습니다.
기본적으로 파이썬에서는 이터레이터로 생성하고, 실제 그 값이 필요해지는 시점에서, 그 값을 만드는 방식을 사용하는데요.
이전 C언어의 포인터, 그리고 자바의 레퍼런스를 빌어 사용하자면, 반복해야하는 콜렉션에 대한 메모리 주소 및 리모콘만 만들어두고, 그 내용물에 해당하는 데이터 생성을 뒤로 미루는 것이죠. 이런 기법을 지연 평가(lazy evaluation)라고 전문적으로 부른다고 하네요 ㅇㅇ..
유사 사례로, 브라우저에서 웹 이미지, CSS 등 스태틱 컨텐츠들을 가져올 시, 레이지 로딩 (Lazy Load) 라는 기법 또한 존재합니다. 먼저, 이 스태틱 URI들을 브라우저가 받은 뒤, 그 스태틱 이미지들을 이후에 CDN에서 가져오는 것이죠 :)
(나머지 공사중)
반응형
'IT > Python3' 카테고리의 다른 글
Venv (0) | 2021.08.24 |
---|---|
S3 키 메타데이터 (이름/용량) 크롤러 (0) | 2021.03.18 |
비동기 처리 sample (0) | 2021.03.18 |
Python3 딕셔너리 엘리먼트 타입의 리스트 아이템 중복제거 (0) | 2020.12.16 |
쿠버네티스 노드 관제 커스터마이즈 (0) | 2020.11.06 |