"최고의 기업은 모든 도전을 기회로 보고, 그 사고방식을 그들의 문화에 새깁니다"

- 2000년 닷컴 버블 시절 아마존의 가장 큰 비용은 데이터센터의 비싼 Sun 서버들
- 1년에 걸쳐서 Sun을 걷어내고 HP/Linux로 교체한 것이 AWS의 기초가 되었음
- 그 시절 아마존의 모토는 "Get big fast". 사이트가 다운되면 바로 손실로 이어졌기에 안정성이 중요했음
ㅤ→ 그래서 Sun 장비가 비싸고 독점적이지만, 가장 신뢰할 수 있었기에 모든 인터넷 회사들이 사용했음
- 2000년도에 VC한테 투자받은 스타트업들이 사업을 중단하면서, 새 Sun서버들이 ebay 에 1달러도 안되는 가격으로 등장하기 시작
- 이때 아마존은 Sun과 더 나은 거래를 협상할 수도 있었지만, Jeff는 더 급진적인 접근방식을 택함
- 그시절 아마존의 CTO는 월마트 출신의 Rick Dalzell로, 그는 전체 기술조직을 중심으로 Sun을 HP/Linux로 대체
- 리눅스 커널은 Jeff가 아마존을 시작한 같은 해인 94년에 출시되었음. 6년이 지난뒤, 새롭고 위험한 접근 방식으로 회사를 베팅
- 전환하는 동안 제품 개발이 중단되고, 1년 이상 새로운 기능 출시를 동결했음. 엄청난 백로그가 있었지만, Linux로의 전환을 완료할 때까지 아무것도 ship 할수 없었음.
- 또한 현금소진을 줄이기 위해 가격을 올리면서 수익 성장이 둔화. 안 좋은 순환이었고, 돈이 줄어들면서 시간이 부족했음. 이러다 파산하기 몇분기 전 이었음
- 그러나 Linux 전환을 시작하자 돌아갈수 없었음. 코드베이스를 리팩토링하고, 서버를 교체하면서, 컷오버(빠른 단계 전환)을 준비함
- 작동한다면 인프라 비용이 80+% 이상 감소하고, 실패하면 웹사이트가 무너지고 회사가 망할 것
- 마침내 제 시간내에 문제없이 전환을 완료. 전체 기술팀에게 큰 성과였음. 사이트는 중단없이 계속되었고, CAPEX(설비 투자 비용)가 하루밤 새에 대폭 감소.
ㅤ→ 그리고 갑자기 무한 확장 가능한 인프라가 생김
- 그러자 더 흥미로운 일이 생김. 리테일러로서 매년 11/12월마다 트래픽과 매출이 급증하는 큰 계절적 상황을 겪고 있음

