• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Devaka Cooray
  • Liutauras Vilda
Sheriffs:
  • Jeanne Boyarsky
  • paul wheaton
  • Henry Wong
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Tim Moores
  • Carey Brown
  • Mikalai Zaikin
Bartenders:
  • Lou Hamers
  • Piet Souris
  • Frits Walraven

architecture for applications handling large objects

 
Greenhorn
Posts: 10
Mac Postgres Database Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Some kinds of applications, such as medical, needs storage big images and videos in database.

I would like to know if there are any kind of design or architecture to provide better perfrmance and better handling of resources.
 
author
Posts: 41
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm sure there is, but I've not had to deal with the scenario personally. So I can't help on this one.

Visit the book's website at modularity.kirkk.com where you can review all 18 patterns and download an excerpt of the book. There is also a mobile web application available that you can take with you wherever you go.

--kirk
Twitter: @pragkirk

 
Fabio Medeiros Faria
Greenhorn
Posts: 10
Mac Postgres Database Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
tks Kirk by rapid response

My frequently problems are out of memory. Many files has more 50MB...

I will download the files, tks!
 
Ranch Hand
Posts: 859
IBM DB2 Chrome Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
In this environment, since Kirk's fine book addresses correct concepts and patterns,

you would definitely have to use some form of CMS (Content mangement System) optimized
for large files (videos, scans etc..) and rapid keyword-based retrieval.

Kirks concepts and rules are still valid, simply apply to your own requirements and needs.

For instance, some of us build applications for finance (e.g: building a bank),
you seem to be building a hospital. Same architectural concepts, foundation etc.. but different.
Would you walk into a bank with a chest-pain ?


WP
 
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I wouldn't call 50MB as large. 50MB file can easily fit into memory. Now, if you are trying to load 20 such files together , you might run into a problem . I would call data as large only when it exceeds the memory limit of the Java process, which is 2GB on 32 bit OS. On 64 bit Java, this limit is much larger.
 
William P O'Sullivan
Ranch Hand
Posts: 859
IBM DB2 Chrome Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
True to an extent, my cell phones internal memory has around 20 times 50Mb.

However, when 1000s of these are being stored (quite possible in medical field),
and the doctor or whoever needs accuracy and performance in searching, then a CMS is a definitive!

You cannot simply issue a select like:

select xray_image from xrays where xray_image like clob('WPOSullivan Colon'); ... I think my colon is fine!


WP
 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I think your problem is that possibly you are handling more files than your application can handle at a time. So you would need to limit the number of files you get into the memory at any time based on the memory you have with your VM. If your application needs are more than what can be handled by the VM then you can think of these two options
a. Increase the VM size. If you are using 32 bit VM you can not go beyond 3gb, so you would need to migrate to 64 bit VM
b. Other option is to cluster your application.

Hope this helps!!
 
I have always wanted to have a neighbor just like you - Fred Rogers. Tiny ad:
We need your help - Coderanch server fundraiser
https://coderanch.com/wiki/782867/Coderanch-server-fundraiser
reply
    Bookmark Topic Watch Topic
  • New Topic