일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- RecommendationSystem
- twosum
- 키바나
- leetcode
- 스파크
- Django
- 해시
- programmers
- 엘라스틱서치
- 장고
- 알고리즘
- kibana
- Spark
- 리트코드
- Optimization
- Easy
- 깊이우선탐색
- dump
- ELK
- daspecialty
- elasticsearch
- Medium
- solution
- python
- AWS
- CentOS
- 프로그래머스
- 파이썬
- dfs
- Algorithm
- Today
- Total
목록------- DE ------- (23)
Archive
0. Overview Pyathena 는 AWS Athena를 위한 DB API를 제공하는 Package이다. 해당 글은 외부 서버(On-Prem 등) 에서 Python 내 Pyathena 패키지를 활용하여 Athena 에 쿼리를 날리는 과정을 보여준다. 1. VPC Endpoint 생성 외부 서버에서 Athena Query 를 실행시키기 위해서는 VPC Endpoint를 이용하게 된다. VPC Endpoint 는 VPC와 AWS 서비스들을 Private 하게 연결해주고 Client 는 VPC Endpoint 의 IP / DNS 등으로 접근할 수 있다.
EMR은 기존 Hadoop에서의 Computing 부분을 그대로 구현해 놓은 플랫폼이라고 이해하면 된다. (Storage는 HDFS를 사용할수도 있지만, 주로 Object Strorage인 S3과 함께 사용한다.) Cloud 특성에 맞게 Auto Scaling 도 지원하여 처리량에 따라 Instance를 유동적으로 Scale In/Out을 할 수 있으나, 흔히 떠올리는 Auto Scaling 처럼 바로바로 인스턴스가 할당되고 회수되진 않는다. 회수는 바로 해가지만 할당하는데는 8~20분 정도 걸리는 것 같다. EMR 내에는 Hadoop, JupyterHub, Hive, Zeppelin, Flink, Spark, Hue 등 다양한 분산처리 및 노트북 환경들을 제공한다. 아래와 같이 내가 필요한 서비스의 버..
Kibana Index애서 Timestamp 를 활용하기 위해선 아래와 같은 데이터 형식으로 맞추어 주어야 한다. "yyyy-MM-dd" ex) "2022-06-18" "yyyy-MM-dd'T'HH:mm:ss" ex) "2022-06-18'T'18:44:42" "yyyy-MM-dd'T'HH:mm+/-HH:mm" ex) "2022-06-18'T'18:44:42+09:00" "yyyy-MM-dd'T'HH:mm.ss.SSS'Z'" ex) "2022-06-18'T'18:44:420Z" 위와 같은 ISO8601 형식이 아니면 Text, Keyword, 혹은 Long타입으로 인식 되기도 한다. ES 적재 전 date format을 위의 형식으로 맞추어 주어야 Timestamp로 인식되며, Kibana Index P..
1. 노드 ( Node ) 클러스터를 구성하는 하나의 Instance이다 데이터를 저장하고 클러스터의 Indexing과 Searching 역할을 한다. 물리서버 하나에 노드 하나를 구성하는 것을 권장하지만, 단일 서버에 복수 노드를 설치하는 것도 가능하다 HW Spec을 고려하여 노드를 구성해야한다 1.1 Master Node 클러스터는 반드시 한개의 마스터 노드를 가진다 Cluster의 모든 상태 정보 관리 및 상태 모니터링 Master Eligible Node에 의해 선출된다 (사용자 지정 X) - 선출 방식은 과반 수 이상의 투표를 얻어야 한다 - Voting only Node를 통해 Master Eligible Node가 특정 이유에 의해 대량으로 장애가 발생했을 때 Availability 확보 ..
Kibana Maps를 통해 위치 정보가 포함되어 있는 데이터를 지도에 올리거나 다양한 형태의 지도를 레이어하여 볼 수 있는 지도 시각화 기능을 제공한다 Layer Vector Layer : 점, 선, 폴리곤 등을 표현할 수 있음 ex) Upload GeoJSON, Documents, Choropleth, Clusters and grids, Heat map, Point to point, EMS Boundaries, Configured GeoJSON https://maps.elastic.co/#file/world_countries 링크에서 Elasticsearch에서 기본적으로 제공하는 벡터 레이어를 확인할 수 있다 Upload geoJson을 통해 유저가 추가하고 싶은 Layer를 추가할 수 있다 Clu..
TOC 0. Overview 1. Index Pattern 2. Discover 2.1 Query 2.2 Filter 3. Visualization 3.1 Aggregation Based 3.1.1 Bar Chart 3.1.2 Heatmap 3.2 TSVB 4. DashBoard 5. Canvas 0. Overview Kibana는 ELK의 관리, 모니터링, 대시보드까지를 모두 커버하는 메인 Web UI이다. 1. Index Pattern Kibana에서 시각화를 하기 위해서는 반드시 Elasticsearch Index에 연결되어 있어야 한다. Index Pattern Data source를 elasticsearch 에서 가져오는 것으로, Index mapping 정보 등을 Kibana에서 사용하기 적합..
0. Overview 1. Metirc Aggregation 2. Bucket Aggregation 3. Combination of Aggregations 3.1 Bucket & Metric Aggregations 3.2 Sub Bucket Aggregations 3.3 Pipeline Aggregations 0. Overview Kibana가 집계 기능을 기반으로 동작하기 때문에 집계를 제대로 이해하는 것이 중요하다 메트릭 집계 / 버킷 집계로 나뉜다 Search API 요청에 aggs파라메타 이용하여 집계를 생성한다 1. Metirc Aggregation avg, min, max, sum, percentiles, stats, cardinality, geo-centroid 등 주로 통곗값 계산이 목적 ..
1. Overview 2. Index/Document/Mapping 2.1 Index 2.2 Document 2.3 Mapping 3. Index Template 3.1 Dynamic Template 4. Analyzer 4.1 Anlyzer 종류 4.2 Tokenizer 종류 4.3 Filter 종류 4.4 Custom Analyzer 1. Overview 모든 기능을 RestAPI 형태로 제공 (보통 kibana console에서 활용) get _cat API를 활용해 상태정보 조회 가능 (node, shard, template 등 상태정보 조회가능) 2. Index/Document/Mapping 2.1 Index Index : document를 저장하는 논리적 구분자 (RDB의 Table) - 하나..
0. Overview 1. Programming Model 1.1. Basic Concepts 1.2. Handling Event-time and Late Data 1.3. Fault Tolerance Semantic 0. Overview Structured Streaming 는 Spark SQL 엔진을 기반으로 Streaming 처리를 위해 사용되는 라이브러리로, fast, scalable, fault-tolerant, end-to-end exactly-once stream processing 을 제공한다 내부적으로는 Micro-batch 형태로 처리하며, Dataset/DataFrame API를 사용하여 streaming aggregations, event-time windows, stream-to-..
Direct Connect 주로 전용 회선을 통해 AWS 서비스들과 On-Premise 자원들을 연결하여 하이브리드 환경을 구축하고자 할 때 사용한다. 전용회선을 통한 통신이기 때문에 인터넷을 통하지 않고 사용할 수 있기 때문에 높은 보안성을 제공한다. 일관된 네트워크 성능을 제공하고 Transit Gateway를 통한 연결보다는 저렴하다는 특징이 있다. 구조를 자세히 보자면, Direct Connect Location 을 구축해 두고 On-Prem ~ Direct Connect Location 까지는 전용선을 통해 연결, Direct Connect Location ~ AWS 서비스들 까지는 VIF ( Virtual Interface ) 를 통해 연결하는 구조이다. Direct Connect Locati..