반응형 DATA42 Redis Persistence - RDB, AOF 장단점 Redis는 file로 남겨서 메모리 데이터가 사라졌을 때 복구할 수 있는 방법을 제공한다. 1) RDB (Redis DB) 주기적으로 특정 시점의 snapshot을 남긴다. 최소 5분 이상의 간격으로 세팅해야 한다. redis.conf 의 save 파라미터로 지정한다 ex) save 900 1 : 900초 동안 1번 이상 key 변경 발생 시 저장 save 조건은 여러개 지정 가능하다. 하나라도 만족하면 수행한다. 장점 성능 손해를 최소화 backup파일이 AOF에 비해 작고 복구 쉽다 restart 시간이 빠르다. 단점 마지막으로 snapshot이 남은 시점과 다음 주기 사이에 장애가 발생한다면 cache 데이터가 유실될 수 있다. 디스크에 남기는 child process를 만들기 위해 fork()를.. 2022. 12. 28. Redis key 설계 시 고려해야할 점, 운영 가이드 Redis key 설계 시 고려해야할 점 1. Avoid long key key 크기는 1K(1024 bytes)가 넘지 않도록 한다. key의 길이가 크다면 메모리를 더 많이 차지하며, key 비교 연산에서도 비용이 많이 든다. key의 크기가 크다면, hashing을 통해 unique함을 보장하면서 줄이면 된다. ex) SHA1, SHA256 등 2. Avoid too short key key 사이즈가 크지도 않은데 일부러 축약어 등으로 과도하게 줄이는 것은 바람직하지 않다. 줄인 key의 의미를 파악할 수 없는 경우에는 개발 과정에서 버그를 야기할 수 있다. Redis 클러스터 이용 시 분산이 골고루 이어지지 않고 한 노드에 요청이 몰릴 수 있기 떄문에 key의 분산을 위해 다른 키도 이와같이 설계.. 2022. 12. 27. Cache DB란? 관련 용어 및 종류 (Memcached, Redis) Cache DB 란? 데이터를 빠르게 조회할 수 있는 곳. 원본 데이터는 다른 곳에 있고 그것으로부터 copy된 데이터가 Cache에 존재한다. 일반 DB는 디스크IO를 기반으로 동작하고 효율을 높이기 위해 memory를 사용한다. in-memory DB는 모든 데이터를 메모리에서 다루기 때문에 조회속도가 빠르다. Cache hit 조회하는 데이터를 cache에서 찾을 때 Cache miss 조회하는 데이터를 cache에서 찾지 못했을 때 Hit ratio(rate) access 시도 횟수 대비 cache hit의 비율 -> 이 값이 높아야 캐시가 Cost-Effective 하다. Cache 주의점 Cache는 임시 데이터이다. 원본이 다른 곳에 있어야 하고, 언제든 유실될 수 있음을 고려하고 시스템을 .. 2022. 12. 26. MongoDB 기본 개념 Document : MongoDB에서 데이터를 저장하는 단위 형식은 미리 정해지지 않았다. 같은 Collection에 속한 Document라고해서 같은 형식을 따를 필요는 없다. _id 필드 _id 필드는 각 document의 primary key로서 반드시 가져야 한다. 직접 지정하지 않으면 objectid형식의 데이터가 자동 생성된다. ObjectId ObjectId (12bytes) = timestamp (4) + random (5) + counter (3) 직접 _id를 지정하지 않을 때 장점 ObjectId.getTimestamp()를 통해 별도의 필드 없이 생성 시점을 가져올 수 있다. ObjectId의 맨앞이 timestamp라서 정렬하면 시간순 정렬이 된다. Collection Docume.. 2022. 12. 26. NoSQL 종류 - MongoDB, Redis, Hbase, Druid MongoDB대표적인 NoSQL DB 단일 Collection의 document단위로 Atomicity와 Transaction 기능을 제공한다.빅데이터용 DB는 아니지만 sharding으로 확장성도 제공한다. Redis대표적인 in-memory DB 서버가 다운되면 유실될 수 있다! (잘못사용하면 큰일남)자료구조를 먼저 정하고 사용한다. (자료구조 특징을 이해해야한다)싱글스레드로 lock을 제공하지 않으면서도 빠르게 데이터를 조회할 수 있다. Apache HBase대표적인 빅데이터용 DB 단일 key로만 데이터를 저장하고 조회함 (장점이자 단점)데이터가 아무리 많아져도 단일 key에 대한 조회 속도는 느리지 않다.key를 제대로 사용하는 방법을 익혀야 한다. Apache Druid대표적인 cube형 DB.. 2022. 12. 25. MongoDB란? windows 설치하기 / Studio 3T, Compass 사용하기 MongoDB RDBMS와의 비교 MongoDB (NoSQL Database) RDBMS (SQL Server, Oracle, etc.) Database Database Collection Table Document Row(Record) Field Column 장점 1. json 형태로 저장하기 때문에 효율적인 방식으로 데이터를 저장하고 검색할 수 있다. 2. 문서기반 데이터베이스이므로 쉽게 확장 또는 축소 가능하다. 3. 대용량 데이터로 빠르게 수행된다. NoSQL중 하나인 MongoDB 설치와 사용툴을 알아보자 몽고DB 사이트 Try MongoDB Community Edition Try MongoDB Community Edition on premise non-relational database inc.. 2022. 12. 24. [Fastcampus 데이터 엔지니어링] 데이터 엔지니어는 어떤 언어를 배워야 할까? Airflow - Python Spark - Java, Scala, Python 대용량 분산시스템이 오랜시간 Java 기반으로 개발된 것들이 많아서, 하나를 꼽으면 Java 언어가 가장 기초적이라고 할 수 있다. Java 기반의 프레임워크나 툴들이 많고 그것을 이용해 개발 운영을 해야하기 때문에 데이터 엔지니어로 취업하길 원하면 Java의 기초를 탄탄히 다져야 한다. JVM 모니터링해야 하기 때문에 JVM에 대해서도 잘 알아야 한다. Java 코드를 잘 작성하는 것보다는 JVM을 잘 이해하고 모니터링과 운영할 수 있어야 한다. 2022. 12. 3. [올윈에듀] 인공지능 기술과 산업별 실무적용 기법 인공지능 기술과 산업별 실무적용 기법 (문재현 강사) 지도학습 supervised learning 정답에 영향을 미치는 변수, 정답에 영향을 미치는 모델을 -> 인간이 직접선택하므로 인간개입에 의한 분석이다. 모델 - 학습모델, 설명변수(x), 종속변수(y) 1. 분류분석 일련의 데이터가 포함된 기존 범주를 학습하고 새로운 범주를 구분하여 경계를 나누는 것 대표적인 모델 K-NN: 새로운 데이터를 입력 받았을 떄 가장 가까이 있는 것이 무엇이냐를 중심으로 새로운 데이터 종류를 정해주는 것 NB(베이즈 법칙): 사전 확률과 우도 확률을 알면 사후 확률을 알 수 있다는 것 DT(의사결정트리): 의사결정규칙을 도표화하여 분류과정에서 예측을 수행하는 분석 방법 SVM: 학습데이터와 범주 정보를 학습하면서 얻어진.. 2022. 10. 26. [MySQL] 권한 명령어 사용자 계정 생성 create user 'uno2'@'localhost' identified by 'thisisTESTpw!#'; 사용자 계정 조회 select `user` from `mysql`.`user`; 권한 체크 show grants for 'uno'@'localhost'; 모든 권한 부여 grant all on `board`.* to 'uno'@'localhost' with grant option; 2022. 7. 27. 이전 1 2 3 4 5 다음 728x90 반응형