Azure Everywhere

 퍼블릭 클라우드 하면 떠오르는 세 곳이 AWS, MS Azure, GCP 입니다.

AWS가 전 세계의 시장을 점유하고 있으며, GCP는 약간은 다른 노선을 걷고 있는가운데 최근 MS Azure의 적극적인 B2B시장 공략이 눈에 보입니다.

이와 관련하여 첫번째로 summit행사가 열렸으며 그 이름이 Azure Everywhere 입니다.


<오전세션>

오전세션은 다음과 같았습니다. 

키워드는 다음과 같습니다.

 - 개발자 중심

 - AI 대중화

 - 기술변화에 따른 사업구조 변화


<GitHub : 개발자 중심의 클라우드 플랫폼 응용과 진화의 방향>

세션의 설명에 앞서서 수년간 변화해온 IT를 살펴볼 필요가 있습니다.


 과거에는 IT의 핵심가치가 <원가절감>, <생산성 향상>에 있었습니다. 전통적인 산업의 비지니스가 존재했고 그 비지니스 프로세스를 그대로 모델링하여 IT시스템을 구축하여 서포트하는 것이었습니다. EA를 설계하고 각 도메인의 SA,DA,TA위에 비지니스를 분석하여 설계하면 개발자는 그대로 개발하는 것이었습니다. 각 영역을 담당하는 전문가들이 있었으며 대부분 외부 인력이였기 때문에 공정과 절차가 중요했으며 소프트웨어도 납품받아서 사용하는 것이 일반적이었습니다.


 그러나 사업환경이 점차 급변하면서 IT자체를 상품으로 하는 새로운 비지니스들이 출현하기 시작했습니다. 산업간의 경계가 무너지고 모든 기업이 소프트웨어 기업이 되어야만 하는 세상이 다가왔습니다.

 이제는 IT의 핵심이 <가치>가 되었습니다. 끊임없이 변하는 시장환경에 전통적인 개발방법론으로는 대처하기가 어렵고, 뭔가를 개선하고자 프로젝트를 계속 진행해도 여러 한계점만 나타나게 되었습니다. 

(일정지연, SW인력의 소모품화, 요구를 충족하지 못하는 제품, 높은 시스템 유지비용 및 변경비용 등.)


 전 세계적으로 이러한 상황을 극복하기 위해서 많은 시도가 이루어졌고 애자일이 대표적인 사례입니다.

(애자일 선언문은 업종에 관계없이 꼭 한번 읽어보시기를 강추드립니다. 참여하신 분들 이름만 봐도 ㄷㄷㄷ..

다양한 영역에서 애자일하게 일하려는 시도가 있을만큼 배울점이 많습니다.)

 소규모의 팀(6~8명)이 자체적으로 기획/설계/개발/테스트를 빠르게 반복하여 고객에게 가치 있는 제품을 만드는 것을 목표로 합니다. 이러한 과정속에서 자체적으로 개발/운영을 수행하고 본인들에게 필요한 소프트웨어는 오픈소스를 기반으로 직접 만들고 개선하는 것이 일반적이 되었습니다. 특히 오픈소스 진영은 전 세계의 개발자가 함께 개발하는 만큼 그 완성도나 속도는 벤더사를 넘어선지 오래입니다.


 이제 중요한 것은 공정과 절차가 아니라 사람, 신뢰, 협업, 문화입니다. 모든 팀원이 주인정신을 가지고 일해야 합니다. 특히 개발자(과거 아키텍트,개발자,QA등으로 분리되어있던 역할 )가 자주 언급될 수 밖에 없는 것은 최종 결과물(소프트웨어)이 가장 중요하기 때문입니다. 개발자는 앞으로 더욱 주도적으로 제품개발에 참여하며 그 속에서 문제를 파악하고 해결방법을 찾아서 적용해야 하며 과거보다 훨씬 넓고 깊은 역량을 보유하고 있어야 하며 협업을 생활화해야 합니다.

 다시 돌아와서 Github세션을 살펴보겠습니다.

MS가 GitHub을 인수하고 개발자 중심의 회사로 변신한 것은 대단한 일입니다.

 과거 MS는 리눅스와 같은 오픈소스를 적대시하고 탄압했습니다. "리눅스는 암"이라는 유명한 말도 있었죠.  자신들의 비지니스의 걸림돌이었기 때문입니다. 절대로 상용제품을 대체할 수 없다고 했고 무시하며 개발자중심의 세상을 비판했습니다. 

