couchdb?

문서 기반 데이터베이스

 

기능

- web UI 제공
- automatic conflict detection
- 자동 복제로 서버간 동기화
- 실시간 변경 감지

 

특징

- master-master
- NoSQL
- Document 단위로 저장
- 얼랭을 언어로 사용
- JSON은 데이터 표현에 사용되고, 자바스크립트는 쿼리에 사용

 

상세내용

1) 읽기는 절대로 잠금이 걸리지 않으므로, 다른 쓰기나 읽기 때문에 기다려야 할 필요가 없다.
2) 모든 업데이트는 새로운 시퀀스 번호를 할당받는다 시퀀스 값은 데이터베이스의 변경 사항을 추적할 때 사용된다
3) 저장되거나 삭제될 때에도 동시에 업데이트가 가능
4) 수정이나 삭제가 발생해도 계속 파일 끝에 추가만 하므로 낭비되는 공간이 많이 발생

 

참고자료

https://docs.couchdb.org/en/stable/intro/index.html

 

1. Introduction — Apache CouchDB® 3.3 Documentation

© Copyright 2023, Apache Software Foundation. CouchDB® is a registered trademark of the Apache Software Foundation. Revision 97014f1d.

docs.couchdb.org

https://dataonair.or.kr/db-tech-reference/d-lounge/technical-data/?mod=document&uid=234919 

 

얼랭으로 구현된 문서 기반 분산 데이터베이스, CouchDB

얼랭으로 구현된 문서 기반 분산 데이터베이스, CouchDB 얼랭의 분산 처리 능력을 데이터베이스로 옮겨온 CouchDB에 대해 살펴본다. CouchDB는 자연스러운 양방향 복제를 밑받침 하는 버전 컨트롤 모

dataonair.or.kr

 

'IT' 카테고리의 다른 글

apache solr(솔라)  (0) 2023.07.14
KeyCloak(키클락)  (0) 2023.07.13
DataHub(데이터허브) of Linkedin  (0) 2023.07.12
Apahce Atlas(아틀라스)  (0) 2023.07.11
Apache Ranger[레인저]  (0) 2023.07.10

 

solr?

Apache Lucene 라이브러리 기반의 검색엔진

 

특징

- 빠른 검색과 데이터처리
- 키-값 저장소 및 트랙잭션 지원
- 문서기반 Nosql 데이터베이스로도 사용 가능

 

기능

full-text 검색, 패싯(facet) 검색, 편리한 모니터링, 동적 클러스터링, 데이터베이스 통합, 문서 핸들링

 

패싯이란

수많은 제품 중에서 가격, 사이즈, 색상, 브랜드, 카테고리, 고객 리뷰 등 다양한 옵션으로 제품을 필터링할 수 있는 기능을 의미

 

solr vs elasticsearch

정적 데이터를 처리하는 것에는 solr가 유리, elasticsearch는 시계열 데이터, 로그 분석 등이 적합

 

 

참고자료

https://velog.io/@nooyji/Apache-Solr

 

[Apache Solr] Solr 검색엔진이란 ?

Solr 검색엔진이란 ?Solr 은 오픈소스 기반의 검색 플랫폼이다. 아파치 Lucene 프로젝트에서 파생되었으며, 자바언어로 작성되었다. 주요 특징은 full-text 검색, 조회 수에 따른 하이라이팅, 패싯 검색

velog.io

https://sematext.com/guides/solr/

 

Apache Solr Tutorial: What Is, How It Works & What Is It Used For - Sematext

Apache Solr: Find out how this open-source platform can power up the most complex search & analytics applications for websites, databases & files! Examples.

sematext.com

https://sematext.com/blog/solr-vs-elasticsearch-differences/

 

Solr vs Elasticsearch: Performance Differences & More - Sematext

How to decide between Solr vs Elasticsearch: Which one performs best, is faster, scales better & is easier to manage? Which one is best for you? Find out!

sematext.com

https://daily-3.tistory.com/entry/SEO-%EA%B2%80%EC%83%89%EC%97%94%EC%A7%84%EC%B5%9C%EC%A0%81%ED%99%94-%EC%9C%84%ED%95%9C-%ED%8C%A8%EC%8B%AF%EB%82%B4%EB%B9%84%EA%B2%8C%EC%9D%B4%EC%85%98

 

