Ubiqutious Pubilc Access Reference Model

Similar documents
오픈소스 NoSQL(MongoDB) 을이용한 Twitter Stream 의저장과실시간공간지식발견 군산대학교컴퓨터정보공학과 남광우

NoSQL

DBMS & SQL Server Installation Database Laboratory

RUCK2015_Gruter_public

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

DocsPin_Korean.pages

PowerPoint 프레젠테이션

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

Cache_cny.ppt [읽기 전용]

1217 WebTrafMon II

<4D F736F F F696E74202D E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA E >

초보자를 위한 분산 캐시 활용 전략

김기남_ATDC2016_160620_[키노트].key

FileMaker 15 ODBC 및 JDBC 설명서

CONTENTS Volume 테마 즐겨찾기 빅데이터의 현주소 진일보하는 공개 기술, 빅데이터 새 시대를 열다 12 테마 활동 빅데이터 플랫폼 기술의 현황 빅데이터, 하둡 품고 병렬처리 가속화 16 테마 더하기 국내 빅데이터 산 학 연 관

PowerPoint Presentation


PowerPoint 프레젠테이션

FileMaker ODBC 및 JDBC 가이드

Week13

歯sql_tuning2

C# Programming Guide - Types

쉽게 풀어쓴 C 프로그래밊

untitled

빅데이터분산컴퓨팅-5-수정

5 주차 -mongodb 설치잠깐! CAP 이론 NoSQL이나온이유와 MongoDB NoSQL의데이터저장구조에따른세가지분류 RDBMS와 NoSQL특성비교 RDBMS와 NoSQL의사용시기 MongoDB 소개및특징 MongoDB와 RDBMS와의공통 MongoDB CRUD

MySQL-.. 1

Chap7.PDF

출원국 권 리 구 분 상 태 권리번호 KR 특허 등록

슬라이드 1

Microsoft PowerPoint - CNVZNGWAIYSE.pptx

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

2

PowerPoint Presentation

MySQL-Ch10

목 차

플랫폼을말하다 2

Portal_9iAS.ppt [읽기 전용]

1

MasoJava4_Dongbin.PDF

Intra_DW_Ch4.PDF

슬라이드 1

Cover Story Oracle Big Data Vision 01_Big Data의 배경 02_Big Data의 정의 03_Big Data의 활용 방안 04_Big Data의 가치

[Brochure] KOR_TunA

Global Bigdata 사용 현황 및 향후 활용 전망 빅데이터 미도입 이유 필요성 못느낌, 분석 가치 판단 불가 향후 투자를 집중할 분야는 보안 모니터링 분야 와 자동화 시스템 분야 빅데이터의 핵심 가치 - 트랜드 예측 과 제품 개선 도움 빅데이터 운영 애로 사항

Microsoft PowerPoint Python-DB

Open Cloud Engine Open Source Big Data Platform Flamingo Project Open Cloud Engine Flamingo Project Leader 김병곤

초보자를 위한 ADO 21일 완성

REDIS 이해와 활용

Observational Determinism for Concurrent Program Security

Interstage5 SOAP서비스 설정 가이드

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

歯이시홍).PDF

90

Cloud Friendly System Architecture

ETL_project_best_practice1.ppt

PowerPoint 프레젠테이션

Basic Template

MySQL-Ch05

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

DB진흥원 BIG DATA 전문가로 가는 길 발표자료.pptx

Ç¥Áö

PowerPoint 프레젠테이션

RED HAT JBoss Data Grid (JDG)? KANGWUK HEO Middleware Solu6on Architect Service Team, Red Hat Korea 1

Microsoft PowerPoint - 10Àå.ppt

FileMaker 15 WebDirect 설명서

01-OOPConcepts(2).PDF

