
337
9
장
입출력 작업
9.4.2
데이터 저장
TsTables
는 임의의 위치에서 임의의 길이의 데이터를 빨리 읽을 수 있도록 금융 시계열 데이
터를 특정한 청크
chunk
기반의 구조로 만든다. 이렇게 하기 위해
TsTables
는
PyTables
패키지
에
create
_
ts
( )
함수를 추가한다. 테이블 열에 사용되는 자료형을 제공하기 위해 다음 코드에
서는
PyTables
의
tb
.
IsDescription
클래스에 기반한 메서드를 사용했다.
In [216]: import tstables as tstab
In [217]: class ts_desc(tb.IsDescription):
timestamp = tb.Int64Col(pos=0)
➊
ts1 = tb.Float64Col(pos=1)
➋
ts2 = tb.Float64Col(pos=2)
➋
ts3 = tb.Float64Col(pos=3)
➋
In [218]: h5 = tb.open_file(path + 'tstab.h5', 'w')
➌
In [219]: ts = h5.create_ts('/', 'ts', ts_desc)
➍
In [220]: %time ts.append(df)
➎
CPU times: user 1.36 s, sys: 497 ms, total: 1.86 s
Wall time: 1.29 s
In [221]: ...