在iOS上的Realm中存储数据的最佳实践

时间:2017-09-21 22:55:07

标签: ios swift realm

假设我有一个存储x,y,宽度,高度和缩略图的图像模型,那么我应该使用filePath: String属性存储实际图像数据还是存储Data is only read when the properties are accessed并保存图像数据到磁盘?如果存储在Data var中,来自doc class ShowVid(QObject): signal = pyqtSignal(QImage) def __init__(self): super().__init__() @pyqtSlot() def startVideo(self): camera_port = 0 camera = cv2.VideoCapture(camera_port) run_video = True while run_video: ret, image = camera.read() color_swapped_image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) height, width, _ = color_swapped_image.shape qt_image = QImage(color_swapped_image.data, width, height, color_swapped_image.strides[0], QImage.Format_RGB888) self.signal.emit(qt_image) ,那么我假设数据没有直接加载到内存中;在读取数据属性时,它是否与我们从filePath读取时的基本操作相同,还是更快?

对于较小尺寸的缩略图,最佳做法是什么?

1 个答案:

答案 0 :(得分:3)

通常(不仅仅是Realm),将二进制数据(如图像)存储在数据库中并不是一个好习惯。由于二进制数据无法查询或排序,因此使用数据库没有任何优势。在大多数情况下,保存文件路径而不是二进制数据是一种更好的做法。