JSON을 데이터베이스로 사용할 수 있습니까?
PHP 기반 웹 사이트를 구축하기 위한 빠르고 효율적인 데이터 스토리지를 찾고 있습니다.MySql을 알고 있습니다.MySQL 데이터베이스 대신 서버 루트 디렉토리에 있는 JSON 파일을 사용할 수 있습니까?만약 그렇다면, 가장 좋은 방법은 무엇일까요?
JSON 파일을 포함한 모든 단일 파일을 다음과 같이 사용할 수 있습니다.
어떻게든 잠급니다(Google PHP 파일 잠금. 파일 열기 함수에 매개 변수를 추가하거나 함수 이름을 잠금 버전으로 변경하는 것 만으로도 간단합니다).
파일에서 데이터를 읽고 내부 데이터 구조로 구문 분석합니다.
선택적으로 내부 데이터 구조의 데이터를 수정합니다.
데이터를 수정한 경우 파일을 0 길이로 잘라내고 새 데이터를 씁니다.
가능한 한 빨리 파일 잠금을 해제하십시오. 다른 요청이 대기 중일 수 있습니다.
내부 구조의 데이터를 계속 사용하여 페이지를 렌더링할 수 있습니다.파일 잠금을 해제하는 즉시 오래된 데이터가 될 수 있으며 다른 HTTP 요청이 페이지를 수정할 수 있습니다.
또한 사용자의 웹 양식에서 데이터를 수정할 경우 중간에 데이터가 수정되었을 수 있습니다.예를 들어 편집하기 위해 사용자 세부 정보가 포함된 페이지를 로드한 후 다른 사용자가 해당 사용자를 삭제한 후 변경된 세부 정보를 저장하려고 하면 삭제된 사용자를 다시 생성하는 대신 오류가 발생할 수 있습니다.
주의: 이것은 매우 비효율적입니다.동시접속자 수가 10명 이상인 사이트를 구축하려면 보다 정교한 스킴을 사용하거나 기존 데이터베이스만 사용해야 합니다.또한 JSON을 해석하고 수정된 JSON을 생성하는 데 시간이 걸리기 때문에 데이터를 너무 많이 가질 수 없습니다.
한 번에 한 명의 사용자만 있으면 데이터 양이 증가함에 따라 속도가 점점 느려집니다. 그러나 사용자 수가 증가하고 더 많은 사용자가 더 많은 요청과 데이터를 의미하기 때문에 작업이 기하급수적으로 느려지기 시작하며 HTTP 요청이 만료되기 시작하면 요청을 처리할 수 있는 파일이 곧 만료됩니다.
이 시점에서 해킹을 시도하지 말고 기존 데이터베이스 프레임워크(SQL 또는 nosql 또는 파일 기반)를 선택합니다.만약 당신이 당신 자신의 것을 해킹하기 시작하면, 당신은 결국 바퀴를 다시 발명하게 될 뿐이고, 보통 형편없이 :-)단순한 프로그래밍 연습이 아닌 이상, 그래도 기존 프레임워크의 사용을 배우는 것이 더 나을 수 있습니다.
JSON ODM이라고 하는 json 파일에 사용하기 위해 오브젝트 문서 매퍼를 작성했습니다만, 아직 필요하다면 MIT 라이선스의 오픈 소스입니다.
쿼리 언어 및 일부 GeoJSON 도구를 제공합니다.
IBM Informix 12.10 xC2는 JSON을 사용합니다.
http://pic.dhe.ibm.com/infocenter/informix/v121/topic/com.ibm.json.doc/ids_json_007.htm 링크를 확인합니다.
메뉴얼에는, MongoDB 드라이버에 대응하고 있다고 기재되어 있습니다.
Informix JSON 호환성 정보
MongoDB에서 만든 JSON 지향 쿼리 언어를 사용하는 애플리케이션은 Informix® 데이터베이스에 저장된 데이터와 상호 작용할 수 있습니다.Informix 데이터베이스 서버는 내장된 JSON 및 BSON(바이너리 JSON) 데이터 유형도 제공합니다.
MongoDB 커뮤니티 드라이버를 사용하여 Informix에서 JSON 문서를 삽입, 업데이트 및 조회할 수 있습니다.
잘 모르겠습니다만, Innovator-C 에디션(생산용 무료)을 사용하여 테스트와 사용을 무료로 실시할 수 있다고 생각합니다.
데이터베이스보다 JSON(또는 다른 파일 형식)을 더 선호할 수 있는 한 가지 분명한 사례는 애플리케이션 캐시에 저장된 모든(상대적으로 작은) 데이터가 있는 경우입니다.
애플리케이션 서버가 기동하면, 애플리케이션은 파일로부터 데이터를 읽어내, 데이터 구조에 보존합니다.
데이터가 변경되면 응용 프로그램이 파일을 업데이트합니다.
장점: 데이터베이스가 없습니다.
단점: 여러 가지 이유로 비교적 데이터가 적은 시스템에서만 사용할 수 있습니다.예를 들어 수백 개의 제품이 있는 매우 구체적인 제품 사이트입니다.
언급URL : https://stackoverflow.com/questions/13899342/can-we-use-json-as-a-database
'programing' 카테고리의 다른 글
| 바닥글의 wp_enqueue_script (0) | 2023.03.25 |
|---|---|
| 반응 쿼리:사용방법버튼 클릭 시 쿼리 (0) | 2023.03.25 |
| 스프링 부트 - 핸들을 휴지 상태로 전환 Session Factory (0) | 2023.03.25 |
| 대용량 JSON 파일을 빠르고 효율적으로 로드할 수 있는 방법이 있습니까? (0) | 2023.03.25 |
| 요청된 리소스에 'Access-Control-Allow-Origin' 헤더가 없습니다(Angular).JS (0) | 2023.03.20 |