Sqlite 데이터베이스 크기의 실제 한계는 데이터 파일의 실제 한계와 동일합니다. 그리고 그 한계는 많은 컴퓨터와 시스템에 달려 있습니다. 현재 Linux 데스크톱에서는 350Gbyte 파일보다 훨씬 더 큰 여유 공간이 없습니다. 경험상 하나의 파일이 디스크 파티션의 절반 이상을 차지하지 않기 때문입니다. BTW, 그 실제 한계는 PostGreSQL 또는 MariaDB와 같은 다른 SQL RDBMS에도 영향을 미칩니다 (그러나 이들 중 대부분은 여러 파일에 데이터를 보관하여 다른 파일 시스템에 보관할 수 있으며 일부는 원격 컴퓨터에서 분산 데이터를 관리 할 수 있습니다.) .)
이 기사를 읽은 후에도 여전히 수백 기가 바이트가 필요한 SQLite를 고려하지는 않습니다.
당신은 옳고 그름입니다.
오늘날의 컴퓨터 (수퍼 컴퓨터 또는 데이터 센터 서버가 아닌 랩탑 및 데스크탑)에서는 100 기가 바이트가 여전히 큰 디스크 공간이기 때문에 옳습니다. 따라서 실제로 이러한 큰 데이터베이스를 생각하면 원격 액세스, 효과적으로 동시 액세스 및 분산 데이터 및 테이블을 원할 수 있기 때문에 특히 실제 SQL 서버 (La PostGreSQL)를 더 잘 상상할 수 있습니다.
SQLite가 큰 파일을 처리 할 수있는 파일 시스템이 있다고 가정 할 때 아마도 SQLite가 수백 기가 바이트의 데이터베이스를 처리 할 수 있고 때로는 테스트를 받았기 때문에 (원칙적으로 시도하지 않았습니다) 잘못되었습니다. 적어도).
필자는 수십 기가 바이트의 데이터베이스에 대해 SQLite를 고려할 것입니다. (그리고 한 번 큰 .sqlite
파일 인 IIRC 40Gbyte를 시도했습니다). 현재 (슈퍼 컴퓨터가 아닌) 컴퓨터에서는 수백 기가 바이트의 SQLite 데이터베이스를 보유하는 것이 주저 할 것입니다. 이러한 파일이 오늘날의 관행에 의해 상당히 크기 때문입니다.
IIRC 특수 파일 시스템 머신을 판매하는 일부 하드웨어 공급 업체가 테라 바이트 sqlite 응용 프로그램 중 하나에 대해 이야기했습니다 (그러나 잘못되었을 수 있음).
물론 SQLite는 성능 (모든 SQL 데이터베이스 등) 따라 많은 테이블, 그들의 인덱스 관련 SQL 쿼리의 수와 폭. 그리고 당신은 (여러 프로세스에 의해) 동시 액세스를 원하지 않고 트랜잭션을 사용해야합니다 (경험, 심지어 몇 메가 바이트의 작은 SQLITE 데이터베이스에서도). 예를 들어 수천 개의 삽입 요청을 BEGIN TRANSACTION
& END TRANSACTION
, 그렇게하지 않으면 Sqlite가 10 배 이상으로 크게 느려집니다).
적절한 구성과 구성으로 개인적인 경험을 통해 SQLite는 사용 가능한 RAM보다 큰 데이터베이스를 관리 할 수 있습니다 (따라서 30GB는 문제가되지 않습니다). 그러나 인덱스가 RAM에 맞기를 원할 것입니다!
"슈퍼 컴퓨터"또는 고가의 워크 스테이션 (예 : 512GB RAM 및 8Tbyte 디스크 및 512Gbyte SSD)을 위해 무언가를 코딩하는 경우 테라 바이트 Sqlite 데이터베이스를 가질 수 있습니다. 그러나 프로세스 중 하나 (또는 소수) 만 해당 데이터베이스에 액세스하는 경우에만 그렇게하려고합니다. 동일한 데이터베이스에 동시에 액세스하는 수십 개의 프로세스가있는 경우 실제 SQL RDBMS (Maria Maria 또는 PostGreSQL)를 더 잘 설치하십시오.
또한 .sqlite
데이터베이스 파일 의 (이진) 형식 이 "이동식"으로 문서화 되어 있지만 데이터베이스를 SQL 텍스트 형식 (을 사용하여 sqlite3 mydb.sqlite .dump > mydb.sql
) 으로 백업하는 것을 선호합니다 . 그런 다음 해당 텍스트 덤프를위한 추가 디스크 공간이 필요합니다 (실제 한계를 낮 춥니 다).
일반적으로 Sqlite는 병목 현상이 아닙니다. 그러나 디스크 일 수 있습니다.
추신. 동일한 추론이 GDBM을 사용하여 대형 색인 파일에 적용될 수 있습니다 .
PPS. MELT 모니터 (github의 GPLv3 무료 소프트웨어)의 expjs 분기 ( 2016 년 9 월) 에서 신선한 Sqlite 데이터베이스 내에서 JSON의 전체 응용 프로그램 힙을 유지 하고 있습니다. 나는 놀랄 일도없이 수백만 개의 물체 ( '큰')로 작은 실험을 해왔다. YMMV.