0.1 초마다 약 1k 바이트의 데이터를 저장할 응용 프로그램이 있습니다. 그것은 36MByte/hour 또는 대략 600MByte/day입니다.어떤 기술을 사용하여 데이터를 저장할 수 있습니까?
데이터의 압축률이 높기 때문에 10 : 1에서 100 : 1로 압축해야합니다. 모든 데이터는 타임 스탬프에 의해 참조됩니다.
내 질문은 :이 데이터를 저장하는 데 사용할 수있는 기술은 무엇입니까?
제약 :
- 데이터베이스의 크기가 커질수록 증가 할 수없는 데이터베이스에 데이터를 삽입 할 수있는 시간입니다. 이 제약 조건은 Microsoft SQL Server를 배제합니다 (5 일 후에 각 "삽입"이 완료 될 때까지 중단됩니다).
- 우리는 하루 4 시간 동안 데이터를 효과적으로 일시 중지 할 수 있으므로 압축 등의 작업을 수행 할 수 있습니다.
- LINQ for .NET과 호환되기를 바랍니다. 즉, 데이터베이스가 필요합니다. LINQ 어댑터 (MySQL 스타일 인터페이스는 괜찮을 것입니다).
SQL 서버를 잘못 구성했습니다. 인서트가 무한정 일정한 시간을 갖도록 설정할 수 있습니다. –
1 분 이상 삽입합니까? 시간의 99 %는 쿼리가 아니라 데이터베이스의 문제입니다. NOLOCK을 사용하여 Insert를 지정하고 삽입되는 행에 인덱스가있는 경우 삽입 된 행이 중간에 무작위가 아닌 인덱스의 "끝"또는 그 근처에서 어딘가에 있는지 확인하십시오. – Juliet
나는 Linq를 사용해야 할 필요성을 재평가하겠다. Linq가 멋지다고 생각하고 나는 이것을 스스로 사용한다. 이런 식으로, 나는 클라이언트 측 처리를 장려하는 프로그래밍 방식에주의해야한다. (서버 측보다는 처리). – Arafangion