소켓 통신, db 인덱스

Kangho LEE·2021년 5월 3일
1

벌써 5월이 되었습니다.. 조만간 필기 시험과 코테가 또 잔뜩 남아있어 집중하고 있습니다.
과제는 그만...

네트워크

소켓 - 소켓은 통신을 위한 통로입니다. -> 특정 포트를 통해 양방향 통신을 합니다. (HTTP 통신이 서버와 클라이언트 간 단방향 통신과 다른 점 HTTP는 단방향 클라이언트가 서버에 요청하는 형식), 고로 주로 streaming이나 온라인 게임을 구현할 때에 자주 사용됩니다.

데이터 베이스

인덱스 - 데이터 베이스 테이블 검색 속도를 빠르게 하기위한 자료 구조 주로 해쉬, B+Tree를 이용해 구성합니다. 하지만 대부분의 해쉬 테이블은 연산자 밖에 구현을 하지 못하기 때문에 B+Tree를 이용합니다.

B+Tree

  • 리프 노드들은 인덱스와 데이터를 가지고 있고 나머지 노드들이 인덱스만을 갖습니다.
  • 리프노드들은 링크드 리스트로 연결되어 순차 검색이 용이합니다. - < > 연산자도 사용가능 합니다.

이런 특징들 덕분에 주로 B+Tree를 이용해 인덱스를 구성합니다.

그래프형 데이터 모델 - 문서형 데이터 베이스가 1 : N 관계에서 읽기와 삽입에 특화되어 있다면 그래프형 데이터베이스 모델은 주로 N:M 관계에서 유용합니다. 특히 구글 검색에 사용되는 페이지 랭크 알고리즘, 최단거리 알고리즘을 사용할 수 있어 관계가 많은 SNS 서비스 같은곳에 더욱 유용하게 사용됩니다.

정점에는 주로 정보가 담겨있고 간선간에는 정점간 관계를 나타낼 수 있습니다. 유연하게 사용이 가능합니다.

profile
우유와 누텔라

0개의 댓글