그러나 2014년 "MS는 리눅스를 사랑한다"라고 발표했고, 현시점 오픈소스 기여자 1위는 MS입니다!

(2위가 구글입니다..)


 본 세션에서도 개발자의 생산성을 증가시키고 협업을 가속화하는 것에 집중하여 발표하고 있습니다. 많은 사람들의 우려와는 다르게 Github의 역할은 당분간 계속 변함이 없을 것으로 보입니다.



“MS는 개발자를 최우선으로 하는 기업이며

깃허브와 함께함으로써 개발자의 자유, 개방성, 혁신에 대한 우리의 의지를 강화할 것

“우리는 이번 인수 계약에 담긴 ‘공동체에 대한 책임’을 인식하고 있으며, 

모든 개발자가 시급한 문제를 해결하고 혁신할 수 있도록 돕는 데 최선을 다하겠다”

사티아 나델라 MS 회장, 발표문-



현실은 여전히 많은 개발자들이 소스코드를 작성하는데 50%미만의 시간을 쏟고 있습니다. 


Top 과 Low 의 차이입니다. 새로운 일에 할당하는 비율과, 잡무(?)에 할당하는 비율이 눈에 들어옵니다.

특히 이 그래프를 보면서 지금 아마존에서 일하고는 있는 개발자 친구들이 생각났습니다. 그 친구들의 말에 의하면 80%이상의 시간을 개발에 전념할 수 있도록 모든 절차와 제도가 마련되어 있다고 합니다.


 여러 방법과 도구, 문화를 통해서 이러한 변화를 주도하고 있음을 보여줍니다. 

(개발자들이 사용하는 모든 것이 오픈소스기반으로 Github에 모여있다고 해도 과언이 아닙니다. 누구나 가져가서 쓸수 있습니다. 그러나 쉬운 일은 아니고 공짜도 아니며 본인도 기여해야 합니다.)


최근 마이크로소프트의 행보를 보면

- Github인수등 오픈소스 적극지원

- Windows 10 리눅스 탑재

- VisualStudio Code 오픈소스화 (스크립트 부분에서는 VS Code가 점유율 90% !  )

- MS Azure의 리눅스 지원, 크로스 플랫폼, Intellij Plugin 지원등

등 시장의 반응을 봤을 때 방향은 제대로 잡고 가고 있다는 느낌을 받습니다.


<Databricks : 1% + 99% = AI 대중화>

 말이 필요없는 Databricks입니다. Spark는 Hadoop의 뒤를 이어서 거대한 생태계를 구축하고 있습니다. 

과거에는  자체적으로 클라우드 환경을 구축하고 서비스하려고 시도했지만 퍼블릭클라우드 변화에 맞춰서 MS Azure에 탑재하는 쪽으로 방향을 빠르게 전환한 듯 합니다. 

이전글: http://icthuman.tistory.com/entry/Spark-Summit-2017?category=572958


 Spark를 간단히 설명하면 대용량 병렬처리 프레임워크입니다. 

과거 Hadoop이 가지고 있던 디스크기반의 대용량처리의 한계점을 DAG의 개념을 통해서 메모리기반 처리로 바꾸어 최대 100배의 성능향상을 끌어냈습니다. 대부분의 ML에서는 반복작업이 많은데 Spark는 특히 반복문에서 성능향상이 탁월하기 때문에 ML분야에서 그 효과를 인정받았고 많은 라이브러리들이 Spark기반으로 변환되었습니다. 또한 SparkSQL을 통해서 프로그래밍 없이 SQL로 데이터를 조회할 수 있도록 사용자의 편의성을 증대시켰으며, lambda문법을 활용해서 데이터분석에 반드시 필요한 ETL의 기능까지도 흡수해버렸습니다. 추가로 Spark Streaming,(최근에는 Structured )를 활용해서 배치성 뿐만 아니라 실시간성 데이터까지도 처리합니다.

 이 모든기능을 포함하면서 다양한 분석함수들을 내장해서 누구나 쉽게 데이터분석을 할 수 있도록 하는것이 목표입니다. (Data Engineer와 Data Scientist가 같은 도구를 사용할 수 있다는 것은 큰 메리트입니다.)


Big Data를 해보신분들은 다 아시는 내용입니다. 왜 데이터 분석(AI) 가 어려울까요? 알고리즘이 어려워서? 

