1. 카산드라 설치
아파치 카산드라(Apache Cassandra)는 자유-오픈 소스 분산형 NoSQL 데이터베이스 관리 시스템의 하나로, 단일 장애점 없이 고성능을 제공하면서 수많은 서버 간의 대용량의 데이터를 관리하기 위해 설계되었다. 카산드라는 여러 데이터센터에 걸쳐 클러스터를 지원하며 마스터리스(masterless) 비동기 레플리케이션을 통해 모든 클라이언트에 대한 낮은 레이턴시 운영을 허용한다.
카산드라는 또한 성능 면에서 높은 가치를 보인다. 2012년, NoSQL 시스템을 연구하는 토론토 대학교 연구원들은 "확장성 면에서 실험 가운데 분명한 승자가 있다. 카산드라는 모든 실험의 최대 노드 수에서 가장 높은 처리량을 성취한다."고 결론을 내렸으며 그럼에도 불구하고 "높은 쓰기 및 읽기 레이턴시의 대가가 있다"고 이야기하였다.
1.1. 설치환경
- Windows 10 Home
- i7-8700 3.2GHz
- 16 GB
- x64
1.2. JDK 8 설치
- Cassandra 3.0 and later require Java 8u40 or later. ( 18.10.11 현재 )
- 카산드라는 JDK 11에서 동작하지 않음(깔았다가 지움). 일단 JDK 8 을 설치 (8u181 버전 설치)
- https://www.oracle.com/technetwork/java/javase/downloads/index.html
- 다운로드 받은 파일 (jdk-8u181-windows-x64.exe 약 202MB)
- 기본 값 경로( C:\Program Files\Java\jdk1.8.0_181\ ) 로 설치
버전정보 확인
C:\Users\USER>java -version
java version "11" 2018-09-25
Java(TM) SE Runtime Environment 18.9 (build 11+28)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11+28, mixed mode)
1.3. CASANDRA 설치
- http://cassandra.apache.org/download/
- http://www.apache.org/dyn/closer.lua/cassandra/3.11.3/apache-cassandra-3.11.3-bin.tar.gz
- 다운로드 받은 파일 (apache-cassandra-3.11.3-bin.tar.gz 약 35.5MB) 압축해제 (apache-cassandra-3.11.3)
- C:\dev 폴더 아래로 이동
- 환경변수 - 시스템변수 - Path에 bin 폴더 (C:\dev\apache-cassandra-3.11.3\bin) 추가
1.4 Python2 설치
- https://www.python.org/downloads/windows/
- 다운로드 받은 파일 Windows x86-64 MSI installer (python-2.7.15.amd64.msi 약 19.3 MB)
- Install launcher for all users 눌러 설치
- 설치 경로 ( C:\Python27\ )
- 다음화면에서 Add python.exe to Path 눌러 path 에 추가
- cqlsh : cassandra command line interface 툴 실행 시 python 필요
[경고] python3.7 설치 시 아래와 같은 문법 오류를 발생시킴, python2.x 설치 필요
File "C:\dev\apache-cassandra-3.11.3\bin\\cqlsh.py", line 146
except ImportError, e:
2. 실행
2.1. 파워쉘 권한변경
- 관리자 권한으로 powershell 실행
- Get-ExecutionPolicy : 실행 권한 RemoteSigned 여부 확인
- Set-ExecutionPolicy : 실행 권한 RemoteSigned 아닌 경우 RemoteSigned 로 변경처리
PS C:\Users\USER> Get-ExecutionPolicy
Restricted
PS C:\Users\USER> Set-ExecutionPolicy RemoteSigned
실행 규칙 변경
실행 정책은 신뢰하지 않는 스크립트로부터 사용자를 보호합니다. 실행 정책을 변경하면 about_Execution_Policies 도움말
항목(https://go.microsoft.com/fwlink/?LinkID=135170)에 설명된 보안 위험에 노출될 수 있습니다. 실행 정책을
변경하시겠습니까?
[Y] 예(Y) [A] 모두 예(A) [N] 아니요(N) [L] 모두 아니요(L) [S] 일시 중단(S) [?] 도움말 (기본값은 "N"): Y
2.2. CASANDRA 실행
- 관리자 권한으로 powershell 실행
- 환경변수 - 시스템변수 JAVA_HOME ( C:\Program Files\Java\jdk1.8.0_181\ ) 추가
- exe 또는 msi 버전으로 설치한 경우에는 JAVA_HOME이 자동으로 설정됨
- 혹시나
JAVA_HOME environment variable must be set!
와 같은 메시지를 보면 환경변수 추가 설정 - cassandra -f 실행
- 맨처음 실행 시
Created default superuser role 'cassandra'
부분을 확인하면 정상적으로 CASANDRA 서버가 구동 된 것임
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.deserializeLargeSubset (Lorg/apache/cassandra/io/util/DataInputPlus;Lorg/apache/cassandra/db/Columns;I)Lorg/apache/cassandra/db/Columns;
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.serializeLargeSubset (Ljava/util/Collection;ILorg/apache/cassandra/db/Columns;ILorg/apache/cassandra/io/util/DataOutputPlus;)V
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.serializeLargeSubsetSize (Ljava/util/Collection;ILorg/apache/cassandra/db/Columns;I)I
CompilerOracle: dontinline org/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager.advanceAllocatingFrom (Lorg/apache/cassandra/db/commitlog/CommitLogSegment;)V
CompilerOracle: dontinline org/apache/cassandra/db/transform/BaseIterator.tryGetMoreContents ()Z
CompilerOracle: dontinline org/apache/cassandra/db/transform/StoppingTransformation.stop ()V
CompilerOracle: dontinline org/apache/cassandra/db/transform/StoppingTransformation.stopInPartition ()V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.doFlush (I)V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.writeExcessSlow ()V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.writeSlow (JI)V
CompilerOracle: dontinline org/apache/cassandra/io/util/RebufferingInputStream.readPrimitiveSlowly (I)J
...
INFO [main] 2018-10-11 14:06:20,566 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...
INFO [main] 2018-10-11 14:06:20,650 CassandraDaemon.java:529 - Not starting RPC server as requested. Use JMX (StorageService->startRPCServer()) or nodetool (enablethrift) to start it
INFO [OptionalTasks:1] 2018-10-11 14:06:30,460 CassandraRoleManager.java:356 - Created default superuser role 'cassandra'
2.3. CASANDRA 실행 WARNNING
일단 넘어가기로 함. google에서 대충 검색해봤지만 별 소득이 없었음. 나중에 그냥 linux로 설치 해야 될듯
- Automatic page file configuration detected.
WARNING! Automatic page file configuration detected.
It is recommended that you disable swap when running Cassandra
for performance and stability reasons.
- Detected a power profile other than High Performance.
WARNING! Detected a power profile other than High Performance.
Performance of this node will suffer.
Modify conf\cassandra.env.ps1 to suppress this warning.
3. 설정 정보
3.1 로그경로
- C:\dev\apache-cassandra-3.11.3\logs
4. cqlsh
cassandra 용 커맨드라인 인터페이스 (구 : cassandra-cli 와 동일)로 콘솔모드로 접근하여 다양한 업무를 수행할 수 있습니다.
4.1 실행
- https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlsh.html
- 코드셋 변경 : chcp 65001
- cqlsh.bat 실행
Active code page: 65001
PS C:\Users\USER> cqlsh.bat
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.3 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
4.1 실행 시 경고 문구
- 실행 시 언어 셋을 utf-8 로 바꾸라는 이야기
- chcp 65001 실행 후 cqlsh 실행
WARNING: console codepage must be set to cp65001 to support utf-8 encoding on Windows platforms.
If you experience encoding problems, change your console codepage with 'chcp 65001' before starting cqlsh.
- pyreadline 의존성이 누락되었다는 이야기
- pip 버전 업글 : python -m pip install --upgrade pip
- 의존성 설치 : pip install pyreadline
WARNING: pyreadline dependency missing. Install to enable tab completion.
맺음말
자바 11버전 깔았다가 지우고 8버전 설치, 파이썬도 3깔았다가 다시 2버전 설치 ... 쉽지않아 쉽지않아 ㅋ
Sponsored ( Powered by dclick )
DCLICK: An Incentivized Ad platform by Proof of Click - 스팀 기반 애드센스를 소개합니다.
안녕하세요 스티미언 여러분. 오늘 여러분께 스팀 블록체인 기반 광고 플랫폼 DCLICK을 소개...
이 글은 스팀 기반 광고 플랫폼
dclick 에 의해 작성 되었습니다.
디클릭 클릭 함께 응원합니당~!
개발 환경 셋업 및 설정 글
정리해주셔 감사합니다 ^^
Posted using Partiko Android
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
예압 !
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
카산드라? 출산드라는 들어봤는데... ㅋㅋ
봐도 뭘하는건지 하나도 모르겠네요!!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
출산드라 ~ 살아 살아 내 살들아 ~
저도 잘 몰라서 기록을 남기는 것인지라 ... DB는 mongoDB가 좋은데 ㅋㅋ
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
카산드라로 무엇을 할 수 있는건지는 다음에 또 알려주실거죠? ㅎ
모르는게 참 많은 IT세상 신기합니다~
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
안알려 주길 바랍니다 ㅜㅜ 배워야 될 것들이 넘 많아서 헉헉 거려서 ...
일단은 오늘의 한 일 기록용 ㅋㅋ
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
카산드라~~ 네이밍 좋네요.ㅋㅋ
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit