ppt - Oracle

Download Report

Transcript ppt - Oracle

BDB-DICOM Sample Program
Capturing and using large data objects with BDB
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
The Purpose
• The purpose of the sample program is to demonstrate how to use Oracle
Berkeley DB in medical mobile applications.
– It illustrates how Oracle Berkeley DB can be used to store, retrieve and query DICOM
files for offline usage on Windows mobile devices
– The sample program is written as a proof of concept, and is not supposed to be used
directly in production.
• The sample program is built with the typical three-tier architecture
– Oracle DB as the persistent layer
– The sample program includes both a server program and a client program for
Windows mobile devices
– The client program uses Oracle Berkeley DB for offline storage
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
2
Issues/Trends/Challenges
in Health Industry
Oracle Differentiator
DICOM
Oracle Database 12c
Multimedia
ISSUES
TREND
CHALLENGES
• Unable to share patients’
medical images between
systems, labs, hospitals.
• Hard to search and manage.
• Centralized management in
DICOM-tailored database Oracle Database Multimedia.
• Digitalization and
telemedicine
• Doctor needs fast, easy
access - local persistence.
• Multiple Data Sources needs
embedded database
• Telemedicine - anytime and
anywhere?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
3
Architecture
db file or
data stream
Group
db file or
data stream
HTTP
HTTP
Stream
HTTP
Request
JDBC
HTTP
db file or
data stream
BDB Client
DICOM Server
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
Oracle
Database
Multimedia
4
The Coding
• The sample server is written in Java. It is responsible for serving client
requests by retrieving DICOM objects from Oracle database and sending
them to clients in a custom-made protocol.
• The sample client is written in C++. To support offline access to the DICOM
objects, Oracle Berkeley DB is used to provide persistent cache of the
objects.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
5
BDB-DICOM Client on Mobile Device
Download & Storage
• Download with HTTP protocol
• Store serialized DICOM into BDB
– DICOM = <key, value>
• Key: DICOM id in Oracle database
• Value: Predefined subset of DICOM metadata
– Consistent with DICOM but more compact
Content
DICOM in DB
DICOM
Oracle database
BDB
Format
Single file
(X~XX MB)
Blob (X~XX MB)
Stream (X~XX KB)
Metadata
2000+ XML
metadata
2000+ attributes from
XML in blob
Predefined interesting
attributes’
Image
Binary data
Image data in blob
Thumbnail
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
6
BDB-DICOM Client on Mobile Device
Query & Retrieval
• List DICOM in BDB
– List grouped attributes
– Display thumbnail (JPEG)
• Query on attributes
Patient
Study
name, sex, date,
birth day,
description,
history, etc institution
name, etc
Acquisition
operator,
manufacturer,
time, date, etc
– Single query: $attribute = value
– Combinational query: “AND”
• Query hint
– List all attributes
– List all values on common attributes (patient’s name, modality, etc)
• Query checking
– Immediate checking on queried attribute’s name
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
7
BDB-DICOM Client on Mobile Device
Update & Delete
• Modify DICOM attribute
– Partially update the old record in BDB
– Avoid rewriting other attributes and image content
ID
…
Length
value
Length
value
Length
value
Length
value
…
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
8
Accessing the demo
• YouTube: https://www.youtube.com/watch?v=zpFrgXgSXrY
• OTN: http://www.oracle.com/technetwork/database/databasetechnologies/berkeleydb/learnmore/index.html
– Look for “DICOM video walkthrough”
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Berkeley DB
9