SEO(검색엔진최적화)를 위한 패싯 내비게이션(faceted navigation)

패싯 내비게이션(faceted navigation)이란? 패싯 서치(faceted Search)라고도 불리며 웹사이트의 내비게이션 종류의 하나이다. 이런 흔히 이커머스 웹사이트를 방문해 본 경험이 있다면 한 번쯤은 사용해

daily-3.tistory.com

 

'IT' 카테고리의 다른 글

Apache CouchDB(카우치디비)  (0) 2023.07.15
KeyCloak(키클락)  (0) 2023.07.13
DataHub(데이터허브) of Linkedin  (0) 2023.07.12
Apahce Atlas(아틀라스)  (0) 2023.07.11
Apache Ranger[레인저]  (0) 2023.07.10

 

KeyCloak?

RedHat 에서 만든 국제적인 인증, 인가 표준(OIDC, SAML, OAuth 2.0 등) 을 모두 제공하는 오픈 소스

 

OIDC(OpenID)?

Google아이디 등으로 유튜브, 게임등을 로그인하는 개방형 표준 사용자 인증으로, IdP (Identity Provider)와 RP (Relying Party)로 나뉜다

 

SAML?

IdP에 로그인한 후 자격 증명을 다시 입력하지 않고도, 다른 서비스에 로그인 없이 할 수 있는 인증 방법

 

OAuth 2.0?

프로그램에게 리소스 소유자를 대신하여 리소스 서버에서 제공하는 자원에 대한 접근 권한(토큰)을 위임하는 방식을 제공

 

OIDC vs OAuth 2.0

Oauth 2.0의 확장 인증 프로토콜로, 인증 (본인 증명)에 초점, OAuth 2.0는 데이터에 대한 액세스 권한 부여에 초점

 

관련 소프트웨어 및 용어

LDAP, Kerberos, SSO

 

인증 vs 인가

- 인증(Authentication) : 자격 증명 확인
- 인가(Authorization) : 권한 허가/거부

 

키클락 서버 만들기(예제)

https://velog.io/@freejia/keycloak-%EC%84%9C%EB%B2%84-%EB%A7%8C%EB%93%A4%EA%B8%B0

 

keycloak 서버 만들기

환경 macOS BigSurjava11 레드햇이 만든 SSO 오픈소스 인증과 인가표준(SAML, OAuth 2.0 등)을 제공한다. 키클락 공식 홈페이지에서 keycloak.zip을 다운로드 받는다. 압축을 풀면 디렉토리 구조는 아래와 같다

velog.io

 

참고자료 

https://alice-secreta.tistory.com/28

 

KeyCloak 설치 & 정리

해당 포스트에서는, KeyCloak 에 대한 전반적인 설명 & 외부 DB(본인의 DB) 연결 방법에 대해 정리했다. KeyCloak이란? - 국제적인 인증, 인가 표준(OIDC, SAML, OAuth 2.0 등) 을 모두 제공하는 오픈 소스로, Kub

alice-secreta.tistory.com

https://hudi.blog/open-id/

 

OpenID(OIDC) 개념과 동작원리

등장배경 이전에는 사용자 데이터를 서비스에서 직접 관리하는 경우가 대다수였다. 하지만 해킹, 피싱등으로 인한 개인정보 유출 사건이 끊임없이 발생하자, 서비스에서 직접 사용자 데이터를

hudi.blog

https://www.okta.com/kr/identity-101/whats-the-difference-between-oauth-openid-connect-and-saml/

 

OAuth, OpenID Connect, SAML의 특징 및 차이점 | Okta Identity Korea

OAuth 2.0과 OpenID Connect, SAML은 각각 페더레이션 프로세스를 구조화하기 때문에 이 세 가지 표준을 구분하는 것은 쉽지 않습니다. 그렇다면, 지금 바로 세 가지 표준의 의미와 차이점, 그리고 기업

www.okta.com

 

'IT' 카테고리의 다른 글

