일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바스크립트
- 노트북
- javascript
- go
- Python
- 자바
- adapter
- 노트북 추천
- Array
- golang
- 배열
- 파이썬
- Android
- 리스트 뷰
- 연산자
- var
- ListView
- 안드로이드
- Kotlin
- as?
- 패널 교체
- HP
- 코틀린
- Overloading
- 오버로딩
- 함수
- 싱글 스레드
- node.js
- js
- Java
- Today
- Total
목록컴퓨터 공학 (Computer Science) (6)
Bbaktaeho
개요특정 블록체인 데이터를 인덱싱하기 위해 재단에서 제공하는 오픈소스 인덱서를 사용 중이었다. 인덱서는 Rust로 구현되어 있으며 PostgreSQL에 데이터를 인덱싱한다.인덱서는 프로세싱 기준마다 서로 다른 프로세서로 분리되며 서로 의존 없이 배포가 가능하다.모든 프로세서를 구동했을 때 약 70개의 테이블에 데이터를 적재하고 있었고 테이블은 모두 단일 테이블이었다.점점 증가하는 블록체인의 데이터 때문에 테이블은 매우 무거워졌으며 row 개수도 100억 개가 넘는 테이블도 존재했다. PostgreSQL의 특징 중 VACUUM 이라는 중요한 특징이 있다.보통 자동으로 해당 작업을 진행하면서 데이터베이스 팽창을 막고 쿼리 계획에 이점을 제공한다.하지만 테이블이 커지면서 VACUUM 자체의 성능도 나빠지기 시..
들어가며 방대한 양의 데이터가 생성되면서 기존의 데이터베이스들의 데이터를 쪼개서 저장하게 되었습니다. 여기서 기존 데이터베이스들은 관계형 데이터베이스를 의미하며 이들은 태생적으로 분산 처리에 어려움이 있었습니다. 이로 인해 새로운 NoSQL이라는 DBMS들이 개발되었고 많은 기업들에서 도입하기 시작되었다고 하네요. NoSQL 중에서 서비스의 주축 데이터베이스로 가장 많이 선택되는 게 DocumentDB입니다. 가장 사용량이 많은 MongoDB를 중심으로 공식 문서를 통해 DocumentDB를 알아보도록 하겠습니다. Document database (Document-oriented database) 도큐먼트 데이터베이스는 도큐먼트 지향 데이터베이스로 불리기도 합니다. 도큐먼트 데이터베이스는 스키마가 없는 ..
들어가며 최근 데이터베이스의 여러 종류를 찾아보다가 시계열(time series) 데이터베이스를 처음 접하게 되었습니다. 가장 대표적인 데이터베이스로 influxDB가 있었는데요, 전체 데이터베이스에선 29위이지만 시계열 부분에선 1위입니다. 생소한 데이터베이스라 내가 앞으로 적용시킬 수 있는 부분이 있는지 조사해보도록 하겠습니다. 시계열 데이터베이스 (TSDB) 위키백과에서 시계열 데이터베이스는 하나 이상의 시간과 하나 이상의 값 쌍을 통해 시계열을 저장하고 서비스하는데 최적화된 데이터베이스라고 합니다. 여기서 시계열은 일정 시간 간격으로 배치된 데이터들의 수열을 뜻합니다. 시계열 데이터베이스는 시간이 지남에 따라 만들어진 데이터들로 구성되므로 시간 경과에 따른 변화를 추적하는데 용이하며 분석에 특화되..
더블 링크드 리스트 (Doubly Linked List) 이중 연결 리스트, 양방향 링크드 리스트라고 불립니다. 더블 링크드 리스트는 기존 단반향 리스트의 단점을 보완한 자료구조입니다. 노드 (Node) 더블 링크드 리스트는 노드를 양방향으로 연결하는 구조입니다. 노드에는 저장할 데이터와 다음 노드를 가리키는 주소 저장 공간, 이전 노드를 가리키는 주소 저장 공간이 있습니다. 구현 노드 구현 (javascript, python) class Node { constructor(data) { this.data = data; this.next = null; this.prev = null; } } class Node(object): def __init__(self, data): self.data = data se..
링크드 리스트 (Linked List) 우리말로 연결 리스트라고 부르기도 합니다. 링크드 리스트는 기본적인 배열처럼 데이터가 연결되어 나열하는 구조입니다. 하지만 우리가 아는 배열은 하나의 타입으로만 나열할 수 있지만 링크드 리스트는 노드라고 불리는 데이터 저장 단위로 연결된 구조이기 때문에 다양한 데이터 타입으로 구현이 가능합니다. (인터프린터 언어인 자바스크립트와 파이썬은 기존 자료형인 Array, list로 링크드 리스트처럼 사용 가능) 노드 (Node) 링크드 리스트는 노드를 연결하는 구조입니다. 노드에는 저장할 데이터와 다음 노드를 가리키는 주소 저장 공간이 있습니다. 위 사진은 연결 리스트의 구조입니다. 노드는 두 개의 저장 공간으로 보라색은 데이터, 파란색은 다음 노드를 가리킵니다. 구현 노..
HTTP 웹 서버와 클라이언트가 상호 데이터 통신을 하기 위해 사용하는 하이퍼텍스트 전송 규약 Hyper Text Transfer Protocol 의 약자 현재 표준은 HTTP/1.1 특징 HTTP 프로토콜은 TCP/IP 통신 위에서 동작함 비연결성(connectionless) 클라이언트가 서버에 요청할 때 연결하고 응답을 받으면 연결을 종료하는 방식 계속 연결을 유지하지 않음 비상태성(stateless) 데이터를 주고받기 위한 각각의 데이터 요청이 서로 독립적 이전에 어떤 요청을 했는지 절대 알 수가 없음 누가 요청했는지 알기 위해서 session & cookie 또는 token을 사용해야 됨 처리과정 HTTP Request는 클라이언트에서 서버로 요청을 뜻함 HTTP Response는 서버에서 클라이..