Delphi - Saving files from BLOB fields.

Este forum é destinado a perguntas relacionadas a Oracle, mas que não se enquadram nos forums acima. Aqui serão tratadas também sobre outras tecnologias da oracle, como o Workflow, BPEL, Spatial, OCS, etc.
Post Reply
User avatar
Marciel
Rank: Analista Sênior
Rank: Analista Sênior
Posts: 158
Joined: Thu, 03 May 2007 10:12 am
Location: Vitória - ES
Sabe qual o cúmulo da ignorância, da apatia e da ira?
Não sei, não quero saber e tenho raiva de quem sabe.

Good afternoon,

I have electronic document management software, where scanned documents are saved in a database table. I need to develop a feature to save on disk a large batch of documents. However, this feature is extremely slow! I have already revised the entire Delphi code, I tested several forms and components of access to the database, but I did not get significant improvement in performance. The bottleneck is in reading the BLOB field of the database.

The question I have is kind of vague: Is there any configuration of the database that optimizes the reading of Lob fields?
User avatar
stcoutinho
Moderador
Moderador
Posts: 850
Joined: Wed, 11 May 2011 5:15 pm
Location: são Paulo - SP

Marcel,

Sorry, I'm not Delphi programmer, but I found a survey on the theme, and I found some information that might help you detect what happens wrong.

I believe that a blob field will always bring some impact on being read due to its size. You need to see for example what the average size of the information is being stored in this BLOB column. From what I understand, up to 4000 bytes, the blob is stored entire on the line. But it remembers that your registry can occupy more than one block, and can result from "line migrations" that can "make it difficult.

- In this link http://forums.devart.com/viewtopic.php?t=5529) List clarifies that LOB's field reading performance can be significantly improved if you use Oracle Direct Access (ODAC) instead of DBExpress. I imagine these are methods that allow Delphi to access an Oracle database;

- In this link http://www.devrace.com/en/fibplus/articles/2161.php) Author gives some tips on how to work with Blobs in Delphi. I understand that you should already know how to use Delphi, but it seems to me that you have one or other associated performance tip;

- I do not know if you have the support of a DBA, but there are a series of Oracle technical notes that can give a suggestion of some parameter that can be configured for an improvement of performance. Here are some links:
http://serverfault.com/questions/345253 ... ately-slow http://docs.oracle.com/cd/B28359_01/app ... rmance.htm

Article Oracle Support: Lobs - Storage, Rede and Performance Issues [ID 66431.1]
Article Oracle Support: Lob Performance Guideline [ID 268476.1] -

Hugs and good luck,

Sergio Coutinho
Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 8 guests