lakeFS 커밋하기
이전 단계에서 main에서 데이터를 분기해 새 denmark-lakes 브랜치를 만들고, lakes.parquet을 덮어써서 덴마크의 호수 정보만 담도록 했어요. 이제 그 변경 사항을 커밋하고(Git과 똑같이) 다시 main으로 머지할 거예요(Git과 똑같이).
denmark-lakes 브랜치에서 데이터 파일을 변경했으니, 이제 커밋해 볼 차례예요.
denmark-lakes 브랜치의 데이터 파일을 변경했으니 이제 커밋하고 싶겠죠. lakeFS API와 상호작용하는 방법은 여러 가지가 있어요. 웹 인터페이스, Python 클라이언트, 그리고 여기서 사용할 lakectl이 그 예예요. 터미널 창에서 다음을 실행하세요:
lakectl commit lakefs://quickstart/denmark-lakes -m "Create a dataset of just the lakes in Denmark"
해시 값을 포함한 커밋 확인 메시지가 표시될 거예요.
Branch: lakefs://quickstart/denmark-lakes
Commit for branch "denmark-lakes" completed.
ID: ba6d71d0965fa5d97f309a17ce08ad006c0dde15f99c5ea0904d3ad3e765bd74
Message: Create a dataset of just the lakes in Denmark
Timestamp: 2023-03-15 08:09:36 +0000 UTC
Parents: 3384cd7cdc4a2cd5eb6249b52f0a709b49081668bb1574ce8f1ef2d956646816
변경 사항을 커밋했으니, 이제 main 브랜치로 다시 머지할 시간이에요.
lakeFS에서 브랜치 머지하기 🔀
앞서와 마찬가지로 이번에도 lakectl을 사용해요. 문법은 머지의 소스와 대상만 지정하면 돼요. 터미널 창에서 실행해 보세요.
lakectl merge lakefs://quickstart/denmark-lakes lakefs://quickstart/main
같은 lakes.parquet 오브젝트 뷰로 돌아가서 Execute를 클릭해 같은 쿼리를 다시 실행하면 정상 동작을 확인할 수 있어요. 국가별 행 개수가 바뀌고 데이터에 덴마크만 남은 걸 보실 수 있어요:
그런데... 이런, 큰일 났어요! 서늘한 기운이 등줄기를 타고 내려오고, 배 속에서 쿵 하고 떨어지는 감각이 느껴져요. 당신이 한 짓이 뭔가요! 😱 원래 해야 했던 건 덴마크 호수의 별도 파일을 만드는 거였지, 원본을 교체하는 게 아니었는데요
이제 다 잃은 걸까요? 우리 주인공은 장애물을 극복할 수 있을까요? 답은 각각 '아니요', 그리고 '네'예요!
걱정 마세요. lakeFS는 변경 사항을 되돌릴 수 있거든요. 퀵스타트의 마지막 파트에서 그 방법을 확인해 보세요.
← 데이터의 브랜치 만들기 변경 사항 롤백하기 →
출처: 문서
본문
Info
이전 단계에서 우리는 main에서 데이터를 분기해 새 denmark-lakes 브랜치를 만들고, lakes.parquet을 덮어써서 덴마크 호수에 대한 정보만 담도록 만들었어요. 이제 그 변경 사항을 커밋하고(Git처럼) 다시 main으로 머지할 거예요(git처럼).
denmark-lakes 브랜치의 데이터 파일에 변경을 가했으니, 이제 커밋하려고 해요. lakeFS API와 상호작용하는 방법은 여러 가지가 있어요. 웹 인터페이스, Python 클라이언트, 그리고 여기서 사용할 lakectl이 있죠. 터미널 창에서 다음을 실행하세요:
lakectl commit lakefs://quickstart/denmark-lakes -m "Create a dataset of just the lakes in Denmark"
해시를 포함한 커밋 확인 메시지를 받게 될 거예요.
Branch: lakefs://quickstart/denmark-lakes
Commit for branch "denmark-lakes" completed.
ID: ba6d71d0965fa5d97f309a17ce08ad006c0dde15f99c5ea0904d3ad3e765bd74
Message: Create a dataset of just the lakes in Denmark
Timestamp: 2023-03-15 08:09:36 +0000 UTC
Parents: 3384cd7cdc4a2cd5eb6249b52f0a709b49081668bb1574ce8f1ef2d956646816
변경을 커밋했으니, 이제 main 브랜치로 다시 머지할 차례예요.
lakeFS에서 브랜치 머지하기 🔀
위에서와 마찬가지로 이번에도 lakectl을 사용해요. 문법은 머지할 소스와 대상을 지정하기만 하면 돼요. 터미널 창에서 실행해 보세요.
lakectl merge lakefs://quickstart/denmark-lakes lakefs://quickstart/main
아까와 같은 lakes.parquet 오브젝트 뷰로 돌아가 Execute를 클릭해 같은 쿼리를 다시 실행하면 잘 동작했는지 확인할 수 있어요. 국가별 행 수가 바뀌고 데이터에 덴마크만 남아 있는 걸 보게 될 거예요:
그런데... 이런! 서늘한 기운이 척추를 타고 내려오고, 배에서 후덜덜한 느낌이 밀려와요. 당신이 저지른 일이 뭔가요! 😱 해야 했던 건 덴마크 호수의 별도 파일을 만드는 거였는데, 원본을 대체해 버렸네요
모든 게 끝난 걸까요? 우리 주인공은 장애물을 이겨낼 수 있을까요? 답은 순서대로 '아니요', 그리고 '네'예요!
두려워 마세요. lakeFS는 변경 사항을 되돌릴 수 있으니까요. 퀵스타트의 마지막 파트에서 그 방법을 확인해 보세요.
← 데이터의 브랜치 만들기 변경 사항 롤백하기 →
더 알아보기 (Learn more)
공식 문서의 자세한 내용은 https://docs.lakefs.io/quickstart/commit-and-merge/에서 확인하실 수 있어요.