알고리즘은 크게 중요하지 않습니다. 아니 물론 중요하기는 합니다만 전문가들은 대부분 다음과 같은 이유를 꼽습니다.


1. (잘 전처리 된) 데이터가 없다. 

2. 무슨 도구를 써야 될지 모르겠다. (딥러닝 프레임워크는 정말 많습니다. Tensor Flow가 유명하긴 합니다.)

3. Data Scientist, Data Engineer가 없다. 혹은 협력이 어렵다.

이에 대해서 Databricks Runtime을 제공하여 ML을 돕는 환경을 Azure상에서 제공한다고 합니다.


또한 Data Preparation 부터 Model 생성/배포를 하나로 묶어주는 mlflow 역시 제공한다고 합니다. 저도 비슷한 것을 만들어봤던 경험이 있는데, Databricks가 한다니 완성도가 기대됩니다.

 각 유형에 따라서 MS Azure상에서 PaaS를 어떻게 활용하여 아키텍처를 구성할 수 있을지에 대한 가이드도 제공하고 있습니다. 다만 배치처리와 온라인처리를 동시에 하는 것이 최근의 추세인만큼 해당 내용을 반영하는 PaaS 구성요소도 빨리 제공이 되었으면 하는 바램입니다. (예를 들면 Druid라던지... )


이와 같은 시도를 통해서 AI의 대중화는 조금 더 빨리 찾아올 것으로 보입니다.


<레드햇 세미나와의 비교>

일전에 레드햇 세미나에서는 주로 클라우드로 인한 어플리케이션의 변화를 다루었습니다.

- 클라우드라는 의미처럼 인프라는 이제 구름속에서 보이지 않게 지탱해주는 존재가 되었습니다. 보다 비지니스와 어플리케이션에 집중할 수 있는 환경이 되었습니다. 또한 예전에는 각자 설치하고 사용했던 많은 환경들이 클라우드 서비스형태로 편하게 제공이 되기 때문에 이를 활용해서 더 많은 효과를 볼 수 있습니다.

- 모든 인프라의 요소들이 기능으로 제공됩니다.  이를 적절하게 활용하여 개발하면 장애복구, 배포/테스트, 릴리즈 등의 많은 작업을 자동화 시킬 수 있습니다. 소프트웨어 디파인이 가능합니다.

- Agile, Devops, CI/CD 등의 요소들도 클라우드에서 제공하기 때문에 연계가 가능합니다.


이번 MS Azure 세미나에서는 클라우드로의 통합, 활용방안, 앞으로의 방향성에 중점을 준 것으로 보입니다.

- 클라우드 도입으로 다양한 산업의 기술 / 비지니스 변화

- 클라우드로 전환할 때 정책, 비용, 도구, 고려사항

- 클라우드를 이용할 때 기존 요소들의 보완기능 (예, 오픈소스의 단점 등)

- 클라우드를 통해서 더 빠르고 쉽게 할 수 있는 것들 (AI, Data, Devops, Application)


<정리>

 여러 회사들이 주최하는 각 행사들은 알게 모르게 본인들의 강점을 어필하고 경쟁사와의 우위를 점하려는 의도들이 숨어있습니다. 대놓고 이야기하는 경우도 있고 아닌 경우도 있습니다. 그러나 여러 회사들이 동일하게 말하는 부분은 주의깊게 들을 필요가 있습니다. 세상이 변화하고 있는 방향이기 때문입니다. 

 모든 회사는 소프트웨어 회사가 될 것이다.
  우리나라 뿐 아니라 전 세계의 유명한 회사들을 보면 이를 명확히 알 수 있습니다. 기존의 도메인은 의미가 없습니다. 구글,네이버,카카오는 광고회사일까요? 애어비엔비는 숙박? 쿠팡, 카카오뱅크, 토스, 배달의 민족... 등 많은 유명한 회사들은 왜 이렇게 열심히 개발자를 뽑고 있을까요..
자체적인 소프트웨어 역량을 보유하고 산업전반의 기술변화와 더불어 사업구조도 같이 변화해야 합니다.

소프트웨어 역량, 그 중심에 개발자가 있습니다. 
 문제를 분석하고 논리적인 해결방법을 찾아서 기술을 통해서 구현하는 것이 개발자(팀)의 본질입니다. 수많은 개발자들이 오픈소스의 세상에서 다양한 제품를 만들고 공유하며 빠르게 개선해 나가고 있습니다. 과거처럼 벤더사가 주도해왔던 솔루션에 대한 종속성도 없어지고 있습니다. 또한 클라우드의 도입으로 많은 부분이 자동화되면서 인프라 또한 소프트웨어의 영역으로 넘어가고 있습니다. 개발자가 사용할 수 있는 기능들이 무궁무진합니다.

