분류 전체보기 1274

Python 공부 노트 4. - 초간단 RDBMS 프로그래밍

RDBMS 프로그래밍시에는 해당 RDBMS에 대한 드라이버(모듈을) import해야 한다. sqlite의 경우는 이미 들어가 있다. 아래는 가장 기본적인 코드 이다.import sqlite3 conn = sqlite3.connect("datafile")cursor = conn.cursor()cursor.execute("drop table test")cursor.execute("create table test (name text,count integer)")cursor.execute("insert into test(name,count) values('Terry',1)")cursor.execute("insert into test(name,count) values('Cath',2)")conn.commit()r..

성공한 사람들의 특징

내가 만나본 성공한(?) 사람들의 특징.여기서 성공한 사람들이란, 사업등이나, 특이한 기술로 성공한 케이스가 아니라, 조직내의 승진을 통해서 성공을 한 사람들을 정의한다. 1. 철저한 자기 관리 - 아침에 무지 일찍 나온다. 그리고 운동등을 통해서 체력을 유지한다.2. 가족과의 원할한 관계 - 가족과 원할한 관계를 유지한다. (그만큼 시간을 투자하고 노력을 한다.) 이를 바탕으로 든든한 스폰서 쉽을 유지한다. (가족으로 부터) 3. 원할한 커뮤니케이션 스킬 - 커뮤니케이션 스킬이 매우 뛰어나서 적을 만들지 않고 사람과의 관계를 잘 만든다. 또는 적을 만드는 케이스도 있지만 프리젠테이션이나 비지니스관점에서 문제를 정의하고 설명하는 능력이 매우 뛰어나다. 4. 다른 조직과 커뮤니케이션 능력이 뛰어나다. : ..

IT 이야기 2013.01.09

Python 공부 노트 3. - 데이타 모델 (List)

- insert,append,remove를 이용하여 데이타 추가,삭제 가능- list.sort()를 이용하여 소팅 가능.- 이미 소팅된 리스트에 대해서 bisect.insort({list},newvalue)하면, 소팅된 형태로 insert가 됨- list.sort(compareFunction)을 하면 custom sorting이 가능 def compareFunction(str1,str2): return cmp(len(str1),len(str2))- * 를 하면 N배로 리스트를 복사 예를 들어 [1,2] * 2 = [1,2,1,2]- min,max 사용 가능

Python 공부 노트 2. - 패키지

파이썬의 패키지는 디렉토리 구조를 그대로 사용함 (명시적으로 자바처럼 package라고 정의 안함) - __init__.py : 해당 패키지가 import될때 실행되는 스크립트- __all__ : __init__.py내에 __all__ = ['하위패키지명',..] 식으로 정의하는데, 이는 from {package) import * 를 할때, 리턴되는 모듈 명이다. 자바처럼 import * 하면 모두가 import되는게 아니라, 예를 들어 윈도우즈의 경우 module.py 파일과 Module.py 파일을 같은 파일로 취급(대소문자를 가리지 않기 때문에), 명시적으로 import * 시 패키지내의 어떤 모듈을 -import 할지를 정해줘야 한다.- import : import는 import하고자 하는 mod..

Python 공부 노트 1. - 기본 데이타 형

List 데이타형 : []를 사용lines = string.split(text,'\n') # text를 \n을 delimiter로 사용하여 한줄씩 나눠서 배열 형태로 리턴 chunk = lines[:to]# chunk에 0~to까지 set을 리턴chunk = lines[from:]# chunk에 from~끝까기 set을 리턴chunk = lines[:]# []에 대한 전체 set을 리턴 K/V 형태의 Dictionay : {} 를 사용terry = { 'name':'terry','age':39}# {}안에 'key':'value' 형식으로 데이타 저장cath = { 'name':'cath','age':38}print terry['name']# 특정 필드에 대한 접근은 ['key']를 사용 List of ..

아마존의 SSD의 NoSQL 서비스 Dynamo

Dynamo는 새롭게 소개된 AWS의 NoSQL서비스이다. Key-Value 형태로 대용량의 데이타를 저장할 수 있으며, 고속의 데이타 access를 제공한다. 데이타 모델 먼저 데이타 모델을 살펴보자, RDBMS의 일반적인 테이블 구조와 유사하지만, 조금 더 유연성을 가지고 있다. RDBMS와 똑같이 테이블이라는 개념을 가지고 있으며, 테이블은 테이블명과 각각의 ROW로 구성된다. 테이블은 Unique한 Primary Key를 가지고 있다. 이를 Key라고 정의한다. 테이블의 ROW에 해당하는 내용은 item이라고 부르는데, 각 item은 key에 의해서 구분된다. RDBMS와는 다르게, 각 ROW는 똑같은 Column을 갖는 것이 아니라, 각 row 마다 다른 column을 가질 수 있다 그래서, 각..

Amazon S3 서비스 소개

AWS S3 (Simple Stoage Service)는 파일을 저장하기 위한 스토리지이다. 일반적인 파일시스템의 개념과는 약간 다르고, 파일 이름을 대표하는 key와 파일 자체로 구분되는 Object Storage이다.저장할 수 있는 파일의 크기는 개당 1byte~5TB이고, 총 저장 용량에는 제한이 없다. 디렉토리와 비슷한 개념으로, bucket이라는 개념을 가지고 있다.S3에 접근하기 위해서는 일반적은 file io api등은 사용할 수 없으며, REST/HTTP 기반의 프로토콜만 지원한다. 그래서, 성능이 다른 파일 시스템에 비해서 느리다.기본적으로 3 copy를 지원하여, 데이타를 복제하고, 이 복제는 Amazon availability zone (AZ) 단위로 복제가 되기 때문에 데이타 센터 ..

EMR 특징

AWS EMR HDFS in EMR : internal disk 사용NameNode : SPOFquestion Cascading java based data processing and pipeline API Cacalog tetual programming languageMahout : Machine learning algorithmR : statistics analysis. 데이타를 emr에 넣고 빼기 위한 작업 디렉토리는 S3의 RRS 를 사용하는 것도 고려할만함. transfer data into aws is FREE. Spot instance- 일단 on demand로 시작해놓고 spot을 추가해놓으면 운이 좋게 spot이 돌면, 전체 시간을 줄일 수 있고, worst case에도, on deman..

Dynamo 특징

Dynamo 특징 - SSD 사용- Atomic Counter 보유- 전체 용량 한계 없음 attribute (name,value) pairitem : set of attribute with keytable : set of items - range query를 위한 compisite primary key 지원 ( "hash partition attribute", " range attribute" ) http://docs.amazonwebservices.com/amazondynamodb/latest/developerguide/QueryAndScan.html Cloud Search와 연동 가능 Read/Write에 대한 용량 보장 유료 Read capacity Write capacity Units of Ca..