다른 질문으로, 나는 mysql 데이터베이스에서 150 행의 데이터를 가져온 PHP 스크립트를 실행했다가 그 데이터에 대해 계산을 수행했다.이 계산은 배열에 저장된다. (각각 120 , 또는 대략 총 3600 개의 요소). 데이터로 그래프를 만들기 때문에 "results"배열이 필요합니다. 이 스크립트는 정상적으로 작동합니다.매우 큰 배열을 다루는 모범 사례? DB?
더 나은 결과를 얻을 수있는 좀 더 밀도가 높은 데이터 세트로 스크립트를 확장하고 싶습니다. 데이터 세트는 1700 개의 행으로 구성되며 결과 배열은 각각 1340 개, 360 개 또는 약 482,400 개입니다. 문제는, 나는 이것을 시도하고 약간의 가혹한 메모리 오류를 생각해 냈다.
내가 게시 된 이전 질문에 나에게 설명한 바와 같이는, 그 크기는 배열이 아마 배열 (1700,1699)입니다 두 번째 큰 샘플 당신의 서버 메모리
을 압도 발생합니다. 요소 당 144 바이트, 즉 415,915,200 바이트는 남은 버킷 공간보다 약간 큰 406MB 이상이므로 계산 결과를 저장합니다.
이 문제를 해결하는 일반적인 방법에 익숙하지 않습니다. 1340 개의 결과 배열 요소를 각각 (또는 10 개 또는 20 개의 1340 개의 DB 호출이 너무 많을 수 있음) 직렬화하고 base64_encode'ing하는 것을 고려하고 있었으며 SQL 서버에 업로드하고 결과 배열을 해제하여 메모리를 확보합니다. 그런 다음 DB에 특정 정보를 쿼리하여 보고서와 그래프를 만들 수 있습니다.
다른 방법이 있나요?
작은 사용 사례 (150주기)는 설명 된대로 3300 점을 표시합니다. 큰 것 *은 400k 포인트가됩니다. 백엔드 프로세스 경로를 확실히 고려했습니다. 다이어그램을 그래프로 사용합니다. –