문제

나는 실험이 있는 스트리밍 최대 1Mb/s 의 숫자는 데이터는 저장해야에 대한 후 처리합니다.그것은 것으로 쉽게 직접 쓰기로 데이터베이스로 CSV 파일하고 나는 다음 능력을 가지를 쉽게 검색할 수의 하위 집합이나 범위에 있습니다.

나는이 경험의 sqlite2(시 텍스트 필드)과 그것을 매우 많이 빠르고 원 디스크에 액세스합니다.에 어떤 의견을 최 현재 프로세스 DBMS 이 응용 프로그램?

죄송-추가해야 이것은 C++intially 윈도우에서나 크로스 플랫폼입니다.이상적으로 DB 바이너리 파일 형식 shoudl 수 크로스 플랫폼입니다.

도움이 되었습니까?

해결책

만 필요한 경우 읽기/쓰기 데이터,없이 확인하거나 조작에서 수행하는 데이터베이스는,다음 모두 그것을 해야 하 괜찮습니다.파이어 데이터베이스 파일을 복사할 수 있는만큼,이 시스템은 동일한 endianess(i.e를 복사할 수 없습니다 사이에 파일 시스템 인텔과 PPC 프로세서를,그러나 인텔 인텔은 괜찮습니다).

그러나 필요하신 경우에는 이제까지 아무것도 할 데이터와 함께하는 간단을 넘어 읽기/쓰기,다음과 Firebird,그것은 전체 SQL 서버는 모든'기업'기능은 다음과 같 트리거,뷰 저장 프로시저,임시 테이블,etc.

BTW,을 줄 경우 파이어도 좋습니다 당신은 사용 IBPP 라이브러리를 액세스할 수 있습니다.그것은 매우 얇은 C++래퍼 Firebird s C API 를 사용합니다.나는에 대해이 10 캡슐화하는 클래스를 모든 것과 그것은 죽은 사용하기 쉽습니다.

다른 팁

만약 당신이 원하는 모든이 번호를 저장하고 쉽게 할 수 있을 범위를 쿼리할 수 있습니다 그냥을 어떤 표준 트리 데이터 구조를 사용할 수 있는 STL 및 직렬화하는 디스크에 있습니다.이 물에서 당신 플랫폼 환경 경우에 특히 가려고 노력하고 교차됩니다.

으로 훨씬 더 유연한 사람들/친화적 솔루션,sqlite3 널리 사용,견고하고 안정적인,아주 좋은 모든 주위입니다.

BerkeleyDB 에는 다수의 좋은 기능을 위해 하나를 사용하는 것 그것은,그러나 아무도 그들의 적용에서 이 시나리오에,설계되었습니다.

내가 말할 것과 이동 sqlite3 할 수 있는 경우 라이센스 계약에 동의합니다.

-D

따라 어떤 언어를 사용하고 있습니다.는 경우 그것은 C/C++,TCL,PHP,SQLite 전에서 최고 중 하나의 작가가 시나리오이다.가 필요하지 않은 경우에는 SQL access,a berkeley DB-스타일 라이브러리에 있는 약간 더 빠르고,다음과 같 Sleepycat 또는 gdbm.여러 작가를 고려할 수 있습 별도의 클라이언트/서버 솔루션이지만 같은 소리 하지 않습니다.를 사용하는 경우 Java,hdqldb 또는 derby(함께 제공되는 태양의 JVM 에서"JavaDB")브랜딩을 것 같은 솔루션의 선택입니다.

수도 있습니다려 숫자 데이터는 파일 형식으로 특별히 맞도록 저장 이러한 유형의 큰 데이터를 설정합니다.예를 들어:

  • HDF -가장 일반적이고 잘에서 지원되는 많은 언어와 함께 무료 라이브러리입니다.I highly recommend this.
  • CDF --유사한 형식으로 사용되는 미항공 우주국이다(그러나 쓸모 있는 사람에 의해).
  • 언어 --다른 비슷한 형식(최신 버전은 실제로 줄 HDF5).

이 링크는 몇몇 정보의 차이점에 대해 위의 데이터 유형을 설정:http://nssdc.gsfc.nasa.gov/cdf/html/FAQ.html

내가 심지 않은 데이터베이스 할 수 있도록 데이터를 기록에서 이러한 높은 속도입니다.당신은 이것을 확인하실 수 있습니다 자신을해야합니다.내 경험에-SQLite 실패를 삽입하려면 더 많은 다음 1000 당 행에 대한 두 번째는 아주 간단한 테이블에 하나의 정수 primary key.

의 경우에는 성능 문제 내가 사용하는 것 CSV 형식으로 파일을 작성하고,나중에 로의 데이터를 데이터베이스(SQLite 또는 파이어)에 대한 추가적인 처리를 수행합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top