'Write the OHLCV data for the given sid.
If there is no bcolz ctable yet created for the sid, create it.
If the length of the bcolz ctable is not exactly to the date before
the first day provided, fill the ctable with 0s up to that date.
Parameters
sid : int
The asset identifer for the data being written.
df : pd.DataFrame
DataFrame of market data with the following characteristics.
columns : (\'open\', \'high\', \'low\', \'close\', \'volume\')
open : float64
high : float64
low  : float64
close : float64
volume : float64|int64
index : DatetimeIndex of market minutes.'

def write_sid(self, sid, df, invalid_data_behavior='warn'):

    cols = {'open': df.open.values, 'high': df.high.values, 'low': df.low.values, 'close': df.close.values, 'volume': df.volume.values}
    dts = df.index.values
    self._write_cols(sid, dts, cols, invalid_data_behavior)
