Offcanvas

���������

모질라, 브라우저에 파이썬 통합하는 ‘파이어다이드’ 프로젝트 분리

모질라가 ‘파이어다이드(Pyodide)’를 커뮤니티 주도의 독립 프로젝트로 분리(spin out)했다. 웹어셈블리로 컴파일된 사이썬(CPython) 3.8 인터프리터로 구성된 파이어다이드는 파이썬을 웹 브라우저에서 실행할 수 있도록 한다.    파이어다이드 프로젝트는 독립된 깃허브(GitHub) 조직에 새로운 보금자리(github.com/pyodide)를 마련했다. 공식 문서는 이곳(pyodide.org)에서 확인할 수 있다. 향후 이 프로젝트는 자원봉사로 참여하는 컨트리뷰터에 의해 유지관리될 예정이다. 이와 관련한 거버넌스 문서 그리고 파이썬 코드 성능 향상, 다운로드 크기 감소, 패키지 로딩 간소화 등의 목표를 정리한 프로젝트 로드맵이 게시됐다.   파이어다이드는 파이썬 패키지 인덱스(Python Package Index; PyPi)의 PPW(pure Python wheel)로 모든 파이썬 패키지를 설치할 수 있다. 또 파이어다이드에는 파이썬 패키지를 자바스크립트에 노출하고, DOM을 포함한 브라우저 UI를 파이썬에 노출하는 외부 함수 인터페이스가 있다.  이 밖에도 해당 프로젝트는 넘파이(NumPy), 판다(Panda), 맷플롯립(Matplotlib), 사이파이(SciPy), 사이킷런(Scikit-learn) 등의 많은 파이썬 과학 패키지를 브라우저에서 실행할 수 있도록 지원한다. 개발자는 브라우저의 REPL(Read Eval Print Loop)에서 파이어다이드를 사용해볼 수 있다.  모질라는 지난 4월 22일 이 프로젝트의 독립을 발표하는 한편 주요 유지관리 개선, 중앙 API 재설계, 오류 및 메모리 누수 제거 등을 특징으로 하는 파이어다이드 0.17 릴리즈도 출시했다.  본래 브라우저에서 데이터 과학을 지원하는 아이오다이드(Iodide) 프로젝트에서 파이썬을 사용할 수 있도록 모질라 내부에서 개발됐던 파이어다이드는 큰 관심을 끌었으며, 현재 모질라 외부의 많은 프로젝트에서 사용되고 있...

모질라 파이어다이드 파이썬 데이터 과학 사이썬 깃허브 넘파이 판다 맷플롯립 사이파이 사이킷런 브라우저 아이오다이드 러스트 웹 개발 오픈소스

2021.04.26

모질라가 ‘파이어다이드(Pyodide)’를 커뮤니티 주도의 독립 프로젝트로 분리(spin out)했다. 웹어셈블리로 컴파일된 사이썬(CPython) 3.8 인터프리터로 구성된 파이어다이드는 파이썬을 웹 브라우저에서 실행할 수 있도록 한다.    파이어다이드 프로젝트는 독립된 깃허브(GitHub) 조직에 새로운 보금자리(github.com/pyodide)를 마련했다. 공식 문서는 이곳(pyodide.org)에서 확인할 수 있다. 향후 이 프로젝트는 자원봉사로 참여하는 컨트리뷰터에 의해 유지관리될 예정이다. 이와 관련한 거버넌스 문서 그리고 파이썬 코드 성능 향상, 다운로드 크기 감소, 패키지 로딩 간소화 등의 목표를 정리한 프로젝트 로드맵이 게시됐다.   파이어다이드는 파이썬 패키지 인덱스(Python Package Index; PyPi)의 PPW(pure Python wheel)로 모든 파이썬 패키지를 설치할 수 있다. 또 파이어다이드에는 파이썬 패키지를 자바스크립트에 노출하고, DOM을 포함한 브라우저 UI를 파이썬에 노출하는 외부 함수 인터페이스가 있다.  이 밖에도 해당 프로젝트는 넘파이(NumPy), 판다(Panda), 맷플롯립(Matplotlib), 사이파이(SciPy), 사이킷런(Scikit-learn) 등의 많은 파이썬 과학 패키지를 브라우저에서 실행할 수 있도록 지원한다. 개발자는 브라우저의 REPL(Read Eval Print Loop)에서 파이어다이드를 사용해볼 수 있다.  모질라는 지난 4월 22일 이 프로젝트의 독립을 발표하는 한편 주요 유지관리 개선, 중앙 API 재설계, 오류 및 메모리 누수 제거 등을 특징으로 하는 파이어다이드 0.17 릴리즈도 출시했다.  본래 브라우저에서 데이터 과학을 지원하는 아이오다이드(Iodide) 프로젝트에서 파이썬을 사용할 수 있도록 모질라 내부에서 개발됐던 파이어다이드는 큰 관심을 끌었으며, 현재 모질라 외부의 많은 프로젝트에서 사용되고 있...

