Data Lake
데이터 레이크가 AI와 ML의 기반 역할을 하는 방법을 살펴보세요. 원시 데이터를 활용해 Ultralytics YOLO26을 학습하고 컴퓨터 비전 워크플로를 간소화하는 방법을 알아보세요.
데이터 레이크는 필요할 때까지 방대한 양의 원시 데이터를 원래 형식 그대로 보관하는 중앙 집중식 스토리지 저장소입니다. 데이터를 저장하기 전에 구조화해야 하는 기존 스토리지 시스템과 달리, 데이터 레이크는 구조화된 데이터(행과 열), 반구조화된 데이터(CSV, 로그, XML, JSON), 비구조화된 데이터(이메일, 문서, PDF), 바이너리 데이터(이미지, 오디오, 동영상)를 포함하여 데이터를 "있는 그대로" 수용합니다. 이러한 아키텍처의 유연성 덕분에 데이터 레이크는 현대 빅데이터 전략의 핵심 요소가 되었으며, 특히 인공지능(AI)과 머신 러닝(ML)을 활용하는 조직에서 중요합니다. 조직은 데이터 수집과 데이터 사용을 분리함으로써 방대한 정보 풀을 비교적 저렴하게 저장하고, 이후에 구체적인 분석 질문을 도출할 수 있습니다.
AI 및 머신 러닝에서 데이터 레이크의 역할#
AI 개발의 맥락에서 데이터 레이크의 주요 가치는 딥 러닝(DL) 워크플로를 지원하는 능력에 있습니다. 고급 신경망은 높은 정확도를 달성하기 위해 다양하고 방대한 학습 데이터가 필요합니다. 데이터 레이크는 컴퓨터 비전(CV)을 위한 수백만 개의 고해상도 이미지나 음성 인식을 위한 수천 시간 분량의 오디오와 같은 원시 자산이 처리되기 전에 저장되는 준비 공간 역할을 합니다.
데이터 과학자는 데이터 레이크에서 "스키마 온 리드(schema-on-read)" 방법론을 사용합니다. 이는 데이터를 스토리지에 기록할 때가 아니라 처리하기 위해 읽을 때만 데이터에 구조를 적용한다는 의미입니다. 따라서 동일한 원시 데이터셋을 원본 소스 자체를 변경하지 않고 다양한 예측 모델링 작업에 여러 방식으로 처리할 수 있어 매우 뛰어난 민첩성을 확보할 수 있습니다. 또한 강력한 데이터 레이크는 클라우드 컴퓨팅 서비스인 Amazon S3 또는 Azure Blob Storage와 통합되는 경우가 많아 YOLO26과 같은 대규모 모델을 학습하는 데 필요한 확장 가능한 병렬 처리를 지원합니다.
데이터 레이크와 데이터 웨어하우스 비교#
흔히 혼동되지만 데이터 레이크는 데이터 웨어하우스와 다릅니다. 데이터 웨어하우스는 데이터를 구조화된 테이블에 저장하며, 빠른 SQL 쿼리와 비즈니스 인텔리전스 보고에 최적화되어 있습니다. 데이터 웨어하우스는 "스키마 온 라이트(schema-on-write)"를 사용하므로, 시스템에 데이터를 입력하기 전에 추출, 변환, 적재(ETL) 프로세스를 통해 데이터를 정제하고 변환해야 합니다.
반면 데이터 레이크는 스토리지 용량과 다양성에 최적화되어 있습니다. 데이터 레이크는 목표가 아직 정의되지 않았을 수 있는 비지도 학습과 탐색적 분석을 지원합니다. 예를 들어 데이터 웨어하우스는 지난달에 판매된 제품 수를 알려줄 수 있지만, 데이터 레이크는 AI 모델이 제품이 왜 판매되었는지 이해하는 데 도움이 되는 원시 고객 감성 로그와 이미지 데이터를 보관합니다.
실제 적용 사례#
데이터 레이크는 자동화의 한계를 확장하는 다양한 산업에서 중요한 역할을 합니다:
- 자율주행 차량: 자율주행 기술을 개발하려면 페타바이트 규모의 센서 데이터를 처리해야 합니다. 자율주행 차량은 LiDAR 포인트 클라우드, 레이더 신호, 고화질 동영상의 연속 스트림을 생성합니다. 데이터 레이크는 이러한 원시 텔레메트리 데이터를 저장하므로 엔지니어는 실제 환경의 시나리오를 재현하여 다양한 기상 조건에서 보행자와 장애물을 식별하도록 객체 탐지 모델을 학습시킬 수 있습니다.
- 의료 진단: 현대 의료 영상 분석에서 병원은 환자 병력, 유전체 데이터, 영상 파일(MRI, CT 스캔)을 보안 데이터 레이크에 통합합니다. 그러면 연구자는 이 익명화된 비구조화 데이터를 활용하여 종양 탐지 또는 질병 예측 모델을 학습시킬 수 있으며, 의료 영상 내 관심 영역을 분리하기 위해 세그멘테이션 기법을 사용하는 경우가 많습니다.
Ultralytics와 함께 데이터 레이크 활용하기#
Ultralytics Platform을 사용할 때 사용자는 학습을 위한 주석 데이터셋을 생성하기 위해 조직의 데이터 레이크에서 원시 데이터의 하위 집합을 가져오는 경우가 많습니다. 원시 이미지를 가져와 라벨을 지정하면 최첨단 모델을 학습하는 데 사용할 수 있습니다.
다음 예제에서는 개발자가 로컬 데이터셋(데이터 레이크에서 가져오는 작업을 모방)을 로드하여 탐지 작업에 YOLO26 모델을 학습하는 방법을 보여줍니다.
from ultralytics import YOLO
# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Train the model using a dataset configuration file
# In a production pipeline, this data might be streamed or downloaded
# from a cloud-based data lake prior to this step.
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)
# Run inference on a new image to verify performance
predictions = model("https://ultralytics.com/images/bus.jpg")