Apache CouchDB(카우치디비)  (0) 2023.07.15
apache solr(솔라)  (0) 2023.07.14
DataHub(데이터허브) of Linkedin  (0) 2023.07.12
Apahce Atlas(아틀라스)  (0) 2023.07.11
Apache Ranger[레인저]  (0) 2023.07.10

 

DataHub?

자산 데이터의 이해 및 관리를 위한 메타데이터 검색 및 관리 도구

데이타 카탈로그?

조직이 가지고 있는 데이터를 체계화하여 정리한 내용(비유하자면 도서관에서 책을 어디에, 어떻게, 설명 등을 정리한 내용과 비슷하다)

데이터 카탈로그가 왜 중요한지?

현재 보유하고 있는 데이텉의 종류, 데이터를 pull/push 하는 사람, 데이터의 용도 및 보호 방법에 대해 이해하고 있어야, 데이터를 사용하는 부분에 있어서 시간 및 비용이 절감된다. 또한 데이터 카탈로그가 관리가 되지않으면 품질, 신뢰성에도 영향을 미칠 수 있다.

메타데이터란?

데이터가 어떤 목적을 가지고 만들어졌는지 설명해주는 데이터

기능

- Search and Discovery : end to end 데이터 계보(Lineage)로 플랫폼 간의 데이터 추적도 가능
- Modern Data Governance : 간편한 엔티티 관리자, 소유자 등에 대한 관리 조직 또는 사람 설정, Domain, Glossary Terms, Tags를 통한 세밀한 분류 가능
- DataHub Administration : 조직, 사람 그리고 데이터에 대한 권한(ownership, tags, documentation 등의 단위로 권한 부여 가능)

 

참고자료

https://engineering.linkedin.com/blog/2020/datahub-popular-metadata-architectures-explained

 

DataHub: Popular metadata architectures explained

When I started my journey at LinkedIn ten years ago, the company was just beginning to experience extreme growth in the volume, variety, and velocity of our data. Over the next few years, my colleagues and I in LinkedIn’s data infrastructure team built o

engineering.linkedin.com

https://datahubproject.io/docs/introduction/

 

Introduction | DataHub

DataHub is a data discovery application built on an extensible metadata platform that helps you tame the complexity of diverse data ecosystems.

datahubproject.io

https://www.oracle.com/big-data/data-catalog/what-is-a-data-catalog/#:~:text=Simply%20put%2C%20a%20data%20catalog,support%20data%20discovery%20and%20governance

 

What is a Data Catalog?

Manage your data better with data catalogs. Learn how data catalogs help data professionals collect, organize, access, and enrich metadata to support data discovery and governance.

www.oracle.com

 

'IT' 카테고리의 다른 글

apache solr(솔라)  (0) 2023.07.14
KeyCloak(키클락)  (0) 2023.07.13
Apahce Atlas(아틀라스)  (0) 2023.07.11
Apache Ranger[레인저]  (0) 2023.07.10
DBT(디비티) : Data Build Tool  (0) 2023.07.09

 

Apache Atlas?

메타데이터를 관리하기 위해 사용하는 애플리케이션

 

기능 및 특징

- UI 제공
- 테이블 및 컬럼에 권한 부여
- 접근 제한 
- 마스킹처리
- 메타데이터 간 관계를 Lineage로 자동 생성하여 제공

구조

메타 정보 저장은 Hbase, 검색엔진은 Solr or ES, 시각화는 JanusGraph 사용

관련 용어

- 데이터 거버넌스() :  데이터의 보안, 개인정보 보호, 정확성, 가용성, 사용성을 보장하기 위해 수행하는 모든 작업(데이터 관리 정책)
- 데이터 계보(Lineage) : 시간 경과에 따른 데이터 흐름을 추적하는 프로세스로, 데이터의 출처, 데이터에 일어난 변화, 데이터 파이프라인 내에서의 최종 목적지에 대한 자세한 정보를 제공

 

지원 서비스

hive, hbase, ranger, sqoop, storm, kafka, falcon 등

 

 

참고자료

http://www.kwangsiklee.com/2018/05/apache-atlas%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80/

 

Apache Atlas란 무엇인가?

개요 Apache Atlas는 데이터 표준 및 계보(Data Lineage)를 관리할 수 있는 플랫폼이다. 이 플랫폼을 도입하기 위해 찾아보고 소스를 분석해본 내용을 기반으로 플랫폼에 대한 오버뷰를 정리해둔다. 플

