개발

1장. 잘못된 구조의 문제 깨닫기다음의 경우 잘못된 구조의 코드 의미를 알 수 없는 이름 컴퓨터 용어 / 일련번호를 매겨 이름을 지으면 코드에서 의도를 읽어내기가 어렵다.이해하기 어렵게 만드는 조건 분기 중첩if 조건문의 중첩은 이해하기 힘들다. 수많은 악마를 만들어 내는 데이터 클래스데이터를 갖고 있기만 하는 클래스를 데이터 클래스라고 부른다.데이터 클래스에서 선언하는 데이터를 이용한 로직이 필요한데, 이것을 다른 클래스에서 구현하는 일이 벌어지곤 한다. 데이터와 로직이 분산되어 있는 것을 응집도가 낮은 구조라고 한다. 이떄, 발생할 수 있는 문제를 보자면. 코드 중복수정 누락가독성 저하 초기화되지 않은 상태(쓰레기 객체)잘못된 값 할당2장. 설계 첫걸음의도를 알 수 있는 이름 붙이기 목적별로 변수를 ..
· CS
네트워크란 ? 노드(node)와 링크(link)가 서로 연결되어 있거나 연결되어 있으며 리소스를 공유하는 집합을 의미. 여기서 말하는 노드는 서버, 라우터, 스위치 등 네트워크 장치를 의미함. (링크는 유선, 무선) 처리량과 지연 시간 대역폭 (Bandwidth) : 주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수 더보기 이전에 hbase 클러스터 replication을 진행한 적 이 있는데, replication과정에서는 table의 snapshot을 peer 클러스터로 보내는 과정에서 대역폭을 고려해야 한다. Datasize와 Bandwidth로 작업 예정시간을 계산해서 네트워크 운영자에게 대략적인 작업시간을 제시해야 하기 때문이다. ex) 24TB*1024*1024/(80MB/s..
우선, brew가 설치되어 있어야 한다. brew install tree #tree 명령어 확인 tree -help 그 다음, 구조를 보고자 하는 디렉토리로 이동하고, 탐색할 tree의 depth를 정해 주어야 한다. #tree -L {depth} -F tree -L 4 -F 이렇게 볼 수 있다 ~
HBae의 Architecture를 살펴보기 이전에 다시 한번 복습해보자. HBase의 필요성 Hadoop은 빠른 쓰기 및 읽기를 처리할 수 없으며, 파일을 완전히 다시 작성하지 않고서는 파일을 변경할 수도 없다. HBase는 최적화된 방식으로 빠른 임의 쓰기 및 읽기를 허용하므로 HDFS의 단점을 극복하기 위해 Hadoop위에 구축된 NoSQL, 열지향 데이터베이스 이다. 기본이해 대량의 정형 또는 비정형 데이터에 대한 임의 엑세스를 제공하도록 설계된 Google의 빅테이블과 유사한 데이터 모델이다. HBase는 HDFS의 내결함성 기능을 활용하는 Hadoop 에코시스템의 중요한 구성 요소이다. HBase는 기존 RDBMS의 몇 가지 중요한 기능을 놓치기 때문에 데이터베이스 대신 데이터 저장소라고 할 ..
Meta Table HBase는 META 테이블이라고 부르는 HBase Catalog 테이블을 유지한다. 여기에는 클러스터에 포함된 리전의 위치정보들을 저장하고 있다. 이 테이블은 주키퍼가 관리한다. 1. 클라이언트는 주키퍼의 META 테이블을 서비스하는 리전 서버의 호스트 정보를 읽어온다. 2. 클라이언트는 리전 서버에 .META 테이블을 쿼리해서 접근하려는 row키를 가지고 있는 리전 서버 정보를 가져온다. 클라이언트는 META 테이블의 정보를 캐시한다. 3. 해당 리전 서버로 부터 row를 읽는다. HBase META 테이블은 아래와 같은 구조를 가지고 있다. Meta 테이블은 클러스터에 있는 모든 리전 정보를 저장하고 있다. Meta 테이블은 b tree 다. Meta 테이블은 Key와 Value..
Hbase는 하둡 기반의 분산 데이터베이스이다. NoSQL분류되어 스키마 변경없이 자유롭게 데이터를 저장 할 수 있다. HDFS위에서 작동되기 때문에, HDFS의 데이터의 가용성과 확장성을 그래도 이용할 수 있다. 데이터베이스 CAP이론에서 HBASE는 CP타입 (Consistency & Partition tolerance) 시스템으로 구글의 BigData 모델과 유사한 기능을 제공한다. 데이터베이스 CAP 이론 1. 일관성 (Consiostency) 다중 클라이언트에서 같은 시간에 조회하는 데이터는 항상 동일한 데이터임을 보증하는 것. 이것은 관계형 데이터베이스가 지원하는 가장 기본적인 기능이지만 일관성을 지원하지 않는 NoSQL을 사용한다면 데이터의 일관성이 느슨하게 처리되어 동일한 데이터가 나타나지..
데이터 웨어하우스 정의 비즈니스 인텔리전스 (BI) 활동, 특히 분석을 활성화 및 지원하기 위해 설계된 데이터 관리 시스템의 한 유형이다. 데이터를 액섹스하고 분석하는 엔진 데이터필드 또는 문자열과 같은 레이아웃 및 유형들을 설명하는 스키마로 구성 의사결정에 도움을 주기 위해 분석가능한 형태로 변환한 데이터들이 저장되어 있는 중앙저장소. Read Only Data -> ETL -> DW -> OLAP server -> Frontend 이러한 순서로 생각하면 된다. 장점 - 정보에 기반한 의사결정가능 - 여러소스로부터 데이터통합 - 데이터의 높은품질 (일관성, 정확성) - 인텔리전스 기록 - 분석처리 프로세스와 트랜잭션 데이터베이스의 성능향상 ETL : Extract, Transform, Load ETL란..
https://leetcode.com/problems/reorder-list/ Reorder List - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 예시 ) 1 -> 2 -> 3 -> 4 -> 5 -> 6 과 같은 linked list가 주어진다면, 1 -> 6 -> 2 -> 5 -> 3 -> 4 과 같이 처음과 마지막 을 순차적으로 연결시켜서 반환해주면 된다. 위의 문제는 3가지의 순서대로 푼다. 1. linked list를 반으로 잘라준다. 2. 반으로 ..
-- 각자의 계정으로 접속한다. /* Datatype의 종류 1) 문자열 CHAR(BYTE수) : 고정길이 - 최대 2000 BYTE VARCHAR2(BYTE수) : 가변길이 -최대 4000 BYTE *유니코드를 지원!! NCHAR(BYTE수) NVARCHAR2(BYTE수) * 반드시 문자는 '값' 형식으로 사용한다. * ORACLE에서 한글 한글자는 3BYTE이다!! EX) CHAR(6) : 한글 2자, 영문은 6글자 VARCHAR2(6) : 한글 2자, 영문은 6글자 * CHAR(6 CHAR) : BYTE와 관계없이 6글자까지 VARCHAR2(6 CHAR) : BYTE와 관계없이 6글자까지 * 대용량의 데이터을 저장해야하는경우 LOB : LARGE OBJECT 약자로 대용량의 데이터를 저장할수 있는 ..
-데이터베이스 : 데이터를 저장하는 공간!! : 관계형데이터베이스 이론에 맞춰 저장한다!! - 정규화라는 과정을 통해 데이터의 중복 최소화 시켜 저장한다. : 데이터를 저장할때 테이블의 형태로 데이터를 저장 * 데이터베이스 모델링이라는 과정을 걸쳐서 나온 스키마정보를 기반으로 테이블에 저장한다!! 1) 개념적설계 2) 논리적설계 3) 물리적설계 : 학습의 종류 1) 개발자 측면 - SQL문장(DDL, DML,DQL, DCL) : CRUD작업 2) DB관리자 측면 (DBA) : 종류 1) MS_SQL 2) My_SQL 3) Oracle : version : 8i, 9i, 11g, 12c, 18c, 21c : 유료버젼 - Enterprise Edition (SID=ORCL) : 무료버젼 - Express E..
ERE
'분류 전체보기' 카테고리의 글 목록