ㅤ→ Jeff는 "우린 연간 46주는 초과한 서버 용량을 보유하고 있는데, 이걸 다른 회사에 임대하는 건 어떨까 ?" 라고 생각하기 시작
- 같은 시기에 Jeff는 내부 종속성을 분리(Decoupling)해서 팀들이 다른 팀의 통제없이 개발하도록 하는데 관심이 있었음
ㅤ→ 이 느슨한 결합 모델을 활성화 하는데 필요한 아키텍처 변경이 AWS를 위한 API 기본 요소가 되었음- 2000년 닷컴 버블 시절 아마존의 가장 큰 비용은 데이터센터의 비싼 Sun 서버들
- 1년에 걸쳐서 Sun을 걷어내고 HP/Linux로 교체한 것이 AWS의 기초가 되었음
- 그 시절 아마존의 모토는 "Get big fast". 사이트가 다운되면 바로 손실로 이어졌기에 안정성이 중요했음
ㅤ→ 그래서 Sun 장비가 비싸고 독점적이지만, 가장 신뢰할 수 있었기에 모든 인터넷 회사들이 사용했음
- 2000년도에 VC한테 투자받은 스타트업들이 사업을 중단하면서, 새 Sun서버들이 ebay 에 1달러도 안되는 가격으로 등장하기 시작
- 이때 아마존은 Sun과 더 나은 거래를 협상할 수도 있었지만, Jeff는 더 급진적인 접근방식을 택함
- 그시절 아마존의 CTO는 월마트 출신의 Rick Dalzell로, 그는 전체 기술조직을 중심으로 Sun을 HP/Linux로 대체
- 리눅스 커널은 Jeff가 아마존을 시작한 같은 해인 94년에 출시되었음. 6년이 지난뒤, 새롭고 위험한 접근 방식으로 회사를 베팅
- 전환하는 동안 제품 개발이 중단되고, 1년 이상 새로운 기능 출시를 동결했음. 엄청난 백로그가 있었지만, Linux로의 전환을 완료할 때까지 아무것도 ship 할수 없었음.
- 또한 현금소진을 줄이기 위해 가격을 올리면서 수익 성장이 둔화. 안 좋은 순환이었고, 돈이 줄어들면서 시간이 부족했음. 이러다 파산하기 몇분기 전 이었음
- 그러나 Linux 전환을 시작하자 돌아갈수 없었음. 코드베이스를 리팩토링하고, 서버를 교체하면서, 컷오버(빠른 단계 전환)을 준비함
- 작동한다면 인프라 비용이 80+% 이상 감소하고, 실패하면 웹사이트가 무너지고 회사가 망할 것
- 마침내 제 시간내에 문제없이 전환을 완료. 전체 기술팀에게 큰 성과였음. 사이트는 중단없이 계속되었고, CAPEX(설비 투자 비용)가 하루밤 새에 대폭 감소.
ㅤ→ 그리고 갑자기 무한 확장 가능한 인프라가 생김
- 그러자 더 흥미로운 일이 생김. 리테일러로서 매년 11/12월마다 트래픽과 매출이 급증하는 큰 계절적 상황을 겪고 있음
ㅤ→ Jeff는 "우린 연간 46주는 초과한 서버 용량을 보유하고 있는데, 이걸 다른 회사에 임대하는 건 어떨까 ?" 라고 생각하기 시작
- 같은 시기에 Jeff는 내부 종속성을 분리(Decoupling)해서 팀들이 다른 팀의 통제없이 개발하도록 하는데 관심이 있었음
ㅤ→ 이 느슨한 결합 모델을 활성화 하는데 필요한 아키텍처 변경이 AWS를 위한 API 기본 요소가 되었음ㅤ

[참고 : 아마존 역사에서 가장 중요한 제프베조스의 2002년 사내 메일 ]

지금의 AWS가 있게한 메일로 시작해서 다양한 조직의 구조에 대해서 설명한 글

제프 베조스의 2002년 메일 내용
1) 모든 팀은 서비스 인터페이스로 데이터와 기능을 공개하세요.
2) 팀들은 이 인터페이스로 통신 하세요.
3) 직접 링킹, 다른팀 저장소에 직접 억세스, 공유메모리, 백도어 등, 다른 어떤 통신방법도 허용되지 않습니다. 네트워크를 통한 서비스 인터페이스 호출만 허용합니다.
4) 어떤 기술을 사용하는가는 중요하지 않습니다. HTTP, Corba, Pubsub, 커스텀 프로토콜 다 괜찮습니다.
5) 모든 서비스 인터페이스는 예외없이 기초부터 모두 외부에서 사용 가능하도록 설계되어야 합니다. 즉, 팀들은 인터페이스를 외부 개발자가 이용가능하도록 계획하고 설계해야 한다는 것입니다. 예외는 없습니다.
6) 이를 지키지 않는 사람은 해고 될것입니다.
7) 고맙습니다. 좋은 하루 되세요!

조직 구조의 형태
Functional : Apple
Divisional : Amazon
Function + Divisonal = Hybrid : Netflix

사내 커뮤니케이션 프레임워크
- 동기 vs 비동기
- Co-located 동기 / 비동기
- Distributed 동기 / 비동기
- Remote 비동기


- 이것들이 AWS를 만든 기본 Insight. Jeff가 전사 미팅(All-hands)에서 전력그리드 관점에서 이 아이디어를 설명한 것을 기억함
ㅤ→ "1900년대에 기업은 상점을 열기 위해서 자체 발전기를 가져야 했습니다. 2000년대에 기업이 자체 데이터 센터를 구축해야할 이유는 뭘까요 ?"
- 클라우드 인프라는 AWS 없이도 등장 했을 것(예를 들어, Tesla 없는 전기자동차 처럼) 하지만 얼마나 후에 어떤 기회비용으로 가능 했을지는 모름
ㅤ→ AWS가 회사를 시작하는 비용을 크게 줄인 후 혁신이 폭발하고, 현대적인 VC 에코시스템이 탄생 했음
- 아마존은 2000~2003년에 거의 죽을뻔 했지만, 이런 위기가 없었다면 완전히 새로운 아키텍처로 전환하는 어려운 결정을 내리지 않았을 것
ㅤ→ 이 변화가 없었다면 AWS는 만들어 지지 않았을 것. "좋은 위기를 낭비하지 마세요"

