목록IT 기술/BigData (38)
안단테 안단테
16. 클라이언트 API 관리기능 - 2 5.2 HBaseAdmin 특정 컬럼패밀리를 가진 테이블을 생성하거나 테이블 존재 여부 확인 테이블 및 컬럼패밀리 정의를 변경하거나 삭제 기능 제공 5.2.1 기본기능 관리 API를 사용하려면 ㅁ너저 HBaseAdmin 클래스의 인스턴스를 생성해야됨 HBaseAdmin : 마스터 서버의 장애복구 상황등에 매끄럽게 대처하지 못하도록 짧게 사용해야됨 5.2.2 테이블 관련기능 먼저 테이블 생성 메소드로 테이블 생성 createTabelExample createTableWithRegionExample : getStartEndKeys()메소드를 사용하여 리전범위 추출 최초의 시작 키와 최후의 끝 키는 비어 있는데 이것은 HBase 관례 각 리전의 끝 키가 다음 리전 시작..
15. 클라이언트 API 관리기능 - 1 Hbase는 데이터를 조작하는 데 사용하는 클라이언트 API외에 데이터 정의를 위한 API도 마련 데이터 스키마를 정의하는데 필요한 클래스를 살펴보고, 이 클래스들을 이용하여 새로운 HBase 테이블을 생성하는 등의 ㅈ가업을 수행하는 API 알아볼것 5.1 스키마 정의 테이블을 생성할 대는 테이블 스키마 및 컬럼패밀리의스키마를 정의하는 일이 포함 5.1.1 테이블 HBase에 저장되는 모든 데이터는 궁극적으로 하나 이상의 테이블에 그룹화 테이블 : 그 안쪽의 모든 컬럼이 공유한느 특성을 제어 테이블 내에서 사용자가 특성을 정의할 만한 대상으로 컬럼패밀리를 들수 있음 Writable 및 파라미터 없는 생성자 -> 이 클래스들이 하둡의 Writable 인터페이스 구현..
14. 클라이언트 API: 고급기능 4.1 필터 HBase 의 필터는 테이블에 젖아된 데이터를 가지고 작업할 대 효율성을 배우 높여주는 강력한 기능 4.1.1. 필터소개 기본 API로 해결할 수 ㅇ벗는 로우, ㅋ러럼 키, ㄱ밧 등을 필털이한느 문제는 필터를 사용해 해결 모든 필터는 실제로 서버측에 적용되는데, 이를 조건절 푸시다운이라함 필터는 클라이언트에 전송할 데이터에 대해 갖아 효율적인 검색을 보장 1. 클라이언트에서 Filter를 가진 Scan객체 생성 2. Filter를 가진 Scan 객체의 직렬화된 데이터 전송 3. 리전서버에서 Filter를 가진 Scan 객체를 역직렬화 하여 내부 스캐너에서 사용 - 필터의 계층구조 최하단은 Filter 인터페이스 및 FilterBase추상 클래스 Filter..
13. HBase 클라이언트 API 3. 클라이언트 API : 기본 기능 Hbase에 접근하는 주요 클라이언트 인터페이슨느 org.apache.hadoop.hbase.client 패키지에 있는 HTable 클래스이다 데이터를 변경하는 로우 단위의 모든 작업은 원자성이 보장된다 -> 해당 작업이 수행되는 동안 다른 클라이언트나 스레드에서 동일한 로우에 읽기 또는 쓰기를 시도해도 아무런 문제가 없음 HTable 인스턴스는 한 번만 생성해라. 일반적으로 어플리케이션이 싲가할 때 인스턴스화 한다 스레드랑 HTable 인스턴스를 하나씩 생성해라 로우당 갱신 작업은 원자적으로 처리된다. 3.2 CRUD 기능 create, read, update, delete의미 HTable 클래스에서 제공 3.2.1 put 메소드..
12. HBase 요구사항 2.2 요구사항 2.2.1 하드웨어 요구사항 HBase는 범용하드웨어라 다양한 하드웨어에서 실행가능 Hadoop과 연계해야 네트워크 I/O를 현저히 줄이고 처리속도를 향상시킴 - 서버 Master (HDFS namenode, Mapreduce JobTracker, Hbase Master) -> 안전하게 slave (HDFS datanode, MapReduce TaskTracker, HBase RegionServer) -> 용량크게 - CPU 일반적으로 멀티코어 프로세서 사용 CPU에 관한 한 마스터와 슬레이브 장치의 사양은 동일하게 구성해야 한다 - 메모리 메모리를 필요한 만큼만 사용하기 램을 서버와 메모리 대역폭에 최적화할 것을 권장 - 디스크 데이터는 슬레이브 장치에 저장되..
11. HBase 소개 - 4 - 아파치 주키퍼 주키퍼는 디렉토리와 파일에 대한 팡리 시스템과 비슷한 접근 방식 제공(파일 해당 요소 znode) 분산 시스템에서 소유권을 협상하거나, 서비스를 등록하거나, 갱신 상황을 고나찰하는데 사용 모든 리전서버는 주키퍼에 자신의 임시노드 생성 마스터에서 가용한 서버를 차례로 가려내는데 사용 임시 노드는 서버 고장이나 망 분할을 감지하는 데에도 사용 임시노드는 주키퍼와 그 임시노드를 생성한 클라이언트 사이의 세션에 의존 세션에 고장이 보고되면 주키퍼에서 죽은 것으로 선언하고 이와 연관된 임시 노드 삭제 HBase는 마스터가 단 한대만 실행되도록 함 리전 검색을 위한 부트스트랩 위치를 저장하는 리전 서버의 등록 Zookeeper 없으면 HBase 사용 안됨 HBase는..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dKDdOS/btrX1RxBhiW/tUqu5VGmI9kacgIReiakFk/img.png)
10. HBase 소개 - 3 로우키로는 어떤 바이트 배열이든 사용할 수 있으며, 반드시 사람이 읽을 수 있어야 할 필요는 없다. - 컬럼패밀리 데이터를 의미적, 주제별로 분류 그룹화된 데이터에 압축이나 메모리 상주 같은 특정 기능을 적용 컬럼패밀리 안의 모든 컬럼은 HFile이라는 하나의 저수준 저장 파일에 함께 저장 컬럼은 '패밀리:퀄리파이어' 형태로 표현 컬럼패밀리는 수가 제한되지만 컬럼의 수는 제한이 없다 모든 로우와 컬럼은 테이블 상황정보 내에서 정의되는데 테이블에 포함되는 모든 컬럼패밀리에 대해 몇 가지 개념이 추가된다 모든 컬럼값, 즉 cell은 타임스탬프를 가짐 SortedMap 테이블 컬럼패밀리 리스트 - 웹테이블 인터넷을 크롤링하는 도중 수집되는 웹페이지들을 저장 RowKey는 URL을..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dCG2Ea/btrXXh5HTFw/aQKySDipxmOZVGPJSBFyc1/img.png)
9. HBase 소개 - 2 1.3 비관계형 데이터베이스 시스템. Not-only SQL인가 NoSQL인가? NoSQL 데이터 저장소에 SQL과 비슷한 쿼리를 제공하는 도구들이 존재하며, 이를 이용하여 관계형 DB에서 사용하던 복잡한 쿼리를 만들 수 있음 RDBMS와 NoSQL의 실질적인 차이는 스키마가 고정되어 있지 않아서 애플리케이션과 보조를 맞추어 저장 구조를 발달시킬수 있음 - 일관성모델 DB에서 수행되는 모든 연산은 하나의 일관된 상태를 지니고 다음 연산에 전달되야 한다는 개념 1. 엄밀한 일관성 : 데이터에 가해지는 변경 사항은 원자성을 가지며 즉시 반영되는 것처럼 표시 2. 순차적 일관성 : 모든 클라이언트가 모든 변경 사항을 적용한 순서대로 동일하게 바라봄 3. 인과적 일관성 : 인과적으로..
8. HBase 소개 - 1 1.1 빅데이터의 여명 하둡같은 시스템은 이제 기업들이 페타바이트급의 데이터를 수집하고 보유할 수 있게 해주었고, 지금보다 훨씬 더 많은 데이터를 수집해야 할 필요성은 새로운 기계학습 알고리즘의 발달과 함께 점차 증가하는 추세 이제는 기업에서 생산되는 모든 의미있는 데이터를 저장하고 분석할 필요성이 점점 증가 예쩐에는 수집된 데이터를 보유하려면 데이터의 일부를 잘라내는 수밖에 없었다. 구글 - 범용하드웨어 기반에서 확장성 있는 저장소 및 처리 시스템을 구축(HDFS, 맵리듀스) hadoop - 임의적, 반구조적, 구조가 없는 데이터도 저장 - 사용자가 데이터를 분석하는 시간에 그 데이터를 어떻게 해석 할지 스스로 결정 - 데이터를 분류하는 방식을 언제든지 변경가능 - 데이터를..
ERROR zookeeper.RecoverableZooKeeper: ZooKeeper exists failed after 3 retries 15/04/10 23:26:24 WARN zookeeper.ZKUtil: hconnection Unable to set watcher on znode /hbase/master org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/master 이런 에러 뜨게 되면 아래 처럼 바구러ㅏ Hi, J-D, I just made summary about the experiences to set up a pseudo-distributed mode..