www.kwangsiklee.com

https://www.ibm.com/kr-ko/topics/data-lineage
https://atlas.apache.org/#/

 

Apache Atlas – Data Governance and Metadata framework for Hadoop

 

atlas.apache.org

 

'IT' 카테고리의 다른 글

KeyCloak(키클락)  (0) 2023.07.13
DataHub(데이터허브) of Linkedin  (0) 2023.07.12
Apache Ranger[레인저]  (0) 2023.07.10
DBT(디비티) : Data Build Tool  (0) 2023.07.09
apache druid(드루이드)  (0) 2023.07.08

 

Apache Ranger?

빅데이터 서비스에 대한 보안 정책 정의, 권한 관리 

 

연관 서비스

HDFS, hive, hbase, sotrm, knox, solr, kafka, nifi, yarn 등

 

 

구조

- Ranger UserGroup Sync : AD, LDAP, OS 계정 동기화 데몬
- Ranger Policy Server : 정책 생성, 저장 및 관리
- Ranger Administration Portal : 유저, 그룹, 권한 등을 설정하는 웹 UI
- Ranger Plugin : Ranger Server에 정의된 권한 부여 정책 기준으로 해당 서비스에 사용자 액세스를 검증하는 역할

 

 

기능 

- Audit을 통한 하둡 컴포넌트 접근 정보 기록 및 확인
- 사용자, 그룹, Role 단위 별로 서비스에 대한 접근 권한, 데이터에 대한 접근 권한 설정

 

 

참고자료

https://ranger.apache.org/

 

Apache Ranger – Introduction

Apache Ranger™ is a framework to enable, monitor and manage comprehensive data security across the Hadoop platform. The vision with Ranger is to provide comprehensive security across the Apache Hadoop ecosystem. With the advent of Apache YARN, the Hadoop

ranger.apache.org

https://kr.cloudera.com/products/open-source/apache-hadoop/apache-ranger.html

 

Apache Ranger | Cloudera

Hadoop 클러스터 Apache™ Falcon의 데이터 수명 주기를 관리하는 프레임워크는 Hadoop 데이터 복제와 관련된 엔터프라이즈 과제를 해결합니다.

kr.cloudera.com

https://heum-story.tistory.com/146

 

Apache Ranger 사용법

Ranger 각 기능들 어떻게 사용하는지 확인해보겠습니다. Ranger란? 하둡 전체 서비스에 대한 보안 정책을 적용할 수 있고 관리 및 운영할 수 있는 프레임워크입니다. 하둡의 보안관련 조치는 대부분

heum-story.tistory.com

https://docs.cloudera.com/HDPDocuments/HDP3/HDP-3.0.1/configuring-ranger-authe-with-unix-ldap-ad/content/ranger_ad_integration_ranger_usersync.html

 

Ranger Usersync

Reference information on Ranger usersync, when configuring Ranger AD integration. A vital part of the Ranger architecture is the ability to get users and groups from the corporate AD to use in policy definitions.Ranger usersync runs as separate daemon: It

docs.cloudera.com

https://docs.aws.amazon.com/ko_kr/emr/latest/ManagementGuide/emr-ranger-plugins.html

 

아파치 레인저 플러그인 - Amazon EMR

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

 

'IT' 카테고리의 다른 글

DataHub(데이터허브) of Linkedin  (0) 2023.07.12
Apahce Atlas(아틀라스)  (0) 2023.07.11
DBT(디비티) : Data Build Tool  (0) 2023.07.09
apache druid(드루이드)  (0) 2023.07.08
Ambari Uninstall  (0) 2023.07.04

 

Apache Atlas?

메타데이터를 관리하기 위해 사용하는 애플리케이션

기능 및 특징

- 웹 UI 제공
- 테이블 및 컬럼에 권한 부여
- 마스킹처리
- 메타데이터 간 관계를 Lineage로 자동 생성하여 제공

구조

메타 정보 저장은 Hbase, 검색엔진은 Solr or ES, 시각화는 JanusGraph 사용

관련 용어