- AI는 빠르게 대중화가 될 것입니다. 
 오픈소스 그 중심에 AI가 있습니다. 더욱 넓은 분야에 활용될 것으로 보이며, 바로 가져다 쓸수 있는 데이터와 협업구조 개선, 도구의 출현들이 그 속도를 더욱 가속화 시킬것입니다. 
과거의 시스템에서는 데이터는 보존의 대상이었지만 이제는 활용의 대상이기 때문에 시스템을 만들때부터 접근을 다르게 해야 합니다. 최근 주목받는 여러 프로그래밍의 패러다임 변화역시 Control -> Data 중심으로 변화하고 있습니다.

- 전통적인 아키텍트, 개발자, QA등의 역할은 점차 사라지고 개발자로 통합됩니다.
 Product Owner/Manager등을 제외한 팀 멤버는 모두 제품(소스코드)에 관여합니다. 과거에 개발자만 소스코드를 작성했던 것과는 다르게 이제는 클라우드 배포를 위한 템플릿(인프라)부터 Layer구조/프레임워크/공통부(아키텍처), 비지니스 어플리케이션, 데이터, 테스트코드, 기술문서등 전 영역의 작업의 결과물이 소스코드로 완성되기 때문에 모든 인력이 개발자로 통합되고 있습니다. 포괄적인 문서보다 작동하는 소프트웨어를 중요시 하기 때문입니다.

<참고사이트>

https://agilemanifesto.org/iso/ko/manifesto.html

http://www.hani.co.kr/arti/economy/it/847716.html#csidx143ed953ac12498ac9e048e89f9c66a 

https://ko.wikipedia.org/wiki/%EC%95%A0%EC%9E%90%EC%9D%BC_%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4_%EA%B0%9C%EB%B0%9C

https://spark.apache.org/






'컨퍼런스' 카테고리의 다른 글

Red Hat Forum 2018 Seoul 후기  (0) 2018.11.07
Spark Summit 2017  (0) 2017.02.16

RedHat?

RedHat은 오픈소스 진영에서 가장 오래된 기업 중 하나입니다. 사업구조는 라이선스를 받는 것이 아니라 교육프로그램, 기술지원, 컨설팅으로 수입을 창출합니다. (기업용 소프트웨어를 판매하기도 합니다!)

사용하는 제품들은 대부분 오픈소스로 구성되어 있습니다. 주로 오픈소스 기반으로 공유하면서 개발을 진행하고 중요한 개선사항들이 발생하면 이를 기업용에 반영하는 사이클을 가져갑니다.

최근 IBM이 RedHat을 인수했으나 당분간 변화없이 갈 계획이라고 합니다.

OpenSource

오픈소스는 소스가 공개되어 있어 누구나 가져가서 사용할 수 있지만 무료를 의미하는 것은 아니니 오해하면 안됩니다. 어떻게 설정하고 어떻게 사용하느냐에 따라서 성능이 천차만별이고, 제품의 발전속도가 빠르다는 것이 특징입니다. 결국 잘 사용하기 위해서는 기술적 이해도와 개발역량등이 매우 중요합니다. 현재 시장에서 사용되는 기술스택은 거의 차이가 없습니다. 중요한 것은 KnowHow이고 RedHat은 여기에 초점을 맞추고 있습니다.

(간단히 사용하는 것은 쉬우나, 마스터하는 것은 어렵다. Like 게임)


 

개인적으로 Red Hat의 방향성이 참 마음에 든다. 오픈소스 시장에 딱 맞는 모델이 아닐지.. win win전략


-오전 세션

<Business Keynote: Digital Transformation & the Open Organization TBA>

새로 출현하는 모든 것들은 기존의 것들에 많은 영향을 주는데 Digital Transformation도 그러합니다. 조직, 문화, 도구 많은 것들이 변화하며, 모든 산업 영역이 도전을 받고 있습니다. 롯데카드 김창권 CEO가 나와서 간단히 사례를 공유하였습니다. 모든 것이 변화해야 Digital Transformation을 추진할 수 있습니다. 특히 Hybrid Cloud가 자주 언급되었는데 뒤에서 설명합니다.

 

