분류 전체보기
-
MWAA 설치AWS/Airflow(AWS) 2023. 3. 28. 22:02
회사에서 AWS내 Airflow인 MWAA를 구축하며 정리한 내용입니다. 1. AWS CLI 자격 얻기 1-1) AWS CLI 설치 - 링크 Command로 작업하도록 도와주는 역할 $ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" $ sudo softwareupdate --install-rosetta $ sudo installer -pkg AWSCLIV2.pkg -target / # 제대로 동작하는지 체크 $ which aws $ aws --version > aws-cli/2.8.5 Python/3.9.11 Darwin/21.6.0 exe/x86_64 prompt/off 1-2) Certification 설정 - 링크 aws 사용..
-
[Database] - Hash index / B-Tree indexCS/DB 2022. 10. 6. 00:42
Hash index B-tree 만큼 일반적/범용적으로 사용되지는 않지만 고유의 기능과 특성을 가지고 있는 인덱스 오브젝트 입니다. 실제 키 값과 관계없이 인덱스 크기가 작고 검색이 빠르다는 것 입니다. 원래의 값을 저장하는 것이 아닌 해시 함수의 결과만을 저장하게 됨에 따라 키 컬럼 값은 4~8바이트 정도로 작은 길이로 줄어듭니다. Hash된 데이터 값에 따라 저장될 버킷 위치를 정하기 때문에 빠른 속도로 검색 영역을 제한할 수 있다. 버킷의 범위가 작다면 Collision이 발생하게 되어 효율이 떨어지게 됩니다. 해시 인덱스는 정렬되어 있다고 볼 수 없다. 메모리기반의 테이블에 주로 사용된다. 자주 사용되는 데이터를 옵티마이저가 판단하여 해시 키로 만들기 때문에 제어가 어렵다. E.g) Adaptiv..
-
[PostgresSql] - 사용하는 이유개발/Postgres 2022. 10. 6. 00:24
RDBMS라고 불리는 Database는 Oracle, Mysql, Mssql, 등등 많은 모델이 존재합니다. 어떠한 이유로 PostgreSql을 쓰는지 알아봅시다. PostgresSql 세계에서 가장 진보된 OpenSource RDBMS 입니다. 확장성, 호환성이 뛰어나다. ( 동적 로드 , 카탈로그 기반 작업 ) 많은 SQL 표준을 준수 Object-Relational Database로 객체 DB와 연관되는 기능이 존재합니다. ( 상속, 오버로딩 ) Concurrency + ACID(Atomicity + Consistencty , Isolation , Durability ) ACID를 유지하기 위해 MVCC ( Multiversion Concurreny Control ) 다양한 Data Type ( G..
-
[Database] - Cardinality / Cluster IndexCS/DB 2022. 10. 4. 00:29
Index를 설정할 때 주로 사용하는 Where 조건이나, FK를 Index를 효율적인라는 것은 알 수 있다. 'Student' 라는 Table에 'ID' , 'Name' , 'Phone' 이라는 Column이 존재한다고 가정해봅시다. Index는 'ID' , 'Phone'으로 2개의 Column이 복합적으로 잡혀있다고 하여 봅시다. 당연히 2개를 사용하여 Select하는 것이 제일 좋습니다. 그 다음에는 둘 중 하나라도 Index를 타게 하는것이 좋습니다. 하지만, 그렇다고 하여서 Index 많이 설정하면 좋을까요? 그렇지 않습니다. Index는 DB Memory를 사용하여 Table형태로 별도로 저장됨으로 Index가 많아지면 결국 저장공간과 개수도 비례하여 증가합니다. Index를 설정 어떤 Col..
-
[Network] - HTTP / HTTPSCS/면접준비 2022. 10. 3. 23:10
HTTP ( HyperText Transfer Protocol ) 인터넷 상에서 Client와 Server가 Text를 주고 받을 때 쓰는 통신 규약 HTTP는 텍스트 교환으로, 누군가 Network signal을 가로채면 내용이 노출된다. HTTPS ( HyperText Transfer Protocol ) HTTP에서 신호를 가로채도 내용이 노출 안되도록 보안 HTTPS는 텍스트를 암호화 ( 공개키 암호화 ) CA라는 기업이 공개키를 저장해주는 신뢰성이 검증된 민간기업들의 목록을 가지고 있다. Server는 CA 기업의 개인키로 암호화한 인증서를 가지고 있다. Client -> Server Request Server -> Client Response ( CA기업의 Private key로 암호화한 인증서..
-
[Database] - IndexCS/DB 2022. 10. 3. 23:09
Index Table Address를 미리 저장하면 Mapping 하여 주는 개념 논리적/물리적으로 테이블과 독립적 Table Scan(Full scan)을 하게 되면 O(N)이 들게 되는데 이를 더 효율적으로 탐색하기 위한 방법 O(LogN) RDBMS에서 검색 속도를 높이기 위함 Index는 B-Tree(Balance Tree) Join, Where에서 Index가 주로 사용되어 쿼리의 검색 속도를 빠르게 하는데 목적을 가진다. Delete,Insert,Update 쿼리에는 Index 사용시 오히려 느리다. Insert Block에 여유가 없다면, 새로운 Block 할당 후 Key 옮기는 작업 수행 Index Split 작업 동안, 해당 Block Key 값에 대해 DML이 Blocking -> Wa..
-
[후기] - 2022 하반기 Line 코딩 테스트 , 필기 테스트코팅테스트/후기 2022. 10. 3. 22:07
코딩테스트 2022 신입 개발자 채용 Line 코딩테스트 및 필기 테스트 후기에 대해 적어봅니다. 10:00 ~ 12:30 시간 동안 5문제를 푸는 문제였습니다. 1~4번 문제까지는 아이디어가 생각났으나, 3번까지 구현 완료. 4번 문제는 아이디어를 가지고 구현 중에 시간이 부족하여 풀지 못하였습니다. 생각보다 풀지 못하여 코딩테스트에 대해 기대를 하지 않았습니다. 다행히도 코딩테스트를 합격을 했습니다. 필기테스트 이후에 진행된 필기테스트.. CS지식을 위주로 물어보았으나 알고 있는 내용이더라도 확신히 없어서 풀면서 불안하였습니다.. 34문제는 주로 OS, Network, SQL, 코드, 에러를 주고 올바른 내용 혹은 틀린 내용을 구별하는 문제 위주로 나왔습니다. 다음번에는 Network를 조금 더 상세..
-
[Network] - 대칭 키 / 공개 키CS/면접준비 2022. 9. 30. 22:08
대칭 키 ( symmetric key ) 암호화, 복호화 시에 같은 암호키를 사용한다. 동일한 키를 주고 받기 때문에 빠르다. 한쪽만 해킹 당해도 둘다 해킹 위험에 노출 공개 키 ( public / asymmetric key ) 암호화, 복호화 시 사용되는 Key를 분리 대칭키의 분배 문제를 해결하기 위해 고안 자신만 가지고 있는 private key로만 복호화 할 수 있는 public key를 공개 진행 과정 1. A->B data를 B의 공개키로 Encrypt해서 보냄 2. B는 자신의 Private key로 평문 확인 B -> A A의 공개키로 Encrypt 해서 Response 3. A는 자신의 Private Key로 평문 확인 기밀만 유지해줄 뿐, 신뢰성을 주지 못한다. -> 전자서명,MAC로 ..