일반적인 사전 형식 (키, 값) 형식의 대용량 데이터 저장에는 Zodb를 사용하고있었습니다. 그러나 나는 다음과 같은 경고 메시지가 도착 ZODB에 저장하는 동안 :ZODB 또는 Python의 대용량 데이터 저장을위한 다른 데이터베이스
C : 연결 \ \ 파이썬 3.5.2.amd64 \ lib 디렉토리의 \ 사이트 - 패키지 \ ZODB를. py : 550 : UserWarning : 저장중인 개체 이 큽니다. (510241658 바이트)
아마도 당신은 얼룩에 저장되어야하는 미디어를 저장하고있을 것입니다.
아마도 PersistentMapping 또는 PersistentList와 같은 확장 가능하지 않은 데이터 구조를 사용하고있을 것입니다.
아마도 데이터가 영구적이지 않은 개체에 저장되어있는 것일 수 있습니다. 이와 같은 경우에는 데이터가 포함 된 영구 개체의 레코드에 데이터가 저장됩니다.
어쨌든이 기록을 저장하는 것은 나쁜 생각 일 수 있습니다. 당신이 주장이 경고를 제거하려면
는 더 큰 크기를 지정합니다 ZODB.DB 생성자 (또는 구성 파일의 큰 레코드 사이즈 옵션)의 large_record_size 옵션을 사용합니다.
warnings.warn (large_object_message의 % (OBJ. 클래스, 렌 (P)))
내가 ZODB에 많은 데이터를 저장할 수있는 방법을 제안하거나 이러한 목적으로
@WAS 내가 언급해야 할 것은, 지금하고있는 일은 한꺼번에 불러 와서 스트리밍 할 수없는 대형 피클을 저장하는 것입니다. 쇼 스토퍼 인 HTTP 범위 요청 (점진적 스트리밍)과 같은 경우 대규모 제작 응용 프로그램에서 ZODB를 사용하는 사람들은 BLOB를 사용하고 웹/네트워크 응용 프로그램에서 작동하는 파일 저장소 반복기에 파일 데이터를 스트리밍합니다. 이것은 Zope 2에서 매우 잘 작동하지만, 애플리케이션을 우회하여 BLOB로 바로 가기 위해 프론트 엔드 웹 서버에서 X-Sendfile과 같은 것을 사용하기 위해 애플리케이션이 취할 수있는 몇 가지 접근법이 있습니다. – sdupton