<Simple Path To Secure and Automated Multicloud>

RedHat의 파트너인 JUNIPER 사가 현황을 공유하였습니다. JUNIPERSDN을 비롯한 Network분야를 전문으로 하며 멀티클라우드를 운영하는 것에 대해서 간단히 소개하였습니다.


자동화의 영역이 늘어난다는 것은 결국 Software Define xxx가 늘어나는 것을 의미합니다. (Network, DataCenter, Deployment ..)



 

<Technical Keynote : BigPharm Morphs into a Digitally Transformed Business>

BIG PHARM BIONODE 라는 두 회사가 하나로 합쳐지는 과정을 시뮬레이션하면서 데모를 하는 시간이었습니다. 두 개의 회사가 어떻게 다른 회사의 데이터모델을 공유하고 이를 어플리케이션에 반영하는지를 간단히 데모를 통해서 보여주었습니다.



 다른 도메인의 모델과 프로세스를 어떻게 엮을 것인지가 핵심 포인트며 이 부분을 코딩이 아닌 UI를 통해서 쉽게 할 수 있도록 하는 것이 목표라고 하였습니다. (정말?? IT업계의 마르지 않는 떡밥느낌이다..)

 

주로 간단한 예를 중심으로 데모가 진행되었기 때문에 아직 실제 비즈니스와는 Gap이 있다고보입니다

 

<Using Innovation to Drive Business Transformation>

Open Organization이야기가 다시 나옵니다. 전통적인 조직구조에서는 상위의사결정자가 무엇(WHAT)을 할지 결정하고, 중간관리자가 어떻게(HOW) 할지를 고민하면, 구성원은 이걸 왜(WHY) 해야하는지 고민했습니다.

Open Organization에서는 구성원 스스로 일의 목적, 이유(WHY)를 찾습니다. 스스로 동기부여를 합니다. 중간관리자는 어떻게(HOW) 하면 일이 되게 만들지를 고민하며, 상위의사결정자는 전체적인 방향성(WHAT)을 설정합니다. 조직의 모습과 문화와 일하는 방식이 바뀌어야 합니다.


Open Source가 발전하게 된 것도 비슷한 맥락입니다. 사용하는 사람들, 만드는 사람들이 일을 찾아내기 때문에 빠르고 동기부여가 됩니다. 모든 것이 투명하게 관리되고 문제를 숨기는 것이 아니라 공유하고 빠르게 해결하는데 초점을 맞춥니다. 필요에 따라 개발됩니다.

Agile, DevOps등도 결국 일하는 방식의 변화하는 바가 가장 큽니다.

 

<Session A-1 Red Hat과 함께하는 하이브리드 클라우드 구축 방안>

멀티클라우드는 단순히 여러 종류의 클라우드를 사용하는 것이지만 하이브리드 클라우드는 이러한 여러 종류의 클라우드를 하나의 기술(OpenStack)로 관리하는 것이 목표입니다나아가서는 기존 Legacy까지!

물론 아직 갈길이 멉니다. (ex, 리전이 다를경우 Storage공유가 불가능함)

 일반적으로 사람들이 혼돈하는 것은 클라우드에서 중요한 것은 인프라라고 생각하는 것입니다.

중요한 것은 Application입니다. ApplicationScale Out가능하고 fault tolerance하게 개발되어야 하는 것이 먼저입니다. Application이 그렇게 개발되어 있다면 BareMetal, PrivateCloud, PublicCloud는 사실 크게 의미가 없습니다. 기존에도 MicroService는 있었습니다. 인프라는 이것을 기능적으로 더 편리하게 해주는 것입니다. 말 그대로 Cloud(구름)이기 때문에 DB, Network가 어떻게 구성되어 있는지 신경을 쓸 필요가 없게 되는 것입니다.

이제는 모든 것이 Software Define으로 가능합니다. “모든 기업은 소프트웨어 기업이다라는 말처럼 상품/비즈니스/개발/배포/인프라 모든 것이 소프트웨어를 통해 자동화가 됩니다. 적절한 API를 잘 사용하는 사람이 중요합니다.

 

<Session B-2 클라우드 네이티브 애플리케이션 개발을 위한 8가지 단계>

기술변화에 대한 배경이해가 필요합니다. 새로운 것을 개발하는 측면과 기존 것을 운영하는 측면의 대립을 의미하는 것이 아니라 보다 빠르게 개발하고 빠르게 배포하는 것이 궁극적인 목표입니다.

 