- PS : 아마존은 최근 Oracle을 뜯어 내는데 몇년이 걸렸음. 힘든 일을 하려면 근육이 필요하고, 힘든 일을 함으로써 근육이 만들어짐
ㅤ→ "최고의 기업은 모든 도전을 기회로 보고, 그 사고방식을 그들의 문화에 새깁니다"


기회=리스크, 성공=성장, 실패=미래의 재실패를 막을 수 있는 기초.. 우리는 도전을 받아들이고, 문제를 찾아다니면서 성장한다. Struggle하자.

Posted by 목표를 가지고 달린다
,

"하버드에서 어떤 수업이 가장 도움이 됐나요?

글을 자주 쓰지 않거나, 매번 생각없이 작성하는 사람들이라면 여러번 연습해 봅시다.!!

"백문이 불여일타" 라.~~~

Posted by 목표를 가지고 달린다
,

파이썬은 pandas 라이브러리를 활용하여, html 중에서 표만 추출하여 2차원 배열로 추출하는 함수를 제공한다.(엄청 편함)

 

준비단계 -----------------------------------------------

실제 해당하는 라이브러리는 내장되어 있지 않아 설치가 필요함

pip install pandas
pip install lxml
pip install html5lib
pip install BeautifulSoup4
pip install openpyl

---------------------------------------------------------
pip를 업그레이드가 필요한 경우
python -m pip install --upgrade pip
---------------------------------------------------------
WindowOS 10 인 경우, 직접 lxml 라이브러리를 다운받아 설치 필요
https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml |
사이트에 접속해서 자기 OS에 맞는 lxml을 다운받고, Python Shell에서 ‘pip install 다운받은파일.whl’ 실행

import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table")
print(df) # HTML 내용중 테이블 형태의 데이터를 실시간 추출함.
import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table", header=0, index_col=0)
print(df[1]) # 헤더를 열이름으로 정하고, 나라이름을 인덱스로 정함
import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table", header=0, index_col=0)
print(df[1].iloc[:, :5]) # 데이터의 앞에 5개만 추출

iloc 인덱스 방식 : 데이터의 순서에 따라 접근하는 것으로, 콤마를 중심으로 앞은 행, 뒤는 열에 접근하는 것. 따라서 iloc[:, :5]는 모든 행의 앞의 5개 열을 슬라이싱하라는 의미

import pandas as pd
df = pd.read_html("https://en.wikipedia.org/wiki/All-time_Olympic_Games_medal_table", header=0, index_col=0)
# print(df[1])
# print(df[1].iloc[:,:5]) # 모든 행의 처음부터 5개열..
summer=df[1].iloc[:,:5]
summer.columns=['경기수', '금','은','동', '계'] # 표의 컬럼 이름 정의
print(summer.sort_values('금', ascending=False)) # ‘금’ 숫자를 기준으로 정렬
summer.to_excel(‘하계올림픽메달.xlsx’) # 엑셀 파일로 저장(단 한줄)

pandas(panel datas, 패널자료)에 대해 알기 전, 1차원 배열 형태의 데이터 구조를 Series라고 부르고, 2차원 배열 형태의 데이터 구조를 DataFrame이라고 부른다. 파이썬에서는 numpy, pandas 같은 라이브러리를 활용하면 효율적이고 전문적인 데이터 분석을할 수 있다..

# pandas 연습하기

import pandas as pd
import numpy as np


index= pd.date_range('1/1/2000', periods=8)
print(index)
df = pd.DataFrame(np.random.rand(8,3), index=index, columns=list('ABC'))
print(df)
print(df[‘B’])
print(df['B'] > 0.4) # 0.4 보다 큰지 여부를 True / False로 표기
df04 = df[df['B'] > 0.4] # 특정값 이상만 배열에 담기
print(df04)
df['Total'] = df.sum(axis=1); # 합계 열 추가
df = df.sub(df['A'], axis=0) # A열을 빼기, A열은 모두 0으로 표기
df = df.div(df['C'], axis=0) # C열의 값으로 나누기
del df['E'], df['D'] # ‘E’,‘D’열 삭제
print(df.head()) # DataFrame의 첫5행만 확인
df.to_csv('test.cvs') # CSV 파일로 저장하기.
df = pd.read_csv(‘test.csv’, encoding=’cp949’ , index_col=0) # csv 파일 읽기
print(df.head())

- 데이터 프레임 행 우선 계산과 열 우선 계산