2021.04.26

‘넘파이(NumPy)’ 버전 1.20 출시··· 타입 어노테이션 지원

‘넘파이(NumPy)’ 버전 1.20이 출시됐다. 이는 과학 연산을 지원하는 파이썬 기본 패키지다. 이번 릴리즈에는 타입 어노테이션 및 SIMD(Single Instruction, Multiple Data; 하나의 명령어로 여러 데이터를 동시에 처리하는 방식) 사용 확장 등의 새로운 기능들이 추가됐다.    릴리즈 노트에 따르면 넘파이 1.20에는 타입 어노테이션이 추가됐다. 최종 사용자에게 유용한 타입을 포함하는 새로운 numpy.typing 모듈도 제공된다. 현재 사용할 수 있는 타입에는 배열로 강제 변환될 수 있는 객체인 ArrayLike와 dtype으로 강제 변환될 수 있는 객체인 DtypeLike가 있다.  또한 범용 함수(ufuncs)의 실행 속도를 향상하기 위해 SIMD 사용을 확장했다. NEP-38(NumPy Enhancement Proposal) SIMD 성능 최적화를 위한 개선 작업도 이뤄졌다. 이 밖에 넘파이 1.20.0의 다른 기능 및 개선사항은 다음과 같다.  • dtype(data type object)을 확장하는 더 쉬운 경로를 제공하기 위해 이를 변경하고 구현체를 캐스팅하는 작업이 진행 중이다.  • 파이썬용 C 확장자를 작성하기 위한 사이썬(Cython) 언어 버전 3.0을 예비 지원한다.  • randon.Generator 클래스에 새로운 순열 함수가 추가됐다.  • 색인 결과가 비어있는 경우에도 색인 오류가 보고된다.  • all과 any의 불리언 연산(Boolean)에서 배열의 지정된 요소 또는 하위 축만 고려하기 위해 키워드 인수가 추가됐다.  • 이제 numpy.typing의 타입을 런타임에 가져올 수 있다.  • sliding_window_view 함수는 넘파이 배열에 관한 슬라이딩 창 보기를 제공한다.  • 배열을 만들거나 할당할 때 모든 경우에서 넘파이 스칼라는 이제 넘파이 배열과 동일하게 캐스팅된다. ...

넘파이 파이썬 데이터 과학 SIMD 사이썬 기술 부채

2021.03.02

