728x90

2024/10 26

[Snowflake] Snowflake SnowPro Core 시험 Cheat Sheet 5 (데이터 변환)

5. 데이터 변환5.1 표준 데이터로 작업하는 방법에 대해 설명하기Snowflake에서 표준 데이터는 정형화된 테이블 형태의 데이터를 의미하며, 다양한 내장 함수와 명령어를 통해 이러한 데이터를 변환하고 분석할 수 있습니다. Snowflake는 특히 대규모 데이터셋을 효과적으로 처리할 수 있는 기능을 제공하여 성능을 높이고 데이터 관리에 효율성을 더합니다.1) 추정 함수 (Approximation Functions) 설명: 추정 함수는 데이터 집합에 대해 근사 계산을 수행하여 성능을 최적화하는 기능을 제공합니다. 큰 데이터 집합에서는 정확한 결과를 계산하는 데 많은 리소스와 시간이 소요될 수 있습니다. Snowflake의 추정 함수는 이를 효율적으로 처리하기 위해 근사값을 계산합니다. 성능이 중요한 상황..

Snowflake 2024.10.29

[Snowflake] SnowPro Core 시험 Cheat Sheet 4(데이터 로드 및 언로드)

4. 데이터 로드 및 언로드Snowflake의 데이터 로드 및 언로드 작업은 데이터를 효율적으로 Snowflake에 저장하거나 외부로 전송하는 데 필수적인 과정입니다. 여기에는 다양한 기능과 명령어를 통해 데이터 로드 및 언로드 성능을 최적화하는 방법이 포함됩니다.4.1 데이터 로드 시 고려해야 할 개념과 수행해야 할 모범 사례 정의하기Snowflake에 데이터를 로드할 때는 스테이지, 파일 크기와 형식, 폴더 구조, 로드 방식 및 Snowpipe 설정 등을 고려하여 데이터를 효율적으로 관리해야 합니다.1) 스테이지 및 스테이지 유형Snowflake에서 데이터를 로드하기 위한 임시 스토리지인 스테이지에는 내부 스테이지와 외부 스테이지가 있으며, 각 유형에 따라 로드 방식이 달라집니다. 내부 스테이지 생성..

Snowflake 2024.10.29

[Snowflake] Snowflake SnowPro Core 시험 Cheat Sheet 3 (성능 개념)

3. 성능 개념3.1 Query Profile의 사용 방법에 대해 설명하기Query Profile은 Snowflake에서 쿼리 성능을 모니터링하고 분석하는 데 중요한 도구로, 쿼리의 실행 계획, 데이터 처리 방식, 캐시 사용 등을 확인하고 성능을 최적화할 수 있습니다. 이를 통해 성능 저하의 원인을 파악하고 개선점을 발견할 수 있습니다.1) 실행 계획 (Execution Plan)설명: Query Profile의 실행 계획은 쿼리의 각 단계별 작업 방식과 소요 시간을 시각적으로 보여주는 구조로, 쿼리가 수행되는 과정을 이해하는 데 중요한 정보입니다.기능: 실행 계획을 통해 특정 쿼리가 데이터에 접근하고 처리하는 방식을 파악하여, 쿼리 단계별 성능 문제를 진단할 수 있습니다. 실행 계획을 분석하여 데이터 ..

Snowflake 2024.10.29

[LLM] LangGraph를 활용한 RAG 시스템 구축 가이드

이 튜토리얼에서는 LangGraph와 LangChain을 사용해 RAG(Retrieval-Augmented Generation) 시스템을 구축하는 방법을 소개합니다. 이 시스템은 PDF 문서의 정보를 벡터 형태로 저장하고, 질문에 대한 답변을 생성하기 위해 관련된 정보를 검색한 후 LLM을 통해 응답을 생성합니다. 아래 코드와 설명을 통해 LangGraph의 활용 방식과 구현 과정을 살펴보겠습니다.LangGraph란 무엇인가?LangGraph는 데이터 처리나 시스템 구성에서 워크플로우를 그래프 형태로 표현하고 제어할 수 있도록 설계된 라이브러리입니다. 특히 LangGraph는 대화형 AI나 RAG 시스템과 같은 다단계 데이터 처리 시스템을 구축하는 데 적합합니다. 각 단계에서의 작업(노드)과 노드 간의 ..

LLM 2024.10.28

[Snowflake] SnowPro Core 시험 Cheat Sheet 2 (계정 액세스 및 보안)

2. 계정 액세스 및 보안2.1 보안 원칙에 대해 간략히 설명하기1) 네트워크 보안 및 정책개념: Snowflake는 클라우드 환경에서 외부 네트워크를 통한 데이터 접근을 제한하기 위해 네트워크 정책을 설정합니다. 네트워크 정책은 승인된 IP 주소에서만 Snowflake에 접근할 수 있도록 제어하는 보안 조치입니다.기능: 관리자는 특정 IP 주소나 IP 범위를 화이트리스트에 추가하여 접근을 제한할 수 있으며, 필요 시 IP 주소 기반으로 네트워크 정책을 강화할 수 있습니다. 네트워크 정책은 관리 콘솔에서 손쉽게 설정하고 수정할 수 있으며, ACCOUNTADMIN 또는 SECURITYADMIN 권한을 가진 사용자에 의해 주로 관리됩니다.장점: 이 설정을 통해 승인된 네트워크에서만 접근이 가능하도록 하여, ..