<4D F736F F F696E74202D BBE7C0BAB1E2BCFABCBCB9CCB3AA5FBDC5B1E2BCFABCD2B0B3>

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Database Search 편 * Database Explorer 8개의카테고리로구성되어있으며, 데이터베이스의폴더역할을하는 subset ( 혹은 subbase) 을생성하여데이터를조직및관리하게된다. 클릭! DNA/RNA Molecules : feature map의데이터

DW 개요.PDF

슬라이드 1

Microsoft PowerPoint - 04-UDP Programming.ppt

thesis

untitled

thesis

표준프레임워크로 구성된 컨텐츠를 솔루션에 적용하는 것에 문제가 없는지 확인

gisa_pil_070304_pdf.hwp

슬라이드 1

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

PowerPoint Template

사내 개발 프로세스 개선(안)

빅데이터_DAY key

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

분산처리 프레임워크를 활용한대용량 영상 고속분석 시스템


MongoDB Trends and Introduction 우정웅연구원 Dec. 02, 2014

PowerPoint 프레젠테이션

VOL /2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph

JMF2_심빈구.PDF

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

uFOCS

제 31회 전국 고교생 문예백일장 산문 부문 심사평.hwp

슬라이드 1

ibmdw_rest_v1.0.ppt

TTA Journal No.157_서체변경.indd

결과보고서

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

Transcription:

Hadoop/Hbase 기반의 Twitter 공간정보분석 군산대학교컴퓨터정보공학과 {pseudo_jo, didvuddn, kwnam}@kunsan.ac.kr 조현구, 양평우, 남광우

배경및필요성 Twitter 스트림에서의공간정보추출 - 공간현상의추출및공유부분은부족 Twitter 스트림에서의정보추출 - 자연어기반텍스트정보셋에서의키워드추출 - 시간의변화에따른이슈변화모니터링 - 단일키워드기반의정보제공, 현상에대한경험적추가지식필요 2

연구내용 Twitter 에서의시공간지식추출프레임워크개발 데이터스트림마이닝을활용한 SNS 데이터수집및이슈추출 대용량 Twitter 스트림의저장과분석프레임워크개발 Twitter 스트림의축적과빠른검색 NoSQL(Hadoop/HBase) 를이용한저장 빠르고반복적인데이터접근의지원을위한 Map-Reduce 임의의데이터추출 / 참조을위한간편한클라이언트개발 3

연구내용 군산대수행중인 소셜데이터 관련연구 Twitter Collector 공간웹객체 (spatial web objects) 검색과집계 공간연관규칙 Hadoop/Hbase 기반공간데이터분석 Hadoop/Hbase 기반 Twitter 공간정보분석 4

Hadoop/HBase in NoSQLs - 왜 Hadoop/HBase 를선택했는가?

NoSQL NoSQL = No SQL? no no... NoSQL = Not Only SQL!!! Relational Graph Key-Value Data Column Document 6

왜 NoSQL 인가? Relational DBMS ACID Transactions 안전성, 완전성중심 성능과보호의절충 구현의복잡성 Many Insert/Many Update Web, BigData NoSQL Massive Data Complex Data Schema Free One Insert/Many Read 성능과안전 구현의단순성 7

NoSQL for BigData http://blog.kissmetrics.com/twitter-statistics/?wide=1 8

NoSQL 의종류 Key-value stores Amazon s Dynamo Cassandra BigTable, BerkeleyDB Document Database MongoDB, CouchDB Column stores Hadoop/HBase, Google BigTable, Cassandra Graph databases FlockDB, Neo4J 9

NoSQL Stack Apache Hadoop Google Hadoop MapReduce HBase Hadoop Distributed File System(HDFS) Distributed Programming Model Distributed Databases Distributed File System MapReduce BigTable Google File System(GFS) Cluster 10

NoSQL : Wide Columnar Store BigTable, HBase, Cassandra, Hypertable JSON to Object Twitter 에서 JSON 으로데이터제공 주요데이터를추출하여 Column(Qualifier) 으로저장 11