‘넘파이(NumPy)’ 버전 1.20이 출시됐다. 이는 과학 연산을 지원하는 파이썬 기본 패키지다. 이번 릴리즈에는 타입 어노테이션 및 SIMD(Single Instruction, Multiple Data; 하나의 명령어로 여러 데이터를 동시에 처리하는 방식) 사용 확장 등의 새로운 기능들이 추가됐다.    릴리즈 노트에 따르면 넘파이 1.20에는 타입 어노테이션이 추가됐다. 최종 사용자에게 유용한 타입을 포함하는 새로운 numpy.typing 모듈도 제공된다. 현재 사용할 수 있는 타입에는 배열로 강제 변환될 수 있는 객체인 ArrayLike와 dtype으로 강제 변환될 수 있는 객체인 DtypeLike가 있다.  또한 범용 함수(ufuncs)의 실행 속도를 향상하기 위해 SIMD 사용을 확장했다. NEP-38(NumPy Enhancement Proposal) SIMD 성능 최적화를 위한 개선 작업도 이뤄졌다. 이 밖에 넘파이 1.20.0의 다른 기능 및 개선사항은 다음과 같다.  • dtype(data type object)을 확장하는 더 쉬운 경로를 제공하기 위해 이를 변경하고 구현체를 캐스팅하는 작업이 진행 중이다.  • 파이썬용 C 확장자를 작성하기 위한 사이썬(Cython) 언어 버전 3.0을 예비 지원한다.  • randon.Generator 클래스에 새로운 순열 함수가 추가됐다.  • 색인 결과가 비어있는 경우에도 색인 오류가 보고된다.  • all과 any의 불리언 연산(Boolean)에서 배열의 지정된 요소 또는 하위 축만 고려하기 위해 키워드 인수가 추가됐다.  • 이제 numpy.typing의 타입을 런타임에 가져올 수 있다.  • sliding_window_view 함수는 넘파이 배열에 관한 슬라이딩 창 보기를 제공한다.  • 배열을 만들거나 할당할 때 모든 경우에서 넘파이 스칼라는 이제 넘파이 배열과 동일하게 캐스팅된다. ...

2021.03.02

개발자들이 ‘파이썬’에 바라는 건?... “정적 타입 검사”

파이썬 소프트웨어 재단(Python Software Foundation)에서 실시한 설문조사 결과에 따르면 개발자들이 파이썬에 가장 원하는 기능은 정적 타입 검사(Static Typing)와 엄격한 타입 힌팅(Strict Type Hinting)이었다. 성능 개선이 간발의 차이로 그 뒤를 이었다.    이번 설문조사에 참여한 파이썬 개발자들은 이 프로그래밍 언어를 사용하는 주된 이유로 단순성과 사용 편의성을 꼽았다. 반면에 파이썬에 추가됐으면 하는 기능과 관련해서는 정적 타입 검사 및 성능 개선 등을 원하고 있는 것으로 나타났다.  한편 파이썬 소프트웨어 재단과 젯브레인은 파이썬 개발자들을 대상으로 매년 설문조사를 실시하고 있다. 지난 2월 23일 발표된 ‘2020 파이썬 개발자 서베이(Python Developers Survey 2020)’는 전 세계 약 200개 국가/지역 2만 8,000명 이상의 파이썬 개발자들을 대상으로 2020년 10월에 진행됐다.  구체적으로 살펴보자면 가장 선호하는 파이썬 기능을 묻는 질문에는 전체 응답자의 37%가 ‘단순 명료한 구문, 문법적 설탕, 학습 용이성’이라고 밝혔다. 이어서 ‘작성하고 읽기 쉬운 코드, 고수준 언어(30%)’가 2위를 차지했다.   파이썬에 추가됐으면 하는 기능을 묻는 질문에는 21%의 개발자들이 정적 타입 검사와 엄격한 타입 힌팅을 꼽았으며, 성능 개선(20%)이 간소한 차이로 그 뒤를 이었다. 개선된 동시성 및 병렬처리(15%)는 3위를 기록했다. 이 밖에 다른 설문조사 결과는 다음과 같다.  • 전체 응답자의 85%가 파이썬을 메인 프로그래밍 언어로 사용한다고 말했다.  • 파이썬을 메인 프로그래밍 언어로 사용하는 개발자들의 경우 파이썬을 어디에 사용하느냐는 질문에 데이터 분석(55%), 웹 개발(50%), 머신러닝(40%)이 상위권을 차지했다.  • 자바스크립트가 파이썬과 함께 가장 많이 사용되는 언어인 것으로 ...

