본문 바로가기

분류 전체보기135

Apache Druid 정의, 구성요소, 아키텍처 목차 Druid란? Apache Druid is a high performance real-time analytics database. 대규모 데이터 세트에 대한 빠른 분석을 위해 설계된 실시간 분석 데이터베이스입니다. Druid는 실시간 수집, 빠른 쿼리 성능을 위해 사용되며 빠른 집계가 필요한 동시성이 높은 API 백엔드로 사용됩니다. Apache Druid는 OLAP 데이터베이스 입니다. OLAP는 Online Analytics Processing의 약자로 사용자가 적재한 데이터를 다양한 방식(다차원)으로 적재하고 분석하도록 도와주는 시스템입니다. 다차원 정보는 기존에 1차원 정보(row단위)를 몇 개의 필드들을 사용해서 지표로 만들어 보여주는 것입니다. 즉, Druid는 다차원 필드인 디멘젼을 사.. 2022. 12. 27.
[Calico 01] AS(IRP, ERP)와 BGP란 무엇인가? Kubernetes Calico에 대해 알아보던 중 BGP라는 개념이 등장했다. 생소한 개념이었고 네트워크에 대해 간단히 짚고 가야 이해가 가능할 것 같아서 AS와 BGP를 먼저 알아본 후 Calico에 대해 알아보려고 한다. 들어가기 전에) 라우터란 무엇인가? 라우터는 컴퓨팅 디바이스와 네트워크를 다른 네트워크에 연결하는 네트워킹 디바이스로 주로 3가지 기본 기능을 수행한다. 1) 경로 결정 : 라우터는 source에서 target으로 이동하는 데이터의 경로를 결정한다. 지연, 용량 및 속도와 같은 네트워크 지표를 분석하여 최상의 경로를 찾으려고 시도한다. 2) 데이터 전달 : 라우터는 선택한 경로의 다음 디바이스로 데이터를 전달하여 최종적으로 대상에 도달하도록 합니다. 디바이스와 라우터는 동일한 네트.. 2022. 12. 3.
Kubernetes NodePort vs LoadBalancer vs Ingress 비교 목차 LIST 시작하기 전에 : ClusterIP - 쿠버네티스 내부에서만 Pod에 접근하기 appVersion: v1 kind: Service metadata: name: hostname-svc-clusterip spec: ports: - name: web-port port: 8080 # 쿠버 내부에서만 사용가능한 고유한 IP(Cluster IP)에 접근할 때 사용할 Port targetPort: 80 # 접근 대상 Pod들이 내부적으로 사용하고 있는 port를 입력해야 합니다. selector: app: webserver # 이 서비스가 어떤 라벨을 가지는 pod에 접근 가능한지 type: clusterIP ClusterIP 서비스 생성 결과 $ kubectl get svc NAME TYPE CLUS.. 2022. 11. 24.
IDC, UPS, DR 아키텍처 IDC (Internet Data Center[A] 또는 Internet Data Centre[B])) ? 서버라고 부르는 각종 컴퓨터들이 서비스의 주체가 되는 프로세스를 실행하고 있는 서버 하드웨어들이 IDC 내에 설치되어 있다. 화재의 원인 UPS (무정전 전원 공급 장치. 즉, 배터리) UPS 한 대당 N 개의 서버를 커버할 수 있습니다. UPS는 갑자기 전기가 나가는(전원이 나가는) 상태를 대비하여 사용합니다. 서버의 전원이 갑자기 off된다면 심각한 하드웨어적 손상을 얻을 수 있기 때문에 갑자기 전기가 나가게 되면 서버들과 통신하여 shut down 시간을 확보합니다. UPS에서 전원을 감시하고 있다가 문제가 생기면 UPS가 대응합니다. 서버에 shut down명령을 내리고 컴퓨터를 안전하게 종.. 2022. 10. 29.
Elasticsearch search_after vs scroll API(cursor) Elasticsearch의 pagination 검색 방법에 대한 고민 ES를 통한 데이터 조회에서 scroll API(cursor) 방식을 사용하다가 한 노드 당 500개 이상의 cursor가 생성되면, cursor들이 삭제되기 전까지 추가적인 cursor가 생성되지 않는 것을 발견했다. cursor의 live time을 20m으로 설정했기 때문에 누군가가 고의적으로 혹은 실수로 500개 이상의 요청을 날리고 cursor를 사용하지 않는다면 일시적으로 장애가 발생할 수 있는 상황이었다. 참고로, cursor를 발급받고 사용하면 문제가 되지 않는다. 사용함과 동시에 scroll index count값이 줄어든다. 이를 해결하기 위해 알아본 결과 ES에서는 7버전부터 scroll API(cursor) 대신 .. 2022. 10. 8.
Learning container from scratch 세미나 정리 해당 게시글의 모든 이미지 출처 https://devocean.sk.com/vlog/seminar/20220930_container.pdf Container 개념 Linux Namespace 종류 및 활용 컨테이너 간 리눅스 네트워크 개념 Docker 활용 Container Container 구조 위 그림에서 만약 Virtual Machine(VM)이라면 Container engine이 Hypervisor가 되고 Container 내에 OS가 추가된다. VM과 Container의 가장 큰 차이는 컨테이너는 OS를 따로 설치하지 않는다는 것이다. 참고) 컨테이너는 OS를 설치하지는 않지만 내부적으로 Root file system을 사용한다. 사실상 커널을 새롭게 쓴다는 의미보다는 file system 사.. 2022. 10. 7.
반응형