본문 바로가기

세계정복의주인장

(1202)
1-2 node.js의 특징. event-driven, non-blocking I/O , 단일 스레드 node.js의 특징인 event-driven, non-blocking I/O , 단일 스레드 에 대한 간략한 설명입니다.  1. event-drivenevent-driven은 사용자가 이벤트를 발생시켰을때, 즉 데이터를 전송 했을때에만 작동합니다. 대부분의 웹서버는 사용자가 이벤트를 발생하기까지 기다립니다. 이벤트가 발생하기까지 자원(대기 시간 및 메모리)을 계속 소비하게 됩니다. 하지만 event-driven는 이벤트에만 웹서버가 연결해주기 때문에 자원을 최소화 시킬수 있습니다.    2. non-blocking I/Oblocking I/O(동기식 I/O) 은 쓰기/읽기 이벤트가 발생하면 이벤트가 끝날때까지 해당 모듈을 점유하게 됩니다. 즉 다른 일을 못하게 되지요. 또한 메모리버퍼에 데이터를 차지하..
timesacle db + fastapi https://www.youtube.com/watch?v=Se5ipte9DMY&t=3s timesacleDBtimesacle DB 는 PostgreSQL 을 기반의 TimescaleDB는 오픈소스 기반의 시계열(time-series) 데이터베이스로 시계열 데이터를 효율적으로 저장, 관리, 분석할 수 있는 기능을 제공하며, PostgreSQL의 모든 기능을 그대로 사용할 수 있는 확장(extension) 형태로 동작한다.  주요 특징PostgreSQL의 확장이므로, PostgreSQL의 모든 기능과 호환 (SQL 쿼리, 트랜잭션, 인덱스, 사용자 정의 함수 등을 그대로 활용)시간 축을 기준으로 데이터를 효율적으로 분할 및 저장 (데이터의 쓰기/읽기 성능을 최적화하기 위해 자동 파티셔닝과 압축을 제공)Hyp..
2. elasticsearch indexing Indexing 이란 문서(DOC)들의 내용 중에서 검색하고자 하는 대상들을 쉽고 빠르게 찾을 수 있는 자료구조로 배치하는 것.전통적인 RDBMS 에서는 like 검색을 사용하기 때문에 데이터가 늘어날수록 검색해야 할 대상이 늘어나 시간도 오래 걸리고, row 안의 내용을 모두 읽어야 하기 때문에 기본적으로 속도가 느림.Elasticsearch는 데이터를 저장할 때 역색인(inverted index) 구조를 만들어 저장하여 관리  Elasticsearch에서는 추출된 각 키워드를 텀(term) 이라고 부르며 이렇게 Inverted Index가 있으면 term을 포함하고 있는 Documents의id를 바로 얻어올 수 있다.이러한 특성 떄문에 Elasticsearch에서는 저장이 아닌 색인(Indexing)..
1. Elasticsearch Elasticsearch는 Apache Lucene 기반의 분산형 검색 및 분석 엔진, 확장 가능한 데이터 베이스 사용 가능한 예로그, 메트릭 추적 : 애플리케이션, 시스템 및 서비스의 로그를 수집 저장 및 분석애플리케이션 성능 모니터링 : 애플리케이션의 성능 모니터링 분석사용자 모니터링 : 애플리케이션과 사용자 상호 작용을 모니터링 , 정량화, 분석풀 텍스트 검색 : 역색인, 토큰화, 텍스트 분석을 활용하여 빠르고 관련현 있는 텍스트 검색시멘틱 검색 : 동의어, 벡터 임베딩을 활용한 맥락적 의미 이해지리 공간 검색 2. docker 실행https://www.elastic.co/guide/en/elasticsearch/reference/8.15/run-elasticsearch-locally.html Ru..
Apache Lucene 4 http://opensearchlab.otago.ac.nz/paper_10.pdf 해당 페이퍼는 es를 간단하게 훓는 페이퍼로 대략적인 개요정도만 담겨져 있었다.  Apache Lucene은 색인, 쿼리, 하이라이트, 언어 분석 등과 같은 일반적인 검색 및 검색 관련 작업을 수행하기 위한 애플리케이션 프로그래밍 인터페이스를 제공하는 오픈 소스 Java 기반 검색 라이브러리입니다.Language AnalysisLucene의 분석 기능은 색인할 문서나 검색할 쿼리 형태의 콘텐츠를 가져와 필요에 따라 사용할 수 있는 적절한 내부 표현으로 변환한다.Lucene의 역 인덱스에 삽입되는 토큰을 생성하고, 쿼리 시에는 적절한 쿼리 표현을 형성하는 데 도움이 되는 토큰으로 변환한다.분석 프로세스는 들어오는 콘텐츠에 대..
[25 Computer Papers] 4. Cassandra - A Decentralized Structured Storage System https://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf  1 introductionCassandra는 확장성과 가용성을 달성하기 위해 잘 알려진 기술을 종합적으로 사용합니다. Cassandra는 페이스북의 편지함 검색 기능의 스토리지 요구 사항을 충족하도록 설계되었습니다.-매우 높은 쓰기 처리량, 하루 수십억 건의 쓰기 작업-사용자 수에 따른 확장성  2 Related Work성능, 가용성, 내구성을 위한 데이터 분산은 파일 시스템과 데이터베이스 커뮤니티에서 널리 연구되어 왔습니다. Cassandra에 영향을 준 기존 시스템에 대해 이야기해 보겠습니다.-Ficus와 Coda는 일관성을 희생하는 대신 고가용성을 위해 파일을 복..
레디스 트러블 슈팅 메모리 문제레디스 명령어 중 메모리 사용량을 확인 할수 있는 memory 명령어가 있다. 기존에도 info 명령어로 확인할수 있지만, memroy 명령어를 통해 더 자세히 확인 할수 있다.https://redis.io/docs/latest/commands/memory-usage/https://redis.io/docs/latest/commands/memory-stats/  127.0.0.1:6379> meory help(error) ERR unknown command 'meory', with args beginning with: 'help'127.0.0.1:6379> memory help 1) MEMORY [ [value] [opt] ...]. Subcommands are: 2) DOCTOR 3) ..
백준 플래티넘5 기념샷 요건 골드1 마지막 지점 샷 (플레5까지 -1점 ㅋ)  짜잔! 목표는 한달이였지만 두달 넘게 걸렸다. (꽤나 어려웠다..)사실 골드2문제부터는 거의 못풀다 싶히 했다. 이렇게 어려운걸 사람들은 어떻게 푸는거지???지금도 나의 실력은 골드3~4사이라 생각한다.코테 준비하느라 시작했지만, 새로운 문제를 발견할때마다 재미있긴하다. 못풀어서 그렇지..ㅎㅎ푸는게 중요한게 아닌 재미를 잊지 않았으면 한다.