NoSQL : Spatial Hadoop 지리정보를처리하기위한 Hadoop Spatial Language KNN, IsOverlap, Rectangle, DistanceTo, Spatial data types Spatial Indexes Grid file, R-tree or R+-tree Spatial operations 다음의이유로 Spatial Hadoop을사용하지않은이유 Simple spatial data + Spatial Keyword 인덱스로 R-tree or R+-tree 사용안함 특수목적에맞게만들어진 Hadoop : 다른용도로확장하기에는알맞지못함 질의처리에적합하지못함 http://spatialhadoop.cs.umn.edu/ Hadoop/Hbase 기반 Twitter 공간정보분석 12

NoSQL : 왜 Hadoop/HBase 인가? 기존에구축한시스템, MongoDB 저장성용이 (Document Database, JSON 형태로삽입가능 ) 적재된 Twitter 데이터를그대로사용가능 속도빠름, 확장성용이, 유연성용이 1차메모리적재, 2차디스크적재 클러스터구성의난이도가높고, 많은비용소모 Hadoop/HBase 저장성용이 (Column Store, JSON 형태로삽입가능 ) 속도빠름, 확장성용이, 유연성용이 HBase : 특정형식에맞추어저장가능 클러스터구성의난이도가낮고, 비교적적은비용소모 데이터질의처리를위한 Map-Reduce 사용이핵심 노드구성 : 네트워크전송속도가성능을좌우 Hadoop/Hbase 기반 Twitter 공간정보분석 13

NoSQL : Hadoop/HBase 의구성 Hadoop/Hbase 기반 Twitter 공간정보분석 14

NoSQL : Hadoop/HBase 의구성 Hadoop/Hbase 기반 Twitter 공간정보분석 15

NoSQL : Hadoop/HBase 의구성 Hadoop/Hbase 기반 Twitter 공간정보분석 16

NoSQL : Hadoop/HBase 의구성 Hadoop/Hbase 기반 Twitter 공간정보분석 17

Twitter 데이터의수집과저장 - Streamming API 와 HBase

Twitter Streamming API Twitter Streamming API public streams : follow, track, locations, count, with user streams site streams Twitter4J 19

Twitter Streamming API https://stream.twitter.com/1.1/statuses/filter.json? locations=-122.75,36.8,-121.75,37.8 { } "filter_level":"medium", "contributors":null, "text":" 역시다멋있다 #EVERYBODY", "geo":{ "type":"point", "coordinates":[37.3604652, 127.9554015] }, "retweeted":false, "created_at":"fri Oct 11 10:32:52 +0000 2013", "lang":"ko", "id":388613160678088700, "retweet_count":0, "favorite_count":0, "id_str":"388613160678088704", "user":{ "lang":"ko", "id":1394439386, "verified":false, "contributors_enabled":false, "name":" 은지 ", "created_at":"wed May 01 11:32:39 +0000 2013", "geo_enabled":true, "time_zone":"seoul", "friends_count":93, "id_str":"1394439386", } 20

Internet Twitter Stream 의수집과저장 Tweets from following Media Stream API (MediaCollector Account) SNS data collector Tweet collector Insert Collected data JSON Tweet(Status) raw DataBase (HBase) Abstraction by Lucene Mentions from anonymous users(selected based on location) Tweet Word Vector Databases (HBase) Tweet Collector in Hbase : Streaming API 기반트윗수집, 중복성검사, 저장 Tweet Analysis in Hbase : 데이터에대한질의 ( 검색, 조인, ) 21

Twitter Stream 의수집과저장 TweetStreamCollectorHBase Twitter4J void start(string dbname, FilterQuery query) { dbmanager = new HBaseManager(); } TwitterStream stream = new TwitterStreamFactory().getInstance(); stream.addlistener( this ); stream.filter( query ); 22