기본적으로 테이블(DataFrame)은 행우선(axis =0)으로, 열 방향으로 계산한다면, axis1로 변경해야 한다.

합계열을 추가하려면, df[‘E’] = np.sum(df, axis=1)를 실행하면 된다.

a = df.index.str.contains(name) # name변수를 포함한 index를 검색하여 행을 리턴

df2 = df[a] # 해당인덱스의 행전체 값을 저장

위의 내용대로, pandas의 read_html() 함수를 사용해서 테이블 형태의 자료를 추출한 후, 파일로 주기적 생성후, 주기적으로 개발자가 선호하는 언어(Java, PHP 등)로 DB에 넣어서 사용하면, 쉽게 크롤링을 할 수 있을 것 같다.

위 내용은 "모두의 데이터 분석 with 파이썬" 책을 읽으며 요약한 것으로, 개발자 기준에서 특징적인 것만 요약한 것이다.

다음에는 크롤링이라 명시된 책으로 정말 그외 특별한 무언가가 있는지.. 아니면 지금 이것을 활용하는 것뿐인 것인지 확인해 보자.

Posted by 목표를 가지고 달린다
,

주변에 일반 업무부서에서 일하고 있지만, 오너의 크롤링에 대한 관심으로....

파이선을 공부하려고 책을 사본 친구가 있어서 빌려서 읽어 봤다.

IT 전공자에게는 2~3시간 동안(200page) 눈으로 스캔하는 수준으로.
기초적인 문법 사용 { }의 개념, if, for문 특징..정도 인것 같다...

이책은 정말 입문자용으로 IT전공자가 아닌 일반인이 접하기에는 매우 좋은 책인 것 같다..

설명이나, 개념에 대해서는 차근차근 설명하고 있고,
샘플소스 역시 난이도가 어렵지 않고 실속있게 개념 잡기 좋은 걸 잘 골라서 진도를 뽑고 있다.

IT전공자는 좀더 실무적으로 크롤링과 관련된 책을 골라서 읽어보길 권합니다.

Posted by 목표를 가지고 달린다
,

★2020년 시험과목 변경사항 안내

