#SingleStoreDB_Self-Managed #SingleStore #Cloud-nativeDB #SingleStore_Install #Install_Docker
실시간데이터처리 Cloud-Native Singlestore DB 특징과 Linux 설치 가이드
SingleStoreDB 는?
SingleStoreDB 는 대규모 트랜잭션과 실시간 분석을 모두 처리하는 분산형 관계형 데이터베이스입니다 . 표준 쿼리(SQL)를 통해 데이터를 관리 할 수 있고, Kafka와 같은 Data Pipe-line을 구성 할수 있는 광범위한 드라이버와 애플리케이션 에코시스템을 제공 합니다.
SingleStoreDB의 SQL 엔진은 Mysql과 같아서 Mysql 문법을 그대로 이용할 수 있습니다. SQL, Procedure, Function 등이 호환 가능하므로 마이그레이션도 쉽습니다.
대용량 분산DB & OLAP와 OLTP 지원
SingleStore의 활용을 고려 할때 가장 큰 장점은 대량의 데이터를 저장하고 관리하기 위한 분산 스토리지 아키텍처입니다.
시스템 구성은 데이터 처리와 시스템 관리를 담당하는 메인노드와 데이터를 저장하고 연산하는 Leaf노드로 구성되어 대량의 데이터 저장을 위한 확장성과 빠른 응답 처리가 가능합니다.
SingleStoreDB의 SQL 엔진은 Mysql과 같아서 Mysql을 이용하는 문법을 그대로 이용 가능합니다.
기존 관리가 어려웠던 빅데이터 분석 플랫폼 환경보다 SQL을 통해 쉽게 데이터를 활용 할 수 있습니다.
그리고 오라클 (Oracle EXA)와 같은 하이엔드 DB대비 비용 경제성이 있고, 통합 DashBoard를 통해서 시스템 모니터링과 업그레이드 관리도 용이합니다.
또한 병렬 SQL처리로 대량의 데이터를 핸들링할 수 있어서 빅데이터, 인공지능 분석 업무에 활용하는 것이 효과적입니다.
Install on Linux with Docker
Singlestore 는 클라우드 설치와 Self-Managed 로 리눅스 환경에도 설치가 가능합니다.
도커 기반에서 설치되는 버전으로 리눅스에 설치하는 예시를 정리 해 보았습니다.
1. Docker 설치와 시스템 서비스 실행
Docker를 사용하면 컨테이너에서 SingleStore를 실행할 수 있습니다. 아래에서 설치할 Docker 버전을 선택하세요. Docker가 이미 설치되어 있으면 이 단계를 건너뛸 수 있습니다.
Docker 설치
# yum install docker
# yum install docker
docker-ce.x86_64 : The open-source application container engine
docker-ce-cli.x86_64 : The open-source application container engine
Docker 서비스 실행
# systemctl start docker
# systemctl start docker
[root@vm1 ~]# systemctl status docker
docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabl>
Active: active (running) since Sun 2023-10-01 09:09:29 EDT; 2min 44s ago
Docs: https://docs.docker.com
Main PID: 2631 (dockerd)
Tasks: 46
Memory: 814.6M
CGroup: /system.slice/docker.service
tq2631 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
tq3303 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 9000 -conta>
tq3307 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 9000 -container->
tq3319 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8080 -conta>
tq3325 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 8080 -container->
tq3337 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 3306 -conta>
mq3343 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 3306 -container->
2. 도커 구성
SingleStoreDB는 호스트 시스템에 최소 4개의 코어와 4GB RAM을 구성하는 것이 좋습니다. 구성 방법에 대한 Docker 문서를 읽어보세요 . Linux에서는 기본적으로 리소스 제약이 없으므로 기본 설정을 사용하는 것이 적합합니다.
3. 암호를 설정
아래에서 임의의 비밀번호를 생성했지만 이를 변경하는 것이 좋습니다. 이를 사용하여 클러스터에 로그인합니다. 기본 사용자는 root 로 설정됩니다 . 자동으로 생성된 고유 비밀번호는 변경하여 작성합니다.
4. 컨테이너 실행 및 시작
터미널 창을 열고 docker run명령을 사용하여 클러스터를 초기화합니다. 아래 코드 블록에 라이센스 키와 비밀번호를 추가했습니다. 컨테이너 관리 방법을 알아보세요.
# docker run -i --init \
--name singlestore-ciab \
-e LICENSE_KEY="SINGLESTORE_LICENSE_KEY" \
-e ROOT_PASSWORD="DEFAULT_ROOT_PASSWORD" \
-p 3306:3306 -p 8080:8080 \
singlestore/cluster-in-a-box
# docker start singlestore-ciab
5. 웹브라우저로 SingleStore Studio 연결
컨테이너에 설치된 Studio 인스턴스에 액세스하여 클러스터에 연결합니다. Studio 랜딩 페이지에서 "Localhost"라는 클러스터를 선택하고 아래 자격 증명을 사용하여 로그인 합니다.
Connection: http://localhost:8080
Username: root
Password: qJGhwyY7rulkkvHobpnbOwQGkGWdVnwL
6. SingleStore Studio 통합관리 화면
SingleStore Studio는 노드 관리와 모니터링 SQL 에디터, 모니터링 등의 통합 개발 환경입니다.
각 메뉴마다 설치 가이드를 제공하고 있어서 쉽게 노드를 추가하고 실행되는 SQL을 확인 할 수있습니다.
[참고]
1. SingleStore 8.X 소개 : https://docs.singlestore.com/db/v8.1/
2. SingleStoreDB Self-Managed 제품 - https://www.singlestore.com/resources/data-sheet-self-managed/
3. SingleStoreDB Cloud 제품 - https://www.singlestore.com/resources/data-sheet-singlestoredb-cloud/
'BigData' 카테고리의 다른 글
ChatGPT의 입력 처리 - Inputs: Chaining Prompts (90) | 2023.10.06 |
---|---|
ChatGPT의 올바른 언어 사용을 위한 질문 검증 - Inputs - Moderation (63) | 2023.10.06 |
ChatGPT를 이용한 질문 분류 - Input - Classification (86) | 2023.10.05 |
[SQLite] SQLite 설치하기 (0) | 2023.03.29 |
실시간 데이터 처리를 위한 Redpanda와 pinot 활용 (0) | 2022.12.22 |
실시간분석을 위한 OLAP 저장소 Apache pinot (0) | 2022.12.18 |
[초보] SQL 기초 모음 - DELETE(1) (0) | 2022.08.11 |