일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정리
- concurrency
- basic golang
- 그래프데이터베이스
- go best practices
- 고루틴
- 자격증
- token bucket
- neo4j성능
- GraphDB
- cypher쿼리
- Golang
- cypher
- Neo4j
- cypher 쿼리
- 엔터티
- arangodb
- cypher팁
- graph
- 중심성 측정
- 데이터모델링
- 프로그래밍
- n8n
- 쿼리프로파일링
- SQLD
- go
- apoc 라이브러리
- 커뮤니티 탐지
- 그래프 데이터베이스
- Database
- Today
- Total
목록2025/02 (30)
Jamie the programmer

Neo4j Community Edition은 오픈 소스 버전으로, 기본적인 그래프 데이터베이스 기능을 제공하지만, **Graph Data Science Library(GDS)**의 고급 알고리즘은 지원하지 않습니다. GDS 라이브러리의 고급 알고리즘을 사용하려면 Neo4j Enterprise Edition 또는 Neo4j AuraDS(클라우드 버전)가 필요합니다.그러나 Neo4j Community Edition에서도 Cypher 쿼리를 활용하여 일부 기본적인 그래프 알고리즘을 구현할 수 있습니다. 아래에서는 Community Edition에서 사용 가능한 알고리즘과 그 한계를 설명드리겠습니다.1. Neo4j Community Edition에서 지원하는 알고리즘Neo4j Community Edition은 ..

Neo4j는 그래프 알고리즘을 효율적으로 실행할 수 있도록 Neo4j Graph Data Science Library(GDS)를 제공합니다. 이 라이브러리는 다양한 그래프 알고리즘을 지원하며, 대규모 그래프 데이터에 대해 빠르고 확장 가능한 분석을 수행할 수 있습니다. 아래에서는 Neo4j가 사용하는 주요 그래프 알고리즘과 그 활용 사례를 설명드리겠습니다.1. Neo4j Graph Data Science Library(GDS)란?목적: 그래프 데이터에 대한 고급 분석 및 알고리즘 실행을 지원합니다.기능:노드(Node)와 관계(Relationship)로 구성된 그래프 데이터에 대한 분석.다양한 그래프 알고리즘 제공.대규모 데이터셋에 대한 확장성과 성능 최적화.사용 방법: Cypher 쿼리와 통합되어 쉽게 ..

Neo4j에서 CALL {} IN TRANSACTIONS OF X ROWS는 대량의 데이터를 처리할 때 사용되는 강력한 기능입니다. 이 구문은 큰 작업을 작은 트랜잭션으로 나누어 실행함으로써 메모리 사용량을 최적화하고, 성능을 향상시키며, 데이터 일관성을 유지합니다. 아래에서 이 기능에 대해 자세히 설명드리겠습니다.1. CALL {} IN TRANSACTIONS OF X ROWS의 역할대량 데이터 처리: 대량의 데이터를 처리할 때 한 번에 모든 데이터를 처리하면 메모리 부하가 커지고, 트랜잭션 시간이 길어져 데이터베이스 성능에 부정적인 영향을 미칠 수 있습니다. 이 기능은 큰 작업을 작은 트랜잭션 단위로 나누어 실행합니다.트랜잭션 분할: X ROWS는 각 트랜잭션에서 처리할 행(row)의 수를 지정합니다..

1.1. 소개1.1. 클라이언트-서버 모델이란?컴퓨팅에서 클라이언트는 사람이 컴퓨터 서버에 요청을 보내기 위해 상호 작용하는 웹 브라우저 또는 데스크톱 애플리케이션일 수 있습니다.서버는 일종의 가상 서버인 Amazon Elastic Cloud Compute(Amazon EC2)와 같은 서비스일 수 있습니다.예를 들어 클라이언트가 뉴스 기사, 온라인 게임 점수 또는 재미있는 동영상을 요청한다고 가정해 보십시오.서버는 이 요청의 세부 정보를 평가하고 클라이언트에 정보를 반환하여 요청을 이행합니다.1.2. 클라우드 컴퓨팅1.2.1. 클라우드 컴퓨팅 배포 모델클라우드 전략을 선택하는 기업은 필요한 클라우드 애플리케이션 구성 요소, 선호하는 리소스 관리 도구, 레거시 IT 인프라 요구 사항과 같은 요소를 고려해야..