국가기술자격법 시행규칙 개정('18.6.22)*에 따라 해당 종목의 필기, 실기시험 과목이 2020년부터 아래와 같이 시행 예정

구 분 현 행 변 경(2020년 적용) 비고
시험과목 필기시험 1. 데이터베이스
2. 전자계산기구조
3. 운영체제
4. 소프트웨어공학
5. 데이터통신
1. 소프트웨어 설계
2. 소프트웨어 개발
3. 데이터베이스 구축
4. 프로그래밍 언어 활용
5. 정보시스템 구축관리
국가직무능력표준(NCS)을 활용하여 현장직무중심으로 개편
실기시험 정보처리 실무 변경없음

* 국가법령정보센터(www.law.go.kr)→국가기술자격법 시행규칙(고용노동부령 제222호)→별표/서식→별표8 참조

전공자는 크게 상관없을 수 있으나, 공무원 시험을 대비하는 수험생분들은 ... 기존 Dump 기반에서 추후 업데이트 되는 시험문제를 확인하고 접근하는게 시간을 효율적으로 이용하는 방법으로 예상됨.

https://www.comcbt.com/xe/j4

정보처리기사 필기 기출문제 - 최강 자격증 기출문제 전자문제집 CBT

정보처리기사 필기 기출문제

www.comcbt.com

http://www.gunsys.com/cbt_list/index.php?cbt=gisa

정보처리기사 필기 기출문제 모의고사, CBT

www.gunsys.com

많은 CBT 관련 사이트가 있으나, 그중에 2개를 소개해드립니다.~

Posted by 목표를 가지고 달린다
,

정보시스템을 모두 인소싱하는 것은 어렵고, 비용이 상당하다.

제한된 자원내에 우리는 효율적이고 더 신뢰할 수 있는 제3자에게 아웃소싱을 하고, 그과정에서 R/R을 명확하게 하기 위한 SLA를 체결하게 된다. 이부분은 서비스를 받는 자가 제대로 챙기지 못하면 문제가 발생했을 때, 생각치 못한 부분까지 책임을 떠안아야 하기에 반드시 읽고, 고민하자.

그리고 운영아웃소싱을 맡기더라도, 결국 문제 발생시 담당자도 문책을 피하기 어려우니, 맡긴 업무를 어떻게 감독/관리할 것인가에 대해 고민이 필요하다.

11. 정보시스템 운영아웃소싱 관리지침.PDF
2.86MB
12. SLA를 강화한 정보시스템 운영계약참조모델.PDF
1.68MB

Posted by 목표를 가지고 달린다
,

IT관리자가 반드시 읽어봐야 할 문서(지침)

NIA 한국정보화진흥원
HOME > 지식정보 > 기타자료집 > 법령 및 사업 관련규정

을 참조하면, 아래의 운영지침을 확인할 수있다. 14년 전에 발간되었다지만, 실제 내용의 큰차이는 없다.
개인정보보호법이 나오고, 일부 개정되면서 디테일한 부분이 수정이 있으나,
이제 관리자를 준비하는 사람, IT를 시작하는 사람은 전체적으로 읽어봐야할 자료들이다.

01. 정보시스템 운영관리 지침개요서.PDF
1.90MB
02. 정보시스템 운영관리 지침.PDF
2.60MB
03. 정보시스템 구성및변경관리지침.PDF
3.19MB
04. 정보시스템 운영상태관리지침.PDF
2.40MB
05. 정보시스템 성능관리지침.PDF
7.31MB
06. 정보시스템 장애관리지침.PDF
4.33MB
07. 정보시스템 재해복구지침.PDF
4.00MB
08. 정보시스템 백업지침.PDF
3.11MB
09. 서비스데스크 운영관리지침.PDF
4.11MB
10. 전산실 관리지침.PDF
2.02MB

그외 2개의 자료가 있는데, 아웃소싱관리지침과 SLA와 관련된 것으로,
전산실 운영 및 계약자는 반드시 숙지하고 업무를 해야 한다.

2019/09/22 - [반갑습니다. 신입님] - 정보시스템 운영관리 매뉴얼2(NIA 제공)

Posted by 목표를 가지고 달린다
,

자주 틀리는 맞춤법 정리

1. 되 vs 돼
'되' 와 '돼' 가 들어갈 자리에 '하'와 '해'를 넣어보자.
'하'가 어울리면 '돼', '해'가 어울리면 '돼'

2. 안 vs 않
문장에서 '안', '않'을 빼도 말이 되면 '안'.
말이 안되면 '않'

3. ~데 vs ~대
'데'는 경험한 것을 말할 때,
'대'는 남이 말한 것을 전달할 때

4. 있다가 vs 이따가
'있다가'는 '머물다가' (공간)
'이따가'는 '조금 후에' (시간)

5. 몇일 vs 며칠
'며칠'이 맞는 표현

6. 왠만하면 vs 웬만하면
'웬만하면'이 맞는 표현
'왠'은 '왠지'라는 말에서만 사용

7. ~히 vs ~이
'히' 나 '이' 가 들어갈 자리에 '하다'를 넣었을 때
말이되면 '히', 말이 안되면 '이'

8. 예기 vs 얘기
'얘기'는 '이야기'의 줄임 표현으로 맞는 표현

9. 베다 vs 배다
'베다'는 자르다. 상처내다. ~을 받치다.
'배다'는 스며들다. 습관이되다. 아기를 가지다.
근융이 뭉치다.

10. 어떻게 vs 어떡해
'어떻게'는 '어떠하다'가 부사적으로 쓰이는 말.
'어떡해'는 어떻게 해'의 줄임말

11. 담궜다 vs 담갔다
'담갔다'가 맞는 표현.
'잠궜다'가 아니라 '잠갔다'

12. 뵈요 vs 봬요
'봬요'가 '뵈어요'의 준말이므로 맞는 표현

13. 바램 vs 바람
'바램'은 '색이 변하다'
'바람'은 '무언가를 원하다'

14. 예요 vs 이에요
'예요'는 '이예요'의 준말
앞 말의 마지막 소리가 모음일 경우에는 '예요',
자음일 경우에는 '이에요'

15. 맞추다 vs 맞히다
'맞추다'는 비교하고 자리에 끼어 넣는 것
'맞히다' 정답이나 과녁

16. 하던지 vs 하든지
과거형에서 선택을 나타낼때 '든' 을 사용

17. 인마 vs 임마
'인마' 가 맞는 표현

18. 지그시 vs 지긋이
'지그시' 쳐다봤다
연세가 '지긋이' 든

19. 낳다 vs 낫다 vs 났다 vs 나았다
아기를 '낳다', A보다 B가 '낫다',
뾰루지가 '났다', 감기가 '나았다'

20. 틀리다 vs 다르다
'틀리다'는 잘못 되었을 때,
'다르다'는 정답과 오답이 없고,
단지 차이를 나타낼 때

Posted by 목표를 가지고 달린다
,