
홍익대학교 데이터베이스 및 실습 과목 팀프로젝트 게시글입니다 팀 결성 이후, 우리는 프로젝트를 하기위해 주제 선정을 진행하였다. 전 인원이 다양한 의견을 내어 주었고 다음과 같다. 1. 아르바이트 구인 Web / App - 회원가입 ->[ 아르바이트 / 가게 ] 로 아르바이트 매칭 2. 당근마켓 Web / App - 회원가입 , 중고거래, 경매 제도를 통한 물건 사고팔기 3. 자동차 렌트 서비스 - 회원가입, 지도를 활용하여 특정 SPOT에 자동차 시간별 대여 시스템 1. 물건 찾기 - 회원가입해서 본인 방 구성, 핸드폰으로 물건 사진찍고 구성해놓은 방 카테고리에 넣어두고 물건 이름 검색이나 방 물건리스트를 확인해서 위치 확인 2. 자취생 요리 - 자취생들이 요리할때 쓰는 메인 재료에 따라 간단한 레시피..

이번 Database 및 실습 수업에서 프로젝트를 진행하게 되었다. 팀장으로서 처음 팀프로젝트를 진행하게 되었다. 기존에는 팀원으로 참여하거나 , 연구연수생으로 말단에서 열심히 했지만 뭔가 해낼 수 있다는 마음이 생겼다. 팀 프로젝트에 앞서 몇 가지 환경을 생각하였다. 1. 협업 툴 / Github & Notion 최대 활용하기 프로젝트에 앞서 팀이 결성 된 이후 나는 코드 버전 관리 및 레파지토리를 통해 체계적으로 진행하고자 한다. Github의 Organization를 생성하여 관리하기로 했다. https://github.com/DataBase-501-Group2-Project-2023 DataBase-501-Group2-Project-2023 DataBase-501-Group2-Project-202..

이번 포스팅은 오픈소스의 S3FS-FUSE의 코드 분석에 관한 글이다. 이번 팀프로젝트를 완수하기 위해선, 오픈 소스의 코드를 다 분석해야하지만 S3fs-Fuse의 소스는 어떻게 이루어졌는지 파악해야한다. C++ 소스코드를 보고 함수의 기능을 살펴보며 구동하는 흐름을 학습할 것이다. 아래는 이전 포스팅이다 https://boramchan-corgi.tistory.com/25 [AWS] S3FS-FUSE(Foreign File System in User Space) 란? 대학교 수업 '오픈소스 소프트웨어' 강의를 들으면서 프로젝트를 하게 되었다. 우리 팀은 오픈소스인 s3fs-FUSE를 탐구하고 I/O 속도 개선을 목표로 주제를 선정하였다. 인프라에 관심있는 나에게 boramchan-corgi.tistor..

대학교 수업 '오픈소스 소프트웨어' 강의를 들으면서 프로젝트를 하게 되었다. 우리 팀은 오픈소스인 s3fs-FUSE를 탐구하고 I/O 속도 개선을 목표로 주제를 선정하였다. 인프라에 관심있는 나에게 흥미있는 주제였고 심층적으로 탐색하고 기록하려고 한다. s3fs-FUSE는 Amazon S3 (Simple Storage Service)에 있는 데이터를 파일 시스템으로 마운트할 수 있게 해주는 FUSE(Foreign File System in User Space) 기반의 도구다. S3는 분산된 객체 스토리지 서비스로, 대규모 데이터를 안정적으로 저장하고 검색할 수 있도록 설계되었다. s3fs-FUSE를 사용하면 S3에 저장된 데이터를 일반적인 파일 시스템 명령어로 다룰 수 있어 편리하다. 이를 사용하면 S3..

