我正在尝试从sqlite数据库读取一个表(大小为4GB)。表中的每个单元格都是一个json(很少有单元格中有大的json格式文件)。你知道吗
当我在db browser中执行查询时,它工作正常,但在Python中它会给出一个错误:“数据库磁盘映像格式不正确”
我尝试了不同的表格,但问题仍然存在。使用查询获取的行数约为5000。但是,每个单元格本身可能有一个长的json结构字符串(大约10000行)。你知道吗
我已经尝试过使用数据库的副本和其他数据库。我也试着跟着,在db里 Pragma完整性检查; Pragma temp_store=2;//强制数据进入RAM
这个问题似乎与Pandas/Python有关,而不是实际的DB
Python
conn = sqlite3.connect(db)
sql = """
select a.Topic, a.Timestamp, a.SessionId, a.ContextMask, b.BuildUUID, a.BuildId, a.LayerId,
a.Payload
from MessageTable a
inner JOIN
BuildTable b
on a.BuildId = b.BuildId
where a.Topic = ('Engine/Sensors/SensorData')
and b.BuildUUID = :job
"""
cur = conn.cursor()
cur.execute(sql, {"job" : '06c95a97-40c7-49b7-ad1b-0d439d412464'})
sensordf = pd.DataFrame(data = cur.fetchall(), columns = ['Topic', 'Timestamp_epoch', 'SessionId', 'ContextMask'
'BuildUUID', 'BuildId', 'LayerId', 'Payload'])
我希望输出在dataframe中,最后一列包含每个单元格中的json值。我可以进一步编写一些脚本,从json中进行解析,以提取更多的数据。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