분류 전체보기(137)
-
mysql 모니터링( slow 쿼리 찾기 )
1. 디폴트 설정 slow_query_log: 기본값은 OFF입니다. long_query_time: 기본값은 10초입니다. - slow query log는 기록되지 않음, - 기록이 되어도 실행시간이 10초 이상인 쿼리만 slow query로 간주 [ 설정 방법 2가지 ] - 해당 설정은 my.cnf 또는 my.ini 파일에서 변경 가능 - 혹은 SET GLOBAL 명령어를 사용하여 런타임 시 사용가능 오늘은 런티임시 사용 가능한 명령어를 알아 보겠음 2. slow 쿼리 찾기 SET GLOBAL slow_query_log = 'ON'; SET GLOBAL long_query_time = 1; SELECT * FROM mysql.slow_log; slow_query_log와 long_query_time 설..
2023.03.30 -
MongoDB 모니터링 명령어 ( currentOp )
0. currentOp 역할- 작업의 상태 모니터링 가능 - 현재실행 중인 작업 조회 가능 - 과도한 리소스를 작업 조회 가능 - 결과적으로 MongoDB의 성능 최적화에 도움 1. allUesrs : 시스템의 모든 사용자의 작업의 정보를 반환db.currentOp({allUsers: true}) 2. idleConnections : idle한 커넥션 정보 반환- idle 이란 : 해당 커넥션과 연결된 클라이언트가 아무런 요청을 하지 않고 대기한 상태 ( 대분의 커넥션은 작업 후, 해당 커넥션을 끊음 -> 하지만, 일부는 끊지 않고 유지 함 - 이 경우, 해당 작업을 종료 시킬지 말지 결정해야 함 db.currentOp({idleConnections: true}) 3. inprog : 기본 옵션으로 설정..
2023.03.29 -
mongodb에서 인덱스 안 걸린 실행 쿼리 찾기( currentOp, explain 사용 )
0. mongodb에서 인덱스의 중요성 몽고디비는 인덱스가 타 데이터베이스 대비 매우 중요하다고 생각한다. 막말로 인덱스가 없거나, 엉뚱한게 적용되어 있으면, 몽고디비는 조회 자체가 되지 않는다. 심지어 부하가 심한 쿼리의 경우, 디비의 전체적인 성능 저하를 만들어 낸다. 또한 대부분 mongodb가 적용된 프로젝트 중, 실패한 프로젝트의 공통점은 mongodb의 인덱스를 잘 적용하지 못해 실패한 경우가 많다. 따라서 몽고디비는 인덱스를 매우 신경써서 관리해야 하며, 지속적으로 mql ( 몽고디비 쿼리 )를 모니터링 해주어야 한다. 그래서 오늘은 운영 중에서 사용할 수 있는 mongodb에서 인덱스가 걸리지 않는 mql를 찾는 방법에 대해 알아보겠다. 1. 사용 방법 인덱스가 안걸린 mql를 찾는 방법은..
2023.03.28 -
우분투(ubuntu)에서 Apache Ignite 설치 및 인메모리(inmemory) 설정, 그리고 캐시(cache) 데이터 샘플
0. Apache Ignite란 Apache Ignite는 apache 프로젝트에서 매우 귀한 인메모리 분산 데이터 스토어다. 데이터를 분산하여 저장하고 처리할 수 있으며 대규모 데이터 처리에 적합합니다. 또한 Ignite는 SQL를 지원해, 단순한 key-value 스토리지랑 차이를 가져, 상당히 매력적인 프로젝트이다. 그리드 컴퓨팅, 분산 트랜잭션 등 다양한 기능을 제공하므로 많은 분야에서 사용됩니다. 인메모리에 데이터스토리지의 특성상 디스크 I/O로 인한 지연을 회피 할 수 있어, 대규모 데이터 처리, 빠른 데이터 엑세스 , 분산 캐싱 등의 용도로 사용이 가능하다. 주요 사용되는 사업 분야는 금융, IoT, 로그 분석, 실시간 분석 등에서 Ignite가 사용될 수 있다. 나는 특히, 인메모리 서비스..
2023.03.27 -
우분투(ubuntu) 하둡(hadoop) 설치 가이드
0. 서론 [하둡(hadoop) 이란?] 오늘은 오래된.. 빅데이터의 코끼리 친구인, 하둡에 대해 설명해 보겠다. 하둡은 빅데이터 분야에서 가장 혁신적인 기술이라고 생각한다. 솔직히, 하둡 자체로는 엄청나게 불편한 시스템으로 그의 친구들인 하둡 에코시스템들이 없었다면, 하둡은 역사 속에 사라졌을 것이다. 하지만, 하둡은 역사속으로 사라지지 않았고, 빅데이터 시대를 열어, 대용량의 데이터를 기반으로 학습하는 현재의 AI기술까지 영향을 주었다. 하지만, 하둡의 기술은 이론적으로 그리 복잡한 기술은 아니다. 대용량의 데이터를 한 곳에 저장해 관리하니, 데이터의 조회성능의 한계가 오자, 여러 스토리지에 나눠어서 저장, 조회하자는 이론이다. 즉, 혼자 다 일하지 말고, 여러명이 함께 일을 나눠어서 하자는 사상이다..
2023.03.26 -
PYTHON 정규식 문법 및 예제 ( 전화번호, 이메일, 숫자 출력, 공백 제거, URL 출력, 주민 번호 패턴 찾기 )
0. 정규식이란 정규식(Regular Expression)은 문자열에서 패턴을 찾거나, 특정 문자열을 대체하거나, 추출하는 등의 작업을 수행하는데 사용되는 문자열 패턴이다. 정규식은 다양한 메타문자(meta-characters)를 사용하여 작성된다. 예를 들어, 이메일 주소, 전화번호, 우편번호, 주민등록번호 등과 같은 특정한 패턴을 가지는 문자열을 찾을 수 있다. 나 같은 경우, 스마트팩토리 구축 시 센서 ID를 추출하는 용도로 사용하기도 한다. 정규식은 다양한 프로그래밍 언어에서 지원이 되며, 해당 문법을 아고 있으면 문자열 파싱 작업에서 효과적인 업무 효율을 만들어 낼 수 있다. ( 하지만 조금 어렵다.. 나만 그런가..?? ) 음, 예를 들어 아래와 같은 형식의 정규식이 있다. [a-zA-Z0-9..
2023.03.25