개발자 파이썬 프로그래밍 언어 개발 언어 젯브레인 정적 타입 검사 타입 힌팅 자바스크립트 데이터 분석 웹 개발 머신러닝 플라스크 장고 넘파이 판다스 맷플롯립

2021.02.26

파이썬 소프트웨어 재단(Python Software Foundation)에서 실시한 설문조사 결과에 따르면 개발자들이 파이썬에 가장 원하는 기능은 정적 타입 검사(Static Typing)와 엄격한 타입 힌팅(Strict Type Hinting)이었다. 성능 개선이 간발의 차이로 그 뒤를 이었다.    이번 설문조사에 참여한 파이썬 개발자들은 이 프로그래밍 언어를 사용하는 주된 이유로 단순성과 사용 편의성을 꼽았다. 반면에 파이썬에 추가됐으면 하는 기능과 관련해서는 정적 타입 검사 및 성능 개선 등을 원하고 있는 것으로 나타났다.  한편 파이썬 소프트웨어 재단과 젯브레인은 파이썬 개발자들을 대상으로 매년 설문조사를 실시하고 있다. 지난 2월 23일 발표된 ‘2020 파이썬 개발자 서베이(Python Developers Survey 2020)’는 전 세계 약 200개 국가/지역 2만 8,000명 이상의 파이썬 개발자들을 대상으로 2020년 10월에 진행됐다.  구체적으로 살펴보자면 가장 선호하는 파이썬 기능을 묻는 질문에는 전체 응답자의 37%가 ‘단순 명료한 구문, 문법적 설탕, 학습 용이성’이라고 밝혔다. 이어서 ‘작성하고 읽기 쉬운 코드, 고수준 언어(30%)’가 2위를 차지했다.   파이썬에 추가됐으면 하는 기능을 묻는 질문에는 21%의 개발자들이 정적 타입 검사와 엄격한 타입 힌팅을 꼽았으며, 성능 개선(20%)이 간소한 차이로 그 뒤를 이었다. 개선된 동시성 및 병렬처리(15%)는 3위를 기록했다. 이 밖에 다른 설문조사 결과는 다음과 같다.  • 전체 응답자의 85%가 파이썬을 메인 프로그래밍 언어로 사용한다고 말했다.  • 파이썬을 메인 프로그래밍 언어로 사용하는 개발자들의 경우 파이썬을 어디에 사용하느냐는 질문에 데이터 분석(55%), 웹 개발(50%), 머신러닝(40%)이 상위권을 차지했다.  • 자바스크립트가 파이썬과 함께 가장 많이 사용되는 언어인 것으로 ...

2021.02.26

김진철의 How-to-Big Data | 빅데이터와 클라우드 기술 (6)

CMS 온라인 데이터 수집 시스템의 모니터링 문제 흔히 모니터링하면 어떤 시스템의 상태를 관찰하고 운영하기 위해 필수적으로 만들어야 하는 기능이기도 하면서, 왠지 첨단 기술이 들어가지 않는 허드렛일이라는 생각을 많이 하게 되는 것 같다. 하지만, LCG와 같이 전 지구에 걸쳐 모니터링할 시스템이 흩어져 있어 모니터링할 시스템의 정보를 모아 수집하기가 어려운 경우, XDAQ이 운영되는 CMS 온라인 데이터 수집 시스템과 같이 그 시스템의 요구사항 수준이 높고 구성이 복잡하다. 구성하는 노드 수가 많은 시스템 같은 경우에는 시스템의 문제를 쉽게 발견하고, 해결하여 장애 없는 운영을 지원할 수 있는 효과적인 모니터링 시스템을 만드는 것 자체가 큰 기술적인 난제가 된다. 왜 그런지 한번 같이 생각해보자. XDAQ 미들웨어가 운영되었던 CMS 온라인 데이터 수집 시스템에서의 모니터링 문제를 같이 한번 생각해보기로 하자. 이 문제는 필자가 XDAQ 개발팀에서 일할 때 해결하기 위해 노력했던 문제 중의 하나로, 운영 지원 시스템(Operation Support System; OSS)에서 운영 지능화(operation intelligence) 시스템을 구축하는 것이 왜 중요한지 생각해보는 좋은 예가 될 것으로 생각한다. 필자가 XDAQ 팀에서 일했던 당시 CMS 온라인 데이터 수집 시스템 개발에서 풀어야 했던 문제 중의 하나가 CMS 온라인 데이터 수집 시스템 응용 프로그램을 개발하는 소프트웨어 엔지니어들이 어떻게 XDAQ을 이용해서 모니터링과 상태 진단 기능을 쉽게 개발하느냐는 것이었다. 데이터베이스에 저장된 시스템 상태 정보값만을 가져다가 시간값과 함께 그래프나 차트 소프트웨어를 이용해서 그냥 그려주면 되지 않겠어라고 생각하는 독자가 있을지 모르겠지만, 그렇게 간단한 문제가 아니라는 것을 같이 생각해보자. 첫번째로, XDAQ 응용 프로그램의 모니터링 정보가 하나의 서버에 모여 있지 않는다는 것이다. 지난 열세번째 글에서 필자가 설명했듯이 X...