사용자 생성, 로그인 및 소셜 로그인을 처리하는 기능을 구현하기 이번 포스팅은 소셜네트워크 서비스를 개발하면서 기능 구현하고, 발생한 오류 코드에 대해 작성하여 기술하고 해결한 것에 대한 포스팅이다. 함수 설명 `Auth` 함수 `Auth`는 사용자의 이메일과 비밀번호를 사용하여 로그인 및 계정 생성을 관리하는 React 함수로 구현 `useState`를 사용하여 상태 변수를 초기화하였고 사용자의 이메일, 비밀번호를 저장한다. `newAccount`: 사용자가 새로운 계정을 생성 중인지 또는 기존 계정으로 로그인 중인지 나타내었다. `onChange` 함수를 통해 email, password 상태를 event를 통하여 얻고, 필드의 입력 값이 변경될 때 호출되는 핸들러 함수로 구현하였다. `onSubmi..

지난 두달 간, 인턴(연구연수생)을 하면서 인상 깊었던 디바이스에 대해 소개 및 관련 자료를 정리하려고한다. 나는 실무에서 프로젝트의 업무를 하기 위해 Jetson nano를 대여할 수 있었고 완수하였다. Jetson Nano 란 무엇인가? NVIDIA에서 개발한 소형 컴퓨터 모듈이다. 저전력 시스템에서 고성능 연산을 수행할 수 있도록 설계 되었고, AI & 머신러닝에 적합한 디바이스이다. Jetson Nano 의 사양은? CPU: 64비트 Quad-Core ARM A57 GPU: 128-core NVIDIA Maxwell architecture-based GPU 메모리: 4GB LPDDR4 스토리지: microSD 카드 슬롯 비디오 인코딩/디코딩 기능: 4K @ 30 | 4x 1080p @30 |9x7..

Tensor RT란? NVIDIA 에서 제작했으며, 학습된 Deep Learning 모델을 최적화하여 NVIDIA GPU 상에서의 Inference 속도를 수배 ~ 수십배 까지 향상 시키는 모델 최적화 엔진이다. 가장 핵심포인트는 고성능 딥러닝 추론 라이브러리이다. (추론이다, 학습이아니라 추론이다) How to USE? NVIDIA GPU가 있는 로컬환경 혹은 Docker를 통해 설치한다. Jetson은 ARM 기반 아키텍쳐 GPU를 사용하는데, 설치는 간단하다 Jetson nano,Xavier,Orin등 Jetson 계열에서는 기본 설치패키치 JETPACK을 설치하면 자동으로 설치 된다. 또한 , 기본 NVIDIA 제조사의 GPU 를 가지고 있다면 충분히 사용가능하다. 하지만 Driver Versio..

3,4 주차를 간략히 요약하자면,,,, 벌써 ETRI 인턴을 시작한지 한달이 지나버렸다. 좋은 기회를 얻어 대전 유성구에 온지도 한달이 넘었다. 되돌아보면 사실 처음 왔을 때, 많이 긴장했었다. 부서마다 많이 스타일이 다르겠지만, 우리 부서에서는 충분한 시간을 주셔서 업무 관련 기본학습도 할 수 있었고, 책임연구원님들 다 귀찮으실지 모르겠지만 내가 많은 질문을 정리해서 가면, 학부생으로서 배울 수 없는 과정까지 세세히 이해 할 수 있게 알려주셨다. 그리고 업무도 부여받아서 진행하고 있다. 시작 같은 대학교에서 인턴온 선배형인데,,, 진짜 유니티와 친해지면서 업무까지 해내는 것을 보고 진짜 대단하다고 생각했다. 나는 1,2 주차 쿠버네티스 업무를 맡게 되었다. 사실 우리 프로젝트의 직접 로컬환경에서 실행시..

이번 게시글은 쿠버네티스의 서비스 부분에 대한 개념을 정리하는 게시글입니다. 쿠버네티스를 작동하여 오브젝트를 생성하는거 이외로 가장 중요한 부분이라고 생각한다. 서비스(Service)란 ? 컨테이너화된 애플리케이션을 외부에 노출시켜 외부 사용자(클라이언트가) 해당 애플리케이션에 접근할 수 있도록 하는 리소스 Pod들의 집단 안에서 접근할 때 사용하는 것이다 (간단한 예시, DB가 있는 pod 이랑 nginx가 있는 pod 끼리에서) 왜 서비스를 써야할까? 파드는 일회성이다. [반영속적인 특성] 노드에서 파드가 제거되면 새로운 파드가 생성되거나, 클러스터의 노드에 장애가 발생되면 스케줄러에 의해 Pod 다른 노드로 이동되어 생성된다. [동적이다] 쿠버네티스의 파드는 노드에 스케줄된 후, 시작하기 전에 IP..

4주차 인턴 중, 쿠버네티스 이외의 새로운 업무를 추가로 진행하게 되어 지식을 학습하며 작성한 글입니다. ONNX 란? Open Neural Network Exchange 이며 딥러닝 모델의 상호 운용성을 위해 개발된 오픈 소스 포맷형식이다. 즉, 다양한 딥러닝 프레임워크 (Tensorflow, Pytorch, Tensor RT) 사이에서 모델을 공유하기 위한 중간 포맷이다. ONNX는 딥러닝 모델의 생태계를 보다 개방적이고 협력적으로 만들어주는 중요한 역할을 한다. 진행 과정 첫 번째 PyTorch 모델과 Sample input 을 인자로 하여, torch.onnx.export 함수를 호출한다 PyTorch 의 JIT 컴파일러를 통해서, Trace 혹은 Script 를 생성한다. PyTorch 모델의 ..

해당 글은 Markdown으로 작성된 글 입니다. 쿠버네티스 소개 및 학습에 앞서 Docker(도커)에 대한 학습은 필수이다. 도커에 대한 기본지식이 필요하다면 여기 를 클릭하여 학습 하기를 매우 추천한다. 쿠버네티스(Kubernetes/K8s)란? 다음은 쿠버네티스의 공식 원서 에서의 정의이다. 쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식성이 있고, 확장가능한 오픈소스 플랫폼이다. 쿠버네티스는 선언적 구성과 자동화를 모두 용이하게 해준다. 쿠버네티스는 크고, 빠르게 성장하는 생태계를 가지고 있다. 쿠버네티스 서비스, 기술 지원 및 도구는 어디서나 쉽게 이용할 수 있다. 쿠버네티스란 명칭은 키잡이(helmsman)나 파일럿을 뜻하는 그리스어에서 유래했다. K8s라는 표기는 "K"와 "..

쿠버네티스를 학습하면서 control plane에서 Pod을 어디에 배포할지 정해주는 스케줄러를 배웠을 것이다. 쿠버네티스에서 스케줄링 은 Kubelet이 파드를 실행할 수 있도록 파드가 노드에 적합한지 확인하는 것을 말한다. 그말은 즉, Pod이 필요한 자원의 request와 limit에 실행되기 적합한 node를 내부 엔진을 통해 찾아준다는 것이다. 또한 원문을 읽다보면 다음과 같은 구절이 나온다. "Kube-scheduler selects an optimal node to run newly created or not yet scheduled (unscheduled) pods. Since containers in pods - and pods themselves - can have different r..