- 데이터 거버넌스() :  데이터의 보안, 개인정보 보호, 정확성, 가용성, 사용성을 보장하기 위해 수행하는 모든 작업(데이터 관리 정책)
- 데이터 계보(Lineage) : 시간 경과에 따른 데이터 흐름을 추적하는 프로세스로, 데이터의 출처, 데이터에 일어난 변화, 데이터 파이프라인 내에서의 최종 목적지에 대한 자세한 정보를 제공

지원 서비스

hive, hbase, ranger, sqoop, storm, kafka, falcon 등

 

 

참고자료

http://www.kwangsiklee.com/2018/05/apache-atlas%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80/

 

Apache Atlas란 무엇인가?

개요 Apache Atlas는 데이터 표준 및 계보(Data Lineage)를 관리할 수 있는 플랫폼이다. 이 플랫폼을 도입하기 위해 찾아보고 소스를 분석해본 내용을 기반으로 플랫폼에 대한 오버뷰를 정리해둔다. 플

www.kwangsiklee.com

https://www.ibm.com/kr-ko/topics/data-lineage

 

데이터 계보란? | IBM

데이터 계보의 정의와 기업이 데이터 계보를 사용하여 비즈니스 인사이트를 개선하는 방법을 알아봅니다.

www.ibm.com

https://atlas.apache.org/#/

 

Apache Atlas – Data Governance and Metadata framework for Hadoop

 

atlas.apache.org

 

'IT' 카테고리의 다른 글

Apahce Atlas(아틀라스)  (0) 2023.07.11
Apache Ranger[레인저]  (0) 2023.07.10
apache druid(드루이드)  (0) 2023.07.08
Ambari Uninstall  (0) 2023.07.04
YUM  (0) 2023.07.03
druid 란

고성능, 실시간 분석 데이터베이스

특징

- OLAP(Online Analytical Processing)
- 데이터 검색에 특화, 적재된 데이터 업데이트, 조인 불가능
- Roaring Bitmaps, CONCISE(Compressed 'n' Composable Integer Set)를 사용하여 빠른 필터링
- 세그먼트(segment) 단위로 데이터를 인덱싱 후 저장

 

OLAP 란

사용자가 적재한 데이터를 다양한 방식(다차원)으로 적재하고 분석하도록 도와주는 시스템

 

Roaring Bitmaps?

대규모 데이터 집합에 대한 공간 효율적인 압축 방법,  비트맵(bitmap)을 사용하여 데이터를 저장

CONCISE?

CONCISE(Compressed 'n' Composable Integer Set)는 구간의 시작과 끝 값을 효율적으로 저장하고, 구간의 연속성과 겹치는 구간을 압축하여 더 작은 공간을 차지(구간 집합(interval sets)에 대한 공간 효율적인 데이터 구조)

구조

- Timstamp : 데이터를 입력 시간 또는 시간 컬럼 지정 입력
- Dimensions : 실제 컬럼 및 컬럼 데이터 slice
- Metrics : 집계된 컬럼으로 합산, 평균 등

궁금한 포인트

1. 적재 시 인덱싱하고, OLAP로 입력데이터에 추가적인 데이터까지 발생한다면, 적재 속도는 느리지 않을까???
-> Druid는 데이터 수집 시 데이터 요약을 선택할 수 있다.

정리

입력은 많지만 업데이트는 적은 환경, 시간 기반의 데이터를 관리할때에도 적합

 

참고자료 

https://blog.voidmainvoid.net/440

 

아파치 드루이드 소개 및 아키텍처

Apache Druid is a high performance real-time analytics database. 아파치 드루이드 소개 아파치 드루이드는 기존의 데이터 처리 및 쿼리에 대한 관념을 180도 바꿔주는 OLAP 데이터베이스 입니다. OLAP란 Online Analyti

blog.voidmainvoid.net

https://soniacomp.medium.com/%EB%93%9C%EB%A3%A8%EC%9D%B4%EB%93%9C-druid-f8eb2d737c66

 

드루이드 (Druid)

핵심 개념과 물리적인 구조, 드루이드와 다른 시스템(ES, Spark, Key-Value Storage)과의 차이점

soniacomp.medium.com

https://druid.apache.org/

 

Druid | Database for modern analytics applications