Service-based, API-Driven, Containers, DevOps가 일반적인 클라우드 네이티브App의 요소로 볼 수 있습니다.

결국 시장이 빠르게 변하고 있기 때문에 그에 맞춰서 개발도 빠르게, 변경/배포도 빠르게 되어야 합니다.


8단계를 통한 설명 (8단계는 선택적으로 가능함!)

1단계 : 대부분의 큰 조직들이 우리는 DevOps를 적용했다고 하지만 무엇을 하고 있는지에 대해서는 명확히 말하지 못합니다.


특히 사업,App,Infra등에서 실패를 겪는 것에 거부감을 가지면 안됩니다. 빠르게 극복하는 것에 초점을 두어야 합니다. 아무도 사용해본 적이 없고, 만들어 본적이 없기 때문에 당연히 실패합니다.  (ex, Google BigTable, Amazon OpenStack, )

2단계 : 기존 구조를 개선합니다. API기반으로 변경해나가고 Container형으로 만들어갑니다.

3단계 : 클라우드를 위한 서비스를 사용합니다.

4단계 : 필요에 따라 가장 적합한 기술을 선택합니다. (장표의 툴은 의미가 다릅니다.)

5단계 : 개발자가 필요에 따라서 인프라를 선택하고 사용합니다.

6단계 : 배포를 위한 내용들을 자동화합니다.

7단계 : CI/CD PipeLine을 구성합니다. 단순배포 뿐만 아니라 변경분만 배포, 실패시 Rollback, UnitTest등의 액션들을 자동화합니다.

8단계 : 부분적으로 점진적으로 Service형태의 아키텍처로 만듭니다. (과거 SOA, Web, 의 연장, 내외부 포함)


<Session B-3 API 중심의 애자일한 통합 방법 : API에서부터 iPaaS까지>

과거의 개발방식과 현재의 개발방식에는 많은 차이가 있습니다. 이를 어떻게 통합해 나갈 것인가.?

 

Hybrid Cloud Public Cloud, Private Cloud뿐만 아니라 과거의 시스템도 하나로 통합해야 한다고 봅니다.  (서비스, 어플리케이션, API, 데이터) 관점


주의해야 할 점은 Centralize가 아닌 필요한 곳만 통합하는 것이 되어야 한다는 점입니다.

(RedHat API, Disributed Integraion, Container 관점으로 접근


<Session B-5 Red Hat solutions on Azure와 함께하는 Empowering Digital Transformation>


기조 연설에 나왔던 내용입니다. 증기기관의 발명이 모든 것을 바꾸었고, 전기의 발명이 그러했듯Digital Transformation이 모든 기존의 방법을 바꾸고 있습니다.


오픈소스에 대한 마이크로 소프트의 접근도 바뀌어 가고 있습니다.

과거 Vendor사에 의존적이었던 것들이 이제 오픈소스로 누구나 접근할 수 있으며 필요에 의해 만들고 빠르게 공유하며 발전하는 세상이 되었습니다.


Red HatMicrosoft도 같이 일합니다!

Linux 든 Windonws 든 RedHat Midlleware구입하면 모두 지원한다고 함!)

심지어 OpenJDK도 OS관계없이 지원함.


<정리 >

RedHat Forum에서 전반적으로 말하는 것이 시장의 흐름과 크게 다르지 않습니다.

1.     Cloud의 등장이 Legacy의 사라짐을 의미하지는 않습니다. 다만 API를 중심으로 시스템들이 통합되어가는 모습이 될 것입니다.

2.     모든 기업은 소프트웨어 기업이 될것이다. 는 이미 이루어지고 있고..

3.     또한 IT내에서도 하드웨어 역시 소프트웨어로 통합되고 있습니다. (Software Defined Network, Datacenter)

4.     시스템개발 뿐만 아니라 운영/자원관리/배포/인프라의 영역도 개발로 전환되고 있으며 이에 따라 IT전문가의 영역도 개편되고 있습니다

     기존의 SA,TA,DA,DBA의 역할구분도 점점 없어짐. 주변에 보면 부지런한 DA,DBA들은 코딩 배워서 NoSQL병행하신지 오래되었고, SA,TA분들도 클라우드업체의 솔루션 아키텍트로 전환해서 제공되는 구성요소를 활용해서 고객에게 제공하는 (코딩) 영역으로 전환하고 있음.

     거꾸로 개발자들이 Network, DB, OS 공부해서 이제는 클라우드에서 알아서 골라서 설치하고 튜닝해서 사용하고 있음.

     기존의 영역만 고집하는 사람은 시장에서 도태됨.