Snowflake 2024.10.27

[Snowflake] SnowPro Core 시험 Cheat Sheet 1 (Snowflake 데이터 클라우드의 기능 및 아키텍처)

1. Snowflake 데이터 클라우드의 기능 및 아키텍처1.1 Snowflake 데이터 클라우드의 주요 기능1) 탄력적 스토리지 (Elastic Storage)개념: Snowflake는 데이터와 컴퓨팅 자원을 분리하여 설계되었으며, 이를 통해 스토리지와 컴퓨팅을 독립적으로 확장할 수 있습니다. 이 구조는 데이터 저장 방식과 컴퓨팅 자원을 구분하여 유연성과 비용 효율성을 제공합니다.기능: 사용자가 저장하는 모든 데이터는 Snowflake의 내부 스토리지 계층에 압축 및 암호화된 형태로 저장됩니다. 데이터가 늘어날 때 자동으로 스토리지가 확장되고 필요에 따라 축소되므로, 스토리지 용량에 대해 걱정할 필요가 없습니다.장점: 무제한에 가까운 스토리지를 제공하여 정형, 반정형, 비정형 데이터까지 관리할 수 있습..

Snowflake 2024.10.26

[Snowflake] Snowflake Secure Data Sharing 이해 및 사용하기

Secure Data Sharing은 Snowflake에서 데이터베이스 오브젝트를 다른 Snowflake 계정과 공유할 수 있도록 하는 기능입니다. 데이터가 직접 전송되거나 복사되지 않아, 데이터 소비자의 저장 공간 요금에 영향을 주지 않고 공유할 수 있습니다. 컨슈머는 공유 데이터를 쿼리할 때 사용한 컴퓨팅 리소스에 대한 요금만 지불합니다.1. Secure Data Sharing 소개Secure Data Sharing으로 공유할 수 있는 데이터 오브젝트에는 데이터베이스, 테이블, 동적 테이블, 외부 테이블, Iceberg 테이블, 보안 뷰 등이 포함됩니다.2. Secure Data Sharing의 작동 방식Secure Data Sharing을 사용하면 데이터베이스를 복제하거나 전송할 필요 없이 공유할 ..

Snowflake 2024.10.25

[Snowflake] Snowflake Time Travel 이해 및 사용하기

Snowflake의 Time Travel 기능을 사용하면 일정 기간 내에 변경된 데이터나 삭제된 데이터에 접근할 수 있습니다. 이를 통해 과거 데이터 복원, 데이터 백업, 실수로 삭제된 데이터 복구 등이 가능합니다.1. Snowflake Time Travel 소개Time Travel은 Snowflake의 데이터 보호 수명 주기의 일부로, 다음과 같은 작업을 지원합니다:삭제된 테이블, 스키마, 데이터베이스 복원과거의 특정 시점에 대한 데이터 복제본 생성주요 시점의 데이터를 쿼리하여 변경 내역 분석2. Time Travel SQL 확장 및 구문Time Travel을 사용하려면 AT 및 BEFORE 구문을 활용합니다:SELECT * FROM my_table AT(TIMESTAMP => 'YYYY-MM-DD H..

Snowflake 2024.10.25

[Linux] nohup 명령어 사용법: 터미널을 종료해도 프로세스를 계속 실행하기

1. nohup이란?nohup은 "no hangup"의 줄임말로, 터미널 세션이 끊겨도 프로세스를 계속 실행할 수 있도록 도와주는 리눅스/유닉스 명령어입니다. 예를 들어, 서버에서 긴 시간이 걸리는 스크립트나 작업을 실행할 때, SSH 세션이 종료되더라도 작업을 중단 없이 계속 실행할 수 있습니다.2. nohup 기본 사용법기본적으로 nohup은 다음과 같은 형식으로 사용됩니다:nohup [실행할 명령어] & &는 명령어를 백그라운드에서 실행하기 위한 기호입니다. 이 기호를 사용하면 해당 프로세스가 백그라운드에서 계속 실행됩니다.예시:nohup python my_script.py & 이 명령은 my_script.py 스크립트를 백그라운드에서 실행하고, 터미널이 종료되더라도 계속 실행되도록 설정합니다.3...

Linux 2024.10.23

[Database] 인메모리 데이터베이스(In-Memory Database)란?

인메모리DB(In-Memory Database)란?인메모리 데이터베이스(In-Memory Database, IMDB)는 데이터를 디스크가 아닌 메모리(RAM)에 저장하여 매우 빠른 데이터 액세스를 제공하는 데이터베이스 시스템입니다. 전통적인 디스크 기반 데이터베이스와 달리, 인메모리DB는 데이터를 메모리에서 처리하기 때문에 디스크 I/O에 의한 지연이 거의 없고, 실시간으로 빠르게 데이터를 처리할 수 있습니다.인메모리DB의 동작 원리인메모리DB는 데이터베이스 엔진이 메모리를 주 저장소로 사용하여, 데이터를 메모리에 적재하고 처리합니다. 메모리는 디스크보다 속도가 훨씬 빠르기 때문에, 응답 시간이 중요한 애플리케이션에서 인메모리DB가 많이 사용됩니다.1. 데이터 저장 방식:RAM에 데이터 저장: 데이터를 ..

Database 2024.10.22
728x90