성능 부분을 우선하시는 거 같은데, InterBaseExpress 컴포넌트가 당연히 BDE보다 성능이 월등히 높습니다. 두가지를 직접 비교한 적은 없지만, 아마 아무리 적게 잡더라도 최소 20% 이상의 성능 차이가 날 겁니다. 물론 어떤 작업이냐에 따라 달라집니다만. InterBaseExpress(이하 IBExpress)는 BDE보다 가볍고 빠르다는 dbExpress보다도 훨씬 빠릅니다. 훨씬입니다.
그런데 그렇다고 해서 InterBaseExpress(이하 IBExpress)가 최고의 방법이냐 하면, 그렇지도 않습니다. 다양한 상용컴포넌트들이 있거든요. 제가 테스트해본 것만 해도 IBObjects, FIBPlus, IBDAC 등이 있습니다.
얼마전에 파이어버드 임베디드를 대용량 로그 목적으로 사용하기 위해 대량 인서트를 할 일이 있었습니다. 셀렉트 속도는 그다지 중요하지 않은데 인서트 속도가 절대적으로 중요한 프로젝트입니다. 인서트 속도는 컴포넌트들 사이에서 뭐 큰 차이가 있겠냐, 하면서 대충 테스트를 했는데... 결과는 어마어마하게 차이가 나더군요.
FIBPlus의 압승이었습니다. 그 다음으로 IBObjects, 간발의 차이로 IBExpress, 그 다음으로 IBDAC, 최악의 성능을 보여준 게 dbExpress였습니다. FIBPlus와 dbExpress의 속도 차이는 거의 세배에 가깝더군요. 한두건씩 인서트하는 일에야 영향이 미미하겠지만, 파이어버드에 고속으로 대량 인서트를 할 일이 있으신 분들은 dbExpress는 절대로 쓰지 마시기 바랍니다.
그럼...
항상처음 님이 쓰신 글 :
: 안녕하세요.. 그동안 계발해왔던 프로그램은 BDE와 Firebird1.5버전으로 작업을 해왔는대요...
:
: 최근 인터베이스 컴포넌트로 작업을 한게 있어서 고민중에 있습니다.
:
: 어느 컴포넌트의 성능이나 안정성이 뛰어난가?!
:
: 제가 얼마 다뤄보지 않아서인지 몰라도 인터베이스 컴포넌트는 손가는대도 많고 뭔가 찜찜한부분이 있는대
:
: 컴포넌트 차이가 있을까요? 혹 인터베이스 컴포넌트가 BDE보다 성능이 좋다면 기존 프로그램을
:
: 모두 인터베이스로 갈아타야 할거 같은대 추천좀 부탁합니다.
|