5.     기술의 발전 흐름은 결국 시장의 변화에 대응하기 위함입 

     빠르게 개발하여 시장에 적기에 출시하는 것이 Agile이고 

      그 피드백을 반영하여 다시 제품에 녹이는 것이 DevOps

      CI/CD는 이러한 과정에서 수작업을 줄여서 속도를 개선하고 실수를 없애는 것

      사용량에 따라서 유동적으로 변화 가능한 Application구조가 MSA이며

      이를 뒷받침하는 기술이 container, cloud

       각각의 비즈니스 요건에 따라서 다른 기술을 사용하는 것이 polyglot, Service-Based이며

       이러한 시스템을 다시 하나로 합치기 위해서 API-Based가 중요해지고 있음.

6.   Cloud에서 인프라는 큰 의미가 없음. 중요한 것은 Application임. 

     Application이 Scale out, Fault tolerance 하도록 만들어져야 함. 예전에도 이러한 구조의 프로그램들은 있었으나 인프라기술이 뒷받침되지 못해서 수작업으로 진행해야 했던 부분들임

     이제는 Cloud에서 이러한 것들을 편하게 할 수 있도록 기술적으로 지원하고 있음

     말그대로 구름뒤는 신경쓸 필요없이 Application을 유연하게 만드는 것이 집중하면 됨.

     거꾸로 Application이 그렇지 않다면 무슨 인프라를 사용하던 크게 나아지지 않음



 모든 것이 연결된다. 기술이기도 하고 문화이기도 하고 도구 이기도 함!

 이중에 하나라도 결여가 되면 진정할 발전이 어려움

 (다들 잘 아시는 콘웨이의 법칙, 소프트웨어 구조가 소프트웨어를 개발하는 조직의 구조를 따라갑니다.)



'컨퍼런스' 카테고리의 다른 글

Azure Everywhere 2019 후기  (0) 2019.01.12
Spark Summit 2017  (0) 2017.02.16
Spark Summit 2017 Boston에 다녀왔습니다.^^ 간단히 느낀점만 공유드리면,

1. Spark Ecosystem이 이제 곧 Hadoop Ecosystem을 능가할 것으로 예상합니다. 기존 분산처리시스템이 Store를 담당하는 부분은 거대하지만 정작 Execute에 대한 부분은 취약한 것을 몸은 크고 뇌는 작은 공룡에 비유하고 있습니다. 이와 반대로 뇌를 담당하는 execute영역에서는 Spark가 선두주자이며 storage는 필요에 따라 선택가능하고 HDFS외의 사례가 많음을 보이고 있습니다.

2. 특히 Spark는 기존의 약점이었던 실시간처리영역을 보완하기 위해서 많은 부분을 준비하고 있으며 Structered Streaming을 키워드로 내세우고 2.2  2.3릴리즈 준비에 박차를 가하고 있습니다. High Level API를 통해서 기존과 동일한 방식으로 코딩환경을 제공할 것으로 예상되며 Apache Beam과 유사성이 보이는데 더 지켜봐야할 것 같습니다.

3. 2010년이후 현재까지 Cpu의발전속도는 거의 없으나 Network,storage는 10배의성장을 보여주는 부분에 주목하여 이를 분산병렬처리의 핵심요소로 보고 여러가지 프로젝트가 진행되고 있었습니다. (ex, carnobdata tungsten parquet등)

전체적으로 방향성은 Store와 Execute를 분리하고 각자요건에 맞게 다양한 요소를 조합하여 사용하는 것이 대세입니다. 특히 streaming에서는 kafka를 안쓰는 곳이 없는 것 같습니다. 또한 분석영역에서 language의 점유율이 scala는 감소한반면 python은 2배가까이 증가하였습니다.

마지막으로 databricks를 포함한 많은 업체가 이러한 기능들을 클라우드상에서 서비스로 제공하기 위해서 노력하고 있습니다.

상세한 내용들은 시간을 내어 정리하고 공부해야 할 것 같습니다^^

'컨퍼런스' 카테고리의 다른 글

Azure Everywhere 2019 후기  (0) 2019.01.12
Red Hat Forum 2018 Seoul 후기  (0) 2018.11.07

+ Recent posts