목록Programming/Docker (3)
DHistory
명령어 전달을 해야하는 이유는 무엇인가? Local에 MySQL을 설치하지 않고 Docker Container를 이용하여 MySQL을 사용중이다. MySQL에 접속하기 위해 MySQL Container에 접속 후 mysql에 접속해야했다. 이 작업은 반복되어 귀찮기 때문에 이를 개선하기 위해 명령어 전달을 하게 되었다. 명령어를 어떻게 전달하는가? docker exec docs.docker.com docker exec -it {container} {executable command} # 예시 docker exec -it mysql echo hello docker 어떻게 mysql에 바로 접근할 것인가? vim ~/.zshrc # 아래 내용 추가 alias=mysql "docker exec -it mysq..
MySQL Container 기본편 [Docker] MySQL Container에 CSV 파일 넣기 MySQL Container에 왜 CSV를 넣게 되었는가? datadog에 저장된 로그를 분석하는 작업을 진행하고 있었습니다. 로그를 group by하여 로그를 분석해야할 일이 생겼습니다. 처음에는 datadog에 내장되어 있는 gr dhistory.tistory.com 배경 데이터 정합성을 맞추기 위해 데이터 패턴을 확인하는 작업이 필요했습니다. 현재 AWS Aurora (MySQL 5.7)을 사용중이고, 5.7 버전에서는 regex를 이용하여 데이터를 변경하는 비용이 상당했습니다. 이를 해결하고자 MySQL 8.0에서 지원하는 regexp_replace() 함수를 사용하고자 합니다. MySQL 8.0을..
MySQL Container에 왜 CSV를 넣게 되었는가? datadog에 저장된 로그를 분석하는 작업을 진행하고 있었습니다. 로그를 group by하여 로그를 분석해야할 일이 생겼습니다. 처음에는 datadog에 내장되어 있는 group by를 활용하여 로그 분석을 진행했습니다. 하지만, 원하는 방식으로 group by를 할 수 없었고 다른 field로 group by 시 속도도 상당히 느렸습니다. 자유자재로 활용할 수 있고 빠르게 이용할 수 있는 방법을 찾기 시작했습니다. 로그를 CSV 파일로 추출할 수 있었기 때문에 해당 로그를 group by 하기 위해 DB를 생각했습니다. 현재 local에 설치된 DB는 없었고 docker로 mysql container를 띄워 사용중이었습니다. 이를 이용하고자 ..