RFC1918국제 인터넷 표준화 기구 (IETF)에서 공포한 표준으로, 지정된 IP주소를 사설망으로 규정하고 해당 IP주소들은 공인망으로 사용하지 않고 각 기업 내에서 사설망으로만 사용하는 것을 지키기로 한 원칙을 말한다.아래 주소까지가 RFC1918에서 규정한 사설 IP 주소의 범위이다.CIDR 표기IP 범위10.0.0.0/810.0.0.0~10.255.255.255172.16.0.0/12172.16.0.0~172.31.255.255192.168.0.0/16192.168.0.0~192.168.255.255서브넷의 CIDR 계산법IP주소를 표기할 때 /8, /16, /24, /32 같은 것을 보게 된다./8은 1.1.1.1이면 1로 시작하는 IP모두/16은 1.1.*.*이면 1.1로 시작하는 IP모두/2..

Neo4j는 그래프 데이터베이스로, 데이터의 구조(형상)가 동적으로 변경될 수 있습니다. 노드, 관계, 속성, 라벨 등을 추가하거나 삭제하는 명령어를 실행하면 데이터베이스의 상태가 바뀌게 됩니다. 이러한 변경 사항을 정확히 이해하고 모니터링하기 위해 apoc.meta.stats()를 사용하는 것이 매우 유용합니다.1. apoc.meta.stats()의 역할apoc.meta.stats()는 데이터베이스의 현재 상태를 통계적으로 요약해 줍니다. 주요 정보는 다음과 같습니다:노드 관련:전체 노드 수라벨(Label)별 노드 수관계 관련:전체 관계 수관계 유형(Relationship Type)별 관계 수속성 관련:속성의 분포 및 사용 빈도이 정보를 통해 데이터베이스의 전체적인 구조와 상태를 한눈에 파악할 수 있습..

데이터베이스 시스템은 전통적으로 엄격한 스키마(schema)를 요구했습니다. 스키마는 데이터의 구조를 미리 정의하고, 이를 준수하도록 강제합니다. 하지만 현대의 데이터 환경은 빠르게 변화하며, 복잡하고 유연한 데이터 모델링이 필요해졌습니다. 이러한 요구에 부응하여 Neo4j와 같은 그래프 데이터베이스는 Schemaless(스키마리스) 개념을 도입해 유연성과 확장성을 제공합니다. 이 글에서는 Neo4j와 Schemaless 개념을 중심으로, 그래프 데이터베이스의 장점과 활용 방안을 살펴보겠습니다.1. Neo4j란?Neo4j는 그래프 데이터베이스(Graph Database)의 대표적인 예시로, 데이터를 노드(Node)와 관계(Relationship)로 표현합니다. 전통적인 관계형 데이터베이스(RDBMS)와 ..

서버를 운영하다 보면 아웃바운드 포트를 어떻게 설정해야 할지 고민되는 순간이 옵니다. 보통 보안이 중요한 환경에서는 불필요한 포트는 닫아두는 것이 원칙이죠. 하지만 아웃바운드 포트를 무작정 열어둔다면 보안 위협과 포트 충돌 같은 문제가 발생할 수 있습니다. 그렇다면 왜 아웃바운드 포트를 임시 포트(Ephemeral Port)로 설정해야 하는지, 구체적으로 살펴보겠습니다. 🧐1. 해킹 위험 🚨아웃바운드 포트를 1~65535까지 무작정 열어둔 서버는 해킹 공격에 매우 취약해집니다. 특히 Reverse Connection 공격의 주요 대상이 될 수 있습니다.🔹 Reverse Connection 공격이란?보통 공격자가 내부 네트워크로 침투하려면 방화벽이 막아서기 때문에 어려움을 겪습니다. 하지만 아웃바운드..