2010 CASCON - Towards a integrated network of data and services for the life ...Michel Dumontier
Towards a integrated network of data and services for the life sciences Modern biological knowledge discovery requires access to machine-understandable data that can be searched, retrieved, and subsequently analyzed using a wide array of analytical software and services. The Semantic Automated Discovery and Integration (SADI) framework is a set of conventions to formalize web service inputs and outputs using OWL ontologies that enable the automatic discovery and invocation of Semantic Web services. In this talk, I will walk through a worked example in the design and deployment of chemical semantic web services using the Chemical Development Toolkit, chemical descriptors from the Chemical Information Ontology (CHEMINF), and the Semanticscience Integrated Ontology (SIO) as a unifying, upper level ontology of basic types and relations. I will discuss how one can make use of the SADI-enabled SHARE client to reason about data obtained from Bio2RDF, the largest linked open data project, and automatically invoke chemical semantic web services to determine a chemical's drug-likeness. If you want to see the potential of the Semantic Web being realized, this talk is for you.
2010 CASCON - Towards a integrated network of data and services for the life ...Michel Dumontier
Towards a integrated network of data and services for the life sciences Modern biological knowledge discovery requires access to machine-understandable data that can be searched, retrieved, and subsequently analyzed using a wide array of analytical software and services. The Semantic Automated Discovery and Integration (SADI) framework is a set of conventions to formalize web service inputs and outputs using OWL ontologies that enable the automatic discovery and invocation of Semantic Web services. In this talk, I will walk through a worked example in the design and deployment of chemical semantic web services using the Chemical Development Toolkit, chemical descriptors from the Chemical Information Ontology (CHEMINF), and the Semanticscience Integrated Ontology (SIO) as a unifying, upper level ontology of basic types and relations. I will discuss how one can make use of the SADI-enabled SHARE client to reason about data obtained from Bio2RDF, the largest linked open data project, and automatically invoke chemical semantic web services to determine a chemical's drug-likeness. If you want to see the potential of the Semantic Web being realized, this talk is for you.
Eu.Ro.Sa.In. nasce dalla pluridecennale esperienza di RISKOPE International S.A. nel campo dell’analisi del rischio e costituisce il Partner ideale per tutte le attività di Road Safety e per la certificazione europea delle strade.
L’Istituto ha sede in Svizzera, uffici in Italia ed è operante in tutta Europa; opera nel settore di certificazione sulla rispondenza delle condizioni di sicurezza delle infrastrutture stradali e delle opere ad esse connesse ai fini della mobilità, a garanzia dell'Ente proprietario o gestore.
Eu.Ro.Sa.In. nasce con l'obiettivo principale di promuovere e migliorare la sicurezza stradale nell'ottica della riduzione degli incidenti stradali e dei conseguenti infortuni.
L’Istituto non si occupa di progettazione, direzione lavori e/o realizzazione delle infrastrutture; è specializzato nella certificazione delle strade e dei progetti ed è in grado di fornire una consulenza completa attraverso specialisti di comprovata esperienza e professionalità.
Eu.Ro.Sa.In. è un organismo imparziale ed autonomo che verifica
la conformità dei progetti alle regole della sicurezza stradale;
la sicurezza delle infrastrutture e degli impianti stradali esistenti;
la manutenzione nel tempo degli standard di sicurezza delle infrastrutture.
Eu.Ro.Sa.In. è in grado di analizzare un progetto e fornire un giudizio sulla conformità rispetto alla sicurezza stradale e utili indicazioni per l'eventuale miglioramento.
Eu.Ro.Sa.In. è in grado di monitorare le infrastrutture esistenti e segnalare le eventuali criticità che possono emergere.
A presentation from the 2008 HIV Health and Treatments Update forum held in Sydney on 25 Nov 2008.
Part 4: a look at HIV drugs in development, presented by Bill Whittaker.
Multicultural health standards around the worlddiversityRx
This presentation reviews key standards, performance measures, and laws related to multicultural health and cultural competence from the US, Australia, and Scotland. Presented at the EU COST ADAPT meeting, Amsterdam, October 2012.
Line Upgrade Deferral Scenarios for Distributed Renewable Energy ResourcesIain Sanders
This project examined the economic viability of using distributed renewable resources to defer costly electricity distribution network upgrades in rural areas using information provided by three independent electricity distribution networks.
How to go from an idea related to development, to forming it into a post, and ultimately to giving a talk about it at an event/meetup.
I've given talks for many years, and am currently the CEO of a global network of remote web developers.
Eu.Ro.Sa.In. nasce dalla pluridecennale esperienza di RISKOPE International S.A. nel campo dell’analisi del rischio e costituisce il Partner ideale per tutte le attività di Road Safety e per la certificazione europea delle strade.
L’Istituto ha sede in Svizzera, uffici in Italia ed è operante in tutta Europa; opera nel settore di certificazione sulla rispondenza delle condizioni di sicurezza delle infrastrutture stradali e delle opere ad esse connesse ai fini della mobilità, a garanzia dell'Ente proprietario o gestore.
Eu.Ro.Sa.In. nasce con l'obiettivo principale di promuovere e migliorare la sicurezza stradale nell'ottica della riduzione degli incidenti stradali e dei conseguenti infortuni.
L’Istituto non si occupa di progettazione, direzione lavori e/o realizzazione delle infrastrutture; è specializzato nella certificazione delle strade e dei progetti ed è in grado di fornire una consulenza completa attraverso specialisti di comprovata esperienza e professionalità.
Eu.Ro.Sa.In. è un organismo imparziale ed autonomo che verifica
la conformità dei progetti alle regole della sicurezza stradale;
la sicurezza delle infrastrutture e degli impianti stradali esistenti;
la manutenzione nel tempo degli standard di sicurezza delle infrastrutture.
Eu.Ro.Sa.In. è in grado di analizzare un progetto e fornire un giudizio sulla conformità rispetto alla sicurezza stradale e utili indicazioni per l'eventuale miglioramento.
Eu.Ro.Sa.In. è in grado di monitorare le infrastrutture esistenti e segnalare le eventuali criticità che possono emergere.
A presentation from the 2008 HIV Health and Treatments Update forum held in Sydney on 25 Nov 2008.
Part 4: a look at HIV drugs in development, presented by Bill Whittaker.
Multicultural health standards around the worlddiversityRx
This presentation reviews key standards, performance measures, and laws related to multicultural health and cultural competence from the US, Australia, and Scotland. Presented at the EU COST ADAPT meeting, Amsterdam, October 2012.
Line Upgrade Deferral Scenarios for Distributed Renewable Energy ResourcesIain Sanders
This project examined the economic viability of using distributed renewable resources to defer costly electricity distribution network upgrades in rural areas using information provided by three independent electricity distribution networks.
How to go from an idea related to development, to forming it into a post, and ultimately to giving a talk about it at an event/meetup.
I've given talks for many years, and am currently the CEO of a global network of remote web developers.
어느 해커쏜에 참여한 백엔드 개발자들을 위한 교육자료
쉽게 만든다고 했는데도, 많이 어려웠나봅니다.
제 욕심이 과했던 것 같아요. 담번엔 좀 더 쉽게 !
- 독자 : 백엔드 개발자를 희망하는 사람 (취준생, 이직 희망자), 5년차 이하
- 주요 내용 : 백엔드 개발을 할 때 일어나는 일들(개발팀의 일)
- 비상업적 목적으로 인용은 가능합니다. (출처 명기 필수)
1. Open Cloud Engine
Open Source Big Data Platform
Flamingo Project 소개 및 활용
Open Cloud Engine
Flamingo Project Leader
김병곤
(ceo@cloudine.co.kr)
2014.04.02 v0.9
3. 빅 데이터 책임자에게 듣는 흔한 질문
• 빅 데이터가 기존의 DW랑 차이가 뭐가 있는지 모르겠습니다.
• 단위 데이터만 봐서는 큰 데이터가 없습니다. 사업의 타당성을 만
들수가 없습니다. 어떻게 해야 하나요?
• A라는 데이터가 있는데 그것으로 뭘 해야할까요?
• 다른 회사는 뭐 한답니까? 혹시 동종업계 비슷한 사례가 있나요?
• 빅 데이터 플랫폼을 만들라는데 이놈이 뭐를 하는 놈인지 모르겠
습니다.
4. 빅 데이터 플랫폼의 역할에 대한 고민
• 빅 데이터 플랫폼에서 하고자 하는 주요 업무는 무엇인가?
• 데이터 마이닝, 통계, 로그 관리(수집, 전처리, …)
• 빅 데이터 플랫폼에서 누가 무슨 일을 하는가?
• 사용자에 따라서 플랫폼의 기능이 서로 다를 수 있다.
• 운영자는 대부분 개발자 출신이기 때문에 시스템 관리 및 로그 관리에 초점
• 사용자가 분석가 출신인 경우 데이터 분석을 위한 환경의 성숙도가 초점
• 빅 데이터 플랫폼을 사용하는 사용자의 수는?
• 사용자가 많다면 플랫폼의 기능성과 인프라의 접근성이 중요
• 플랫폼이 데이터를 다루는 특성 때문에 보안에 취약할 수 있고 Hadoop은 실
제로 취약함
• 나는 운영자? 기획자? 개발자? 분석가?
• 책임자의 역할에 따라서 플랫폼의 기능도 다르게 정의한다.
10. 빅 데이터 플랫폼이 제공해야 하는 것
SECURITY
• ACCESS
• AUTHENTICATION
• AUTHORIZATION
• ENCRYPTION
• AUDITING
• POLICY
11. 빅 데이터 플랫폼이 제공해야 하는 것
• 배치 작업 관리와 작업 모니터링
• 병렬 분석 프로그램
• 사용자의 행위에 대한 모니터링
• 리소스에 대한 각종 접근 통제 정책 및 시스템
• 인프라의 접근성 향상을 위한 다양한 기능들…
12. Flamingo Project In Open Cloud Engine
• 웹 기술을 활용하여 빅 데이터 인프라 및 데이터를 편리하게 사용
하도록 한다.
• 사용자가 데이터를 잘 활용할 수 있도록 한다.
• 하나의 화면에서 자유롭게 다양한 작업을 할 수 있는 작업 공간을
제공한다.
• 다양한 분석 및 처리 MapReduce를 쉽게 재활용 할 수 있도록
한다.
• 오픈소스 기반으로 모든 시스템을 제대로 갖추고 진행한다.
• 남의 것에 의존하지 않고 직접 다 만든다.
• 현장의 업무를 중심으로 설계한다.
• 다국어 지원을 통해 다양한 사람들이 사용할 수 있도록 한다.
• Hadoop EcoSystem을 잘 지원한다.
29.
Browser
인포메이션 카탈로그
Search
인포메이션 유형
보안등급
생성주기
형식
사용자 친밀도
1
매일 새벽2시
XML
아이템 추천
2
매일 새벽 1시
JSON
구매 성향
3
매일 저녁 8시
XML/JSON
오피니언 리더 점수
2
매일 오전 10
시
XML/JSON
데이터
85. Flamingo Project
• 현장에서 오랫동안 경험한 결과 Hadoop 기반 Big Data 환경은 기능성이 매우 중요
• 많은 오픈소스들이 통합되면서 관리의 어려움이 발생하고 있고 통합환경을 제공하는 UI도 절대적으로 부족
86. Flamingo의 통합 환경(Workbench)
• 사용자는 작업 공간 내에서 자유롭게 이동하면서 작업을 할 수 있
도록 구성
• 각 화면은 최대한 독립 개발이 가능하도록 분리하여 구성
• 재사용 가능한 것은 컴포넌트화여 코드 작성을 최소화
• 누구나 추가할 수 있도록 최대한 구조를 단순화하고 대중적인 프
레임워크를 사용
• 개발 방법도 모두 표준화 (도구, 절차, 매뉴얼, 환경 등등)
88. File System Browser
• Hadoop이 파일을 다루므로 파일 시스템 브라우저의 기능은 상당히 중요한 메인 기능
• 사용자가 Windows Explorer 스타일의 친숙한 UX를 따라가도록 설계
89. File System Browser
디렉토리를 Hive DB와
Table로 전환
브라우저에서는 Hive DB와 Table 경로를
다른 아이콘으로 표시하여 확인
FLAMINGO에서는 사용자
가 주로 하는 행위에 최적
화하여 기능을 제공
90. File System Browser 기능 고도화
• 파일 내용 및 Block Location 보기 기능
• 사용자의 등급별 디렉토리 및 파일 표시 및 기능 제한 (Hadoop 자체 기능은
없음)
• 예) 일반 사용자의 경우 /tmp 디렉토리는 표시하지 않음
• 디렉토리 및 파일의 permission 설정 기능
• 사용자의 홈 디렉토리 기능 (Hadoop 자체 기능은 없음)
• 디렉토리 Quota 설정 기능
• 파일 시스템의 크기 정보를 주기적으로 덤프를 생성하는 기능 추가 (모니터링)
92. Workflow Designer
• 다양한 분석 모듈을 탑재할 수 있도록 설계 (예; Mahout)
• UI를 통해 미리 제공하는 분석 및 처리 모듈을 드래그 앤 드롭으로 처리
• 현재 분석 알고리즘 및 기초 통계 모듈은 통합 완료, Mahout, Giraph 통합 진행중. 추후 MR ETL 통합 예정.
95. Apache Access Log To CSV
작성한 MapReduce의 파라미터 옵션
• CSV 파일 변환시 필요한 컬럼 구분자
• 패턴과 다른 로그의 경우 표준 출력으로 기록
할지 여부(디버깅용)
Apache Access Log의 위치와 CSV 파
일의 위치를 지정
MapReduce JAR 파일과 Driver 클래스
96. Workflow Designer
• 최종 결과물을 생성하기 위해서는 복잡한 워크플로우를 구성하게 됨
• MapReduce의 특성상 파일을 가공하는데 한번의 작업이 아닌 다수의 작업으
로 해야하는 경우 빈번하여 워크플로우를 복잡하게 만듬
• 국내 엔지니어들은 절대적으로 Apache Hive의 SQL like Query Languag
e를 선호하여 MapReduce를 많이 사용하지 않으므로 워크플로우 디자이너
의 중요성이 많이 부각되지 않음
• 현업에서 다양한 로그 파일을 다루는 경우 워크플로우 디자이너와 MapRedu
ce는 매우 중요함
102. Hadoop Job Tracker Monitoring
• Hadoop의 Job Tracker 상세 정보를 그래프로 보여주는 모니터링 기능
103. Hadoop Job Tracker Monitoring
• Hadoop Job의 상세 정보를 원격에서 모두 모니터링하고 추적 가능
104. Hive Editor Hive Metastore Browser
• 파일 시스템의 파일을 SQL로 조회, 브라우징, 다운로드
• Hive Metastore 관리 기능을 제공하여 데이터베이스와 테이블을 통합 관리할 수 있도록 기능을 제공
105. Hive 편집기 적용 사례
• 시스템의 사용자 접근 이력 로그를 Hive로 조회하는 사례
– 대상 로그의 형식이 반정형이나 비정형인 경우 문제 발생
– 칼럼 안에 Array, Map 등의 이상한 구조를 가진 로그의 경우 문제 발생
• 대상 로그는 CSV 형식과 같은 잘 정리된 형식이 아닌 반정형 로그 형식
TYPE=IPINSIDE TIME=2014-03-20 17:40:37 ID=guest0899349 MAC=AA-BB-01-18-68-68 NAT_IP=10.24
.104.104 NAT_IP_NATION=USA PROXY_USE=Y VPN_USE=Y REMOTE_USE=Y PROXY_IP=192.24.104.104 P
ROXY_IP_NATION=USA VPN_IP=192.24.104.104 VPN_IP_NATION=USA SVC_CODE=SVC_CODE_0899349 HDD_D
ISK=HDD_DISK_0899349 CPU_INFO=CPU_INFO_0899349 USE_OS_NATION=USA MESG=mesg..... time[139528
4830] rnd[875899349] unq[5000000]
TYPE=IPINSIDE TIME=2014-03-20 17:40:37 ID=guest0899349 MAC=AA-BB-01-18-68-68 NAT_IP=10.24
.104.104 NAT_IP_NATION=USA PROXY_USE=Y VPN_USE=Y REMOTE_USE=Y PROXY_IP=192.24.104.104 P
ROXY_IP_NATION=USA VPN_IP=192.24.104.104 VPN_IP_NATION=USA SVC_CODE=SVC_CODE_0899349 HDD_D
ISK=HDD_DISK_0899349 CPU_INFO=CPU_INFO_0899349 USE_OS_NATION=USA MESG=mesg..... time[139528
4830] rnd[875899349] unq[5000000]
109. Hive 편집기 적용 사례
public class MasSerde implements SerDe {
private StructTypeInfo rowTypeInfo;
private ObjectInspector rowOI;
private ListString colNames;
private ListObject row = new ArrayListObject();
Pattern p = Pattern.compile((.*?)); // 로그 파일의 정규 표현식
@Override
public Object deserialize(Writable blob) throws SerDeException {
row.clear();
Matcher m = p.matcher(blob.toString()); // 로그 파일을 정규식으로 패턴 매칭
List list = new ArrayList();
while (m.find()) {
list.add(m.group(1)); // 패턴 매칭을 통해 추출한 칼럼 정보를 저장
}
String[] split = (String[]) list.toArray(new String[list.size()]);
int i = 0;
for (String fieldName : rowTypeInfo.getAllStructFieldNames()) {
TypeInfo fieldTypeInfo = rowTypeInfo.getStructFieldTypeInfo(fieldName);
row.add(parseField(split[i], fieldTypeInfo));
i++;
}
return row;
}
... 생략
}
HIVE QUERY 실행시
로그 파일을 로딩할 때
DESERIALIZE한다.
115. 프로젝트 정보
• Source Forge (다운로드)
– http://www.sourceforge.net/projects/hadoop-manager
• 위키 (설명서 및 각종 기술자료)
– http://wiki.opencloudengine.org/pages/viewpage.action?pageId=8
19205
• 이슈 관리 (버그 및 신규 기능)
– http://jira.opencloudengine.org
• 빌드 서버
– http://build.opencloudengine.org
• 구글 그룹스 : flamingo-project-kr@googlegroups.com
• facebook :
https://www.facebook.com/groups/flamingo.workflow
• 서브스크립션 (기업 기술지원) : sales@cloudine.co.kr
116. Flamingo Project의 미래
• Big Data on Cloud
• Netra (OpenStack based Hadoop Provisioning)
+ Flamingo (Hadoop based Workspace)
• Open Source based Big Data Platform
• Apache Hadoop EcoSystem
• Big Data Management Using Flamingo
• Apache Hadoop PaaS (Platform as a Service)
• Big Data All In One Package