본문 바로가기

전체 글127

Git 명령어 기본부터 심화까지 목차 LIST Git은 소스코드 버전 관리 시스템이며, Git으로 관리하는 프로젝트를 올려둘 수 있는 Git 호스팅 사이트 중 하나가 GitHub입니다. GitHub 외에도 GitLab, BitBucket 등 다양하게 있습니다. Git 시작하기 용어 정리 용어 설명 워킹 트리 (Working tree) 워킹트리, 워킹 디렉토리, 작업 디렉토리, 작업 폴더 모두 같은 의미 공식문서에서는 커밋을 체크아웃하면 생성되는 파일과 디렉토리로 정의하며, 정확하게는 작업 폴더에서 [.git]폴더인 로컬저장소를 뺀 나머지 부분 로컬저장소 (Local repository) git init으로 생성되는 [.git] 폴더로 커밋, 스테이지가 이 폴더에 저장됨 원격저장소 (remote repository) 로컬 저장소를 업로드.. 2023. 4. 4.
Druid flatten spec 공식 문서 FlattenSpec 드루이드 중첩 열(nested columns) 특징의 대안으로, 그리고 nested input 포맷에 대해 중첩된 데이터를 평탄화하기 위해 'flattenSpec' 객체를 사용할 수 있습니다. Nested columns에서 중첩된(nested) 데이터를 수집하고 저장하는 방법에 대해 알아보겠습니다. Configure Field Description Default useFieldDiscovery true일때, 모든 루트 수준 필드를 'timestampSpec', 'transformSpec', 'dimensionSpec', 'metricsSpec' 에서 사용할 수 있는 필드로 전환합니다. false이면, 명시적으로 지정된 필드만 사용할 수 있습니다. true fields 명시적으로 지정.. 2023. 3. 26.
Druid segment retention rules | 세그먼트 보존 규칙 Using rules to drop and retain data 데이터 보존 정책은 어떤 데이터를 보존하고 어떤 데이터를 클러스터에서 삭제할지 지정합니다. -> Coordinator는 rules를 사용해서 히스토리컬에 어떤 세그먼트를 load/drop 할지 결정 코디네이터는 메타데이터 스토리지에서 set of rules를 로드합니다. 규칙(role)은 특정 데이터 소스에 한정해서 적용할 수도 있고, 기본 설정으로 구성할 수도 있습니다. 규칙은 순서대로 읽히므로 순서가 중요합니다. 코디네이터는 사용 가능한 모든 세그먼트를 순환하며 각 세그먼트를 가장 먼저 적용되는 규칙과 매핑합니다. 각 세그먼트는 하나의 규칙만 가질 수 있습니다. 크게 3개(load, drop, broadcase)의 룰이 있습니다. Ret.. 2023. 3. 26.
Python 비동기 Asyncio, coroutine 자세한 내용 비동기 프로그래밍이 필요한 이유 비동기 프로그래밍을 위해 Python 3.4 asyncio 라이브러리가 도입되었고, 3.5에서 async와 await 키워드가 도입되었습니다. 파이썬을 사용하다 보면 블로킹(blocking)을 경험했을 것입니다. 예를 들어 requests 라이브러리를 사용했을 때 requests.get(url)을 호출하면 프로그램이 멈칫하는 현상을 경험할 수 있는데 이는 블로킹으로 인한 결과입니다. 일회성 작업인 경우에는 괜찮을 수 있지만 동시에 10,000개의 URL을 호출한다면 requests를 적절히 호출하기란 쉽지 않습니다. 이는 대규모 병행성(동시성, concurrency)을 배우고 사용해야 하는 이유입니다. Asyncio 소개와 스레딩과의 차이점 Asyncio의 목표는 대기를 .. 2023. 3. 24.
Ansible Roles 사용 방법, 공식 문서 목차 Roles `Roles`을 사용하면 알려진 파일 구조를 기반으로 관련 변수, 파일, tasks, handlers 및 기타 Ansible artifacts를 자동으로 로드할 수 있습니다. content를 role로 그룹화하면, 쉽게 재사용할 수 있습니다. Role directory structure Ansible role은 8개의 주요 표준 디렉터리가 있는 정의된 데릭터리 구조가 있습니다. 적어도 각 역할에 표준 디렉터리 중 하나 이상은 포함해야 합니다. Role에서 사용하지 않는 디렉터리는 생략이 가능합니다. # playbooks site.yml webservers.yml fooservers.yml roles/ common/ # this hierarchy represents a "role" task.. 2023. 3. 19.
Ansible Inventory와 variables 설정 방법 목차 LIST Ansible 공식 문서를 통해 Inventory에 대한 전반적인 내용과 variables 설정 방법까지 확인해보겠습니다. How to build your inventory Inventory basics: formats, hosts, and groups inventory 파일의 default는 hosts(.ini)입니다. * ini : initialization sample) mail.example.com [webservers] foo.example.com bar.example.com [dbservers] one.example.com two.example.com three.example.com Default groups inventory file에 그룹을 아무것도 지정하지 않아도, Ansi.. 2023. 3. 16.
Python Pandas - pivot() 목차 LIST Pivot 테이블이란? 테이블에서 두 개의 column을 각각 row index, column index로 사용하여 데이터를 재정렬 하는 것을 말합니다. 다시 말해, 피벗 테이블은 복잡한 데이터를 요약하고 분석하는데 유용한 테이블입니다. 이것은 마치 데이터를 회전시키거나 "피벗"하듯이 여러 데이터 축을 바탕으로 데이터를 재정렬하는 것을 통해 이해하기 쉬운 형태로 표시합니다. 예를 들어, 온라인 상점의 매출 데이터가 있다고 가정해보겠습니다. 이 데이터에는 "판매일", "상품", "지역", "매출액" 등의 정보가 포함되어 있을 수 있습니다. 이 데이터를 피벗 테이블로 만들면, "지역"을 행으로, "상품"을 열로, "매출액"을 값으로 설정할 수 있습니다. 이렇게 하면 각 지역에서 각 상품의 총 .. 2023. 2. 6.
IntelliJ와 Github 연동하기 목차 LIST Github 스터디를 위해 간단한 프로젝트를 생성하여 IntelliJ+Git 연동을 해보겠습니다. 1. IntelliJ 설치 링크 IntelliJ IDEA 다운로드: 우수성과 인체 공학이 담긴 JetBrains Java IDE www.jetbrains.com 2. IntelliJ + Github 계정 연동 IntelliJ IDEA → Settings Version Control → GitHub 탭에서 가운데 Add Count에서 Log In via GitHub...를 클릭합니다. Git 연동 페이지가 뜨고, 연동이 완료되면 아래와 같이 연동된 계정이 표시됩니다. 3. Git에서 생성한 New Respsitory와 연동 새롭게 생성한 Git Repository에서 URL을 clone 합니다... 2023. 2. 5.
Python pandas - DataFrame PDS 함수 색인(Indexing) DataFrame pds을 indexing 하기 위한 method로는 loc, iloc, at, iat 네 가지가 있습니다. 아래 예제를 통해 살펴보겠습니다. iloc, iat은 index를 사용해서 값을 가져오며 loc, at은 key, column명으로 값을 가져오는 것을 알 수 있습니다. - 하나씩 가져오기 - 한개의 column 가져오기 >> df.loc[:]['Age'] 11 45 12 36 13 21 Name: Age, dtype: int64 >> df['Age'] 11 45 12 36 13 21 Name: Age, dtype: int64 >> df.Age 11 45 12 36 13 21 Name: Age, dtype: int64 - 두 개 이상의 Column 가져오기 .. 2023. 1. 29.
반응형