본문 바로가기

전체 글293

[Rust] Rust Programming 10일차 - implementation & self - 불변성 Borowing & 가변성 Borowing - 연관 함수 2022. 12. 17.
[Rust] Rust Programming 9일차 - 구조체의 Tuple 인덱스 [예제_1] fn main() { let rect1 = (50, 30); println!( "The area of the rectangle is {} square pixels.", area(rect1) ); } fn area(dimensions: (u32, u32)) -> u32 { dimensions.0 * dimensions.1 } [예제_2] struct Rectangle { length: u32, width:u32, } fn main() { let rect1 = Rectangle { length: 50, width: 30 }; println!( "The area of the rectangle is {} square pixels.", area(&rect1) ); } f.. 2022. 12. 16.
[OS] OS 동작 원리 [OS System 의 핵심 요소] 1) Abstraction : ==> Process, Thread, File, Socket, Memory 2) Mechanism : ==> Create, Schedule, Open, Write, Allocate 3) Policy : ==> LRU, EDF [OS 설계 원리] 1) Seperation of mechanism and policy ==> 정책 지원을 위한 유연한 Mechanism 구현 2) Optimization for common case ==> OS 가 어디에 사용되는가? ==> User가 그 기계로 뭘 Execute 하길 원하는가? ==> Workload 요구사항은 무엇인가? [OS Type] 1) Monolithic OS ==> 전체 OS 가 Kern.. 2022. 12. 16.
[Rust] Rust Programming 8일차 - Slice : [index_start..index_end] ==> 메모리 안정성 및 컴파일 타임 보장 [구조체] ==> 구조체를 쓰려면 Instance 생성 필요 - 필드 초기화 축약법(Field Init Shorthand) ==> 변수명과 구조체 필드명이 같다면 필드명만 씀. - Struct Update Syntax(구조체 갱신법) - 구조체 내 타입이 같아도 각 구조체는 독림적. 2022. 12. 15.
[DB] Hadoop (하둡) - (ChatGTP 피셜) 대량의 Data 를 Store 및 Process 하는 Software Framework. ==> Scalable(확장 가능)하게 설계되어 대량의 Data 와 User가 Crashing 하거나 느려지지 않게 처리함. - 대량의 Data 를 분산하고 Computing Cluster Node 전반에 걸친 분석 작업을 하여, Data 를 더 작은 Workload로 쪼갬으로써 Parallel 한 동작이 가능하게 함. - Hadoop User 는 높은 가용성 및 장애 시점 탕지 기능을 제공받으며, 상용 Resource를 훨씬 효율적으로 사용 가능. - Big-Data 를 최대로 활용하길 원하는 기업에서 많이 씀. 1) 확장성 - 기존 System 은 Data Storage 를 제한하지만,.. 2022. 12. 15.
[Rust] Rust Programming 7일차 - Reference(참조자) ==> & (엠퍼센트) : 변수 값은 참조하지만 소유권은 안 가져오는 Reference 생성\ - Borrowing(빌림) ==> 함수의 Parameter로 참조자를 생성하는 것. ==> &함수 또한 소유권이 없으므로, 소유권을 되돌려 주기 위해 Value를 다시 Return할 필요X - 수 기본값이 불변인 것처럼, 참조한 값도 기본이 불변 - 가변 참조자인 &mut 를 통해 참조 값을 변경 가능 - Reference를 통하여 Compile Time에 Data Race 방지. * Data Race 발생 조건 1. 2개 이상의 Pointer가 동시에 같은 Data에 접근 2. 그 중 적어도 하나의 Pointer가 Data를 씀 3. Data 접근을 위해 동기화하는 Mechan.. 2022. 12. 14.
[DB] Data Lake vs Data Warehouse 비교 - Big Data 를 위한 Storage Repository [Data Lake] - 딱히 Data Model 없음. 그냥 모든 Raw Data 끌어옴. - Data 수집 Time 에 지연이 없음. 어떤 조건이나 Filtering 이 없으므로. - 대규모 Data 용량이지만 상용 Hardware 를 자주 사용하기에, Data Warehouse 보다 Cost 가 저렴. [Data Warehouse] - Report(보고) 를 위해 설계된 구조적 Data Model 을 제공. - Data 를 Data Warehouse 에 저장하기 전, Data를 정제하는 Process는 시간이 오래 걸릴 수 있음(몇 개월~몇 년) ==> Data Lake 처럼 즉시 Data 수집 불가. - Data 저장 Cost가 상당할.. 2022. 12. 14.
[DB] Data Warehouse - 보다 Information 에 입각한 의사 결정을 내리도록 분석하게 하는 Information 중앙 저장소. - Data 는 Transaction System, 관계형 Database 등을 통해 정기적으로 DW (Data Warehouse) 에 들어감. - DW 는 Data 를 효율있게 저장하여 보고서&대시보드&분석도구 를 강화함. - Data I/O 를 최소화하고 수 만명이 될 수도 있는 User 에게 Query 를 동시에 빠르게 제공. - 대체로 월별 판매 보고서, 직역별 판매 내역, 웹사이트 Traffic 같은 Business 에서 주로 쓰이는 반복적 보고 및 분석 유형에 적합 - Information 에 기반한 의사 결정 - 여러 Source 의 Data 통합 - 과거 Data 분석 - Dat.. 2022. 12. 13.