Ingested data is automatically columnarized, time indexed, dictionary encoded, bitmap indexed, and type-aware compressed

druid.apache.org

https://roaringbitmap.org/

 

Roaring Bitmaps

Portable There are freely available software libraries providing Roaring bitmaps in almost all the popular programming languages: There is a serialized format specification for interoperability between implementations.

roaringbitmap.org

https://arxiv.org/pdf/1004.0403.pdf

https://sunrise-min.tistory.com/entry/Druid

 

Apache Druid 정의, 구성요소, 아키텍처

목차 Druid란? Apache Druid is a high performance real-time analytics database. 대규모 데이터 세트에 대한 빠른 분석을 위해 설계된 실시간 분석 데이터베이스입니다. Druid는 실시간 수집, 빠른 쿼리 성능을 위해

sunrise-min.tistory.com

 

'IT' 카테고리의 다른 글

Apache Ranger[레인저]  (0) 2023.07.10
DBT(디비티) : Data Build Tool  (0) 2023.07.09
Ambari Uninstall  (0) 2023.07.04
YUM  (0) 2023.07.03
maven  (0) 2023.07.02

 

사전 작업

1. 실행중인 서비스 모두종료
2. ambari-agent 종료
3. ambari-server 종료

Ambari 서버

$ ambari-server stop
$ yum erase ambari-server

 

관련 파일 삭제

$ rm -rf /var/lib/ambari-server
$ rm -rf /var/run/ambari-server
$ rm -rf /usr/lib/ambari-server
$ rm -rf /etc/ambari-server
$ rm -rf /var/log/ambari-server
$ rm -rf /usr/lib/python2.6/site-packages/ambari*

 

 Ambari 에이전트

$ ambari-agent stop
$ yum erase ambari-agent

 

관련 파일 삭제

$ rm -rf /var/lib/ambari-agent
$ rm -rf /var/run/ambari-agent
$ rm -rf /usr/lib/amrbari-agent
$ rm -rf /etc/ambari-agent
$ rm -rf /var/log/ambari-agent
$ rm -rf /usr/lib/python2.6/site-packages/ambari*


참고자료

https://community.cloudera.com/t5/Support-Questions/How-to-Completely-Clean-Remove-or-Uninstall-Ambari-for-Fresh/td-p/95114

 

How to Completely Clean, Remove or Uninstall Ambari for Fresh Install

Sometimes when installing Ambari run repos are downloaded or there are maybe issues with python.

community.cloudera.com

 

'IT' 카테고리의 다른 글

DBT(디비티) : Data Build Tool  (0) 2023.07.09
apache druid(드루이드)  (0) 2023.07.08
YUM  (0) 2023.07.03
maven  (0) 2023.07.02
npm(Node Packaged Manager)  (0) 2023.07.01

 

폐쇄망 저장소(로컬저장소) 구성

1. 생성

$ createrepo 경로


2. 구성

파일 위치 : /etc/yum.repos.d/저장소이름.repo

- name : 저장소 이름 지정
- baseurl : 경로 지정 ex) file:///root/local-repo/CentOS-7
- gpgcheck : gpg key 사용 여부(0 or 1 아래와 동일)
- enabled : 저장소 사용 여부 (0=미사용, 1=사용)

저장소 우선 순위

로컬 저장소보다 기본 저장소를 우선적으로 탐색(최신 버전 및 안정화 된 패키지 제공의 이유로)


저장소 일시적으로 활성/비활성 하는 방법

1. 먼저 Repo-status 확인

$ yum repolist epel -v


Repo-status : enabled 또는 disabled

Repo-status : enabled

 

2. 활성 / 비활성

$ yum --enablerepo=리포지토리명
$ yum --disablerepo=리포지토리명

 

localinstall

설치할 RPM 파일을 가지고 있다면,

yum localinstall 파일명(rpm)

 을 통해 설치에 필요한 의존성 패키지들을 자동으로 설치해준다.

'IT' 카테고리의 다른 글

apache druid(드루이드)  (0) 2023.07.08
Ambari Uninstall  (0) 2023.07.04
maven  (0) 2023.07.02
npm(Node Packaged Manager)  (0) 2023.07.01
Zeppelin  (0) 2023.06.30

+ Recent posts