Twitter Stream 의수집과저장 Twitter4J 의 Streamming Listener 구현 public void onstatus(status status) { } JSONObject mediadata = makejsonmediadata( status ); mediadataqueue.add( mediadata.tostring() ); String mediadataid = (String)mediaData.get("MediaDataID"); JSONObject abstracteddata = makejsonabstracted(mediadataid, status ); abstracteddataqueue.add( abstracteddata.tostring() ); public void run() { dbmanager.insertmediadata(hbasemanager.mediadata_table, HBaseManager.MEDIADATA_TABLE_FAMILY_NAME, mediadataqueue.take()); dbmanager.insertabstracteddata(hbasemanager.abstracted_table, HBaseManager.ABSTRACTED_TABLE_FAMILY_NAME, abstracteddataqueue.take()); } 23

Twitter Stream 의수집 : 구현 Hadoop/Hbase 기반 Twitter 공간정보분석 24

수집된데이터 Media Data 15 일치분량약 71.7MB JSON Data 15 일치분량약 217.1MB 총데이터약 45 만개, 유효데이터약 40 만개하루당약 2 만 6 천개 25

HTabl e HTabl e Twitter Stream 데이터의검색 SQL 구문과유사하도록 Hbase 의 Scan, Filter 로구현가능 Select : Scan Where : RowFilter, SingleColumnValueFilter, Join : Map-Reduce Spatial operator 는기본적으로지원하지않는기능 HBase 의목적 : 일반적인빅데이터의적재및검색 Spatial operator 를위해 Filter, Comparator 구현 (in Java) Synchronous Call Master Cluster Scan Slave Cluster HRegionServer Filter HRegionServer Synchronous Call HRegionServer Scan Filter Slave Cluster Hadoop/Hbase 기반 Twitter 공간정보분석 26

Twitter Stream 데이터의검색 Row-Key 검색 : RowFilter Row 키가특정데이터를가리키는것이아니라면유용하지않을것 Hadoop/Hbase 기반 Twitter 공간정보분석 27

Twitter Stream 데이터의검색 Column 검색 : SingleColumnValueFilter, SingleColumnValueExcludeFilter 일반검색 : String, Long, Int, Byte-Array, Hadoop/Hbase 기반 Twitter 공간정보분석 28

Twitter Stream 데이터의검색 Column 검색 : SingleColumnValueFilter, SingleColumnValueExcludeFilter Time 검색 Hadoop/Hbase 기반 Twitter 공간정보분석 29

Twitter Stream 데이터의검색 GeoLocation 검색 : GeometryCompareFilter (JTS library) 기존의필터를활용하는것으로는공간질의가힘들다 기존의필터를참고하여직접구현 단순비교용도뿐이라면 Comparator로도충분히구현가능 Hadoop/Hbase 기반 Twitter 공간정보분석 30

Twitter Stream 데이터의검색 GeoLocation 검색 : ContainsComparator CustomFilter를세부사항까지구현하기에는너무많은시간이소요 간단하게비교자 (Comparator) 만구현함으로써쉽게비교가가능 Hadoop/Hbase 기반 Twitter 공간정보분석 31

Twitter Stream 데이터의검색 데이터조인 HBase 자체로는 Join을지원하지않음 Hadoop의 Map-Reduce를활용하여 Join Hadoop/Hbase 기반 Twitter 공간정보분석 32

Twitter Stream 데이터의검색 데이터조인 Hadoop/Hbase 기반 Twitter 공간정보분석 33

생각해야할점 지리정보와의 Join 에너무많은비용이든다 해결방법 : 지오해시, 인덱스에대한해결 Spatial Hadoop의 R-tree, R+-tree 등을참고하여구현 arp-tree 구현 ( 관련연구 : 공간웹객체 (spatial web objects) 검색과집계 ) 별도의인덱스테이블생성 Hadoop/Hbase 의 Cluster 구성 대부분이 Get, Put 에서비용이발생 입출력부분에서소요되는비용을줄이는것으로최적화 하드웨어향상 TCP no Delay (Server, Client) Etc, Hadoop/Hbase 기반 Twitter 공간정보분석 34