CIO root MOLAP ROLAP PALO 넘파이 파이둡 파이스파크 엑스큐브 BSS 싸이파이 CERN 김진철 빅데이터 하둡 스플렁크 파이썬 데브옵스 R OSS 스파크 큐레이션 마이크로소프트 엑셀

2018.02.26

CMS 온라인 데이터 수집 시스템의 모니터링 문제 흔히 모니터링하면 어떤 시스템의 상태를 관찰하고 운영하기 위해 필수적으로 만들어야 하는 기능이기도 하면서, 왠지 첨단 기술이 들어가지 않는 허드렛일이라는 생각을 많이 하게 되는 것 같다. 하지만, LCG와 같이 전 지구에 걸쳐 모니터링할 시스템이 흩어져 있어 모니터링할 시스템의 정보를 모아 수집하기가 어려운 경우, XDAQ이 운영되는 CMS 온라인 데이터 수집 시스템과 같이 그 시스템의 요구사항 수준이 높고 구성이 복잡하다. 구성하는 노드 수가 많은 시스템 같은 경우에는 시스템의 문제를 쉽게 발견하고, 해결하여 장애 없는 운영을 지원할 수 있는 효과적인 모니터링 시스템을 만드는 것 자체가 큰 기술적인 난제가 된다. 왜 그런지 한번 같이 생각해보자. XDAQ 미들웨어가 운영되었던 CMS 온라인 데이터 수집 시스템에서의 모니터링 문제를 같이 한번 생각해보기로 하자. 이 문제는 필자가 XDAQ 개발팀에서 일할 때 해결하기 위해 노력했던 문제 중의 하나로, 운영 지원 시스템(Operation Support System; OSS)에서 운영 지능화(operation intelligence) 시스템을 구축하는 것이 왜 중요한지 생각해보는 좋은 예가 될 것으로 생각한다. 필자가 XDAQ 팀에서 일했던 당시 CMS 온라인 데이터 수집 시스템 개발에서 풀어야 했던 문제 중의 하나가 CMS 온라인 데이터 수집 시스템 응용 프로그램을 개발하는 소프트웨어 엔지니어들이 어떻게 XDAQ을 이용해서 모니터링과 상태 진단 기능을 쉽게 개발하느냐는 것이었다. 데이터베이스에 저장된 시스템 상태 정보값만을 가져다가 시간값과 함께 그래프나 차트 소프트웨어를 이용해서 그냥 그려주면 되지 않겠어라고 생각하는 독자가 있을지 모르겠지만, 그렇게 간단한 문제가 아니라는 것을 같이 생각해보자. 첫번째로, XDAQ 응용 프로그램의 모니터링 정보가 하나의 서버에 모여 있지 않는다는 것이다. 지난 열세번째 글에서 필자가 설명했듯이 X...

2018.02.26

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.5.0.9