분류 전체보기 131

Elastic Search - 기본 개념

rdbms와 비교 역색인 일반적인 색인의 목적 : ‘문서의 위치’에 대한 index를 만들어서 빠르게 그 문서에 접근하고자 하는 것 (책의 목차) 역색인 : ‘문서 내의 문자와 같은 내용물’의 맵핑 정보를 색인 (단어 별 색인 페이지) ES의 장단점 장점 오픈소스 검색엔진이다. 활발한 오픈소스 커뮤니티가 ES를 끊임없이 개선하고 발전시키고 있다. 전문검색 내용 전체를 색인해서 특정 단어가 포함된 문서를 검색할 수 있다. 기능별, 언어별 플러그인을 적용할 수 있다. 통계 분석 비정형 로그 데이터를 수집하여 통계 분석에 활용할 수 있다. Kibana를 연결하면 실시간으로 로그를 분석하고 시각화할 수 있다. Schemaless 정형화되지 않은 문서도 자동으로 색인하고 검색할 수 있다. RESTful API H..

ELK 2024.04.11

hdfs 휴지통

휴지통 기능이 설정되면 hdfs에서 삭제된 파일은 /user/유저명/.Trash 경로에 보관된다. 해당 경로의 파일들은 일정 시간이 되면 삭제한다. 관련파일 core-site.xml 관련설정 fs.trash.interval : 0이면 휴지통 기능 off, 휴지통 삭제하는 시간 설정 (분)tfs.trash.checkpoint.interval : 체크포인트를 확인하는 간격 fs.trash.interval 보다 같거나 작아야함. 휴지통 명령어 $ hadoop fs -expunge # 휴지통 비우기$ hadoop fs -rm -skipTrash /user/data/file # 휴지통 거치지 않고 바로 삭제

Hadoop 2024.04.11

Window 함수

UV집계 프로그램에서 쿼리 최적화를 하기 위해 사용. 관련되어 공부했던 내용 기록. window함수란?전체 테이블에서 분석하고 싶은 작은 범위를 정해 조회. window 함수 종류순위함수-rank : 동률이 있다면 다음숫자로 건너 뜀. ex) 1,2,3,3,5-dense_rank : 동률이 있어도 건너 뛰지 않음. ex) 1,2,2,3-row_number : 동률이 나오지 않는 rank함수(동률이더라도 먼저 조회된 순서로 rank가 매겨짐) ex)1,2,3,4,5 집계함수-sum, max, min, avg.count 행순서 함수-first_value, last_value, lag, lead 비율함수-ratio_to,report, percent_rank, cume_dist, ntile ex) ROW_NUM..

DB/Postgresql 2024.04.09

scala- SaveMode, StorageLevel

import org.apache.spark.sql.{SaveMode, SparkSession} import org.apache.spark.storage.StorageLevel ex) val spark_step1 = spark.sql("select yymmdd, col1, col2 from table1") spark_step1.createOrReplaceTempView("spark_step1") //쿼리 실행 결과 temp_view에 담아놓음.( spark memory에) spark_step1.persist(StorageLevel.MEMORY_ONLY_SER) // 로드된 데이터를 저장공간상에 올려두는 작업 spark_step1.write.mode(SaveMode.Append).jdbc(dburl, "ta..

Spark 2024.04.09

Spark-submit

[yarn-cluster spark-submit] [yarn-client spark-submit] 스파크는 spark-submit이라는 모든 클러스터 매니저 간에 작업을 제출해 주는 단일 툴을 제공한다. spark-submit이 옵션 없이 스크립트 이름 혹은 jar 파일 이름만으로 호출된다면 단순히 로컬로 스파크 프로그램을 실행한다. 이 프로그램을 스파크 단독 클러스터 매니저에게 제출하기 위해서는 단독 클러스터의 주소 및 실행을 원하는 익스큐터 프로세스의 크기 등 추가 정보를 제공해 주어야 한다. ex) bin/spark-submit --master spark://host:7077 --executor-memory 10g test.py --master 접속할 클러스터 매니저 --deploy-mode 드라이..

Spark 2024.04.09

SQL - Explain

explain이란? 쿼리문에 대해서 PostgreSQL 실행계획기가 만든 실행 계획을 보여준다. 어떤 테이블이 테이블 전체 순차 검색을 하는지, 인덱스 검색을 하는지를 보여준다. 또한 여러 테이블이 조인이 될 경우 그 각 테이블들의 조인 알고리즘은 어떤 것을 사용할 것인지를 보여준다. analyze (Explain 옵션) ANALYZE 옵션을 사용하면, 실제 해당 쿼리를 실행하고, 추청 비용과 함께 소요 비용, 소요 시간도 실제 처리된 각 계획 노드별 전체 로우 수도 보여준다. 이 옵션은 실행계획기가 추정하는 작업이 실 작업과 비교해서 얼마나 정확한지를 확인하는데 유용하게 사용된다. ※ analyze옵션 사용시 실제로 쿼리가 실행되기 때문에 운영DB라면 io상태 및 사이드 이펙트 점검 후 실행하여야 한다..

DB/Postgresql 2024.04.09

DB index

Index란? 데이터베이스 인덱스는 쓰기 작업 중 추가 공간과 성능 감소를 희생하여 데이터베이스 테이블에 대한 데이터 검색 작업 속도를 향상시키는 데이터 구조이다. 데이터베이스에서 인덱스를 사용하면 데이터베이스 엔진이 특정 검색 기준과 일치하는 테이블의 행을 빠르게 찾거나 특정 열을 기반으로 행을 효율적으로 정렬할 수 있다. ※별도의 인덱스 저장공간이 추가로 필요하기 때문에 최적화가 중요하다.

DB/Postgresql 2024.04.08

파티션 및 analyze

partition이란? 파티셔닝이란 논리적으로 존재하는 거대한 테이블을 쪼개서 물리적으로 작은 테이블 조각들로 만드는 것 partition 장점? 1. 인덱스의 크기 거대한 테이블에 특정 컬럼에 인덱스를 생성하는 경우가 많습니다. 문제는 이 테이블이 너무 크다보니, 인덱스도 덩달아 크기가 커집니다. 이러면 index scan 을 위해 메모리에 인덱스를 올릴 때 많은 메모리를 소비하게 됩니다. 하지만 파티션을 통해서 거대한 table 을 쪼개면 각각의 table 단위로 인덱스가 생성되서 인덱스의 크기가 작아집니다. 덕분에 index scan 을 위해서 index 정보를 메모리에 올리는 IO 작업이 줄어듭니다. 2. sequential scan 이미 알고 있겠지만, 어떤 테이블에서 조건절을 쓰더라도 대부분의..

DB/Postgresql 2024.04.08

NIFI 스케줄링

※초 분 시 요일 월 연도 - 각 값은 공백 값을 딜리미터로 가짐. * - 모든 값이 해당 필드에 유효함을 나타냄 ? - 특정 값이 지정되지 않았음을 나타냄. 이 특수 문자는 요일 및 연도 필드에 유효. L - 요일 값 중 하나에 L을 추가하여 해당 월의 마지막 날짜를 지정할 수 있다. ex) 1L은 해당 월의 마지막 일요일을 나타냄 ex) 매시각 10~50분에 10분 간격으로 실행됨. 정각에는 실행되지 않음. 0 10/20/30/40/50 * * * ? ex) 매일 15시 5분, 15시 30분 2번 실행. 0 5,30 15 * * ? ex) 매일 13시에 실행 0 0 13 * * ?

NIFI 2024.04.08