Feed aggregator

New Oracle By Examples Now Available

David Peake - Wed, 2012-05-16 15:13
For sometime Kris Rice and I have talked about wanting to do a "Soup-to-Nuts" series of labs. With many thanks to Marcie Young from Curriculum Development, such a series now exists on the Oracle Learning Library (OLL) : http://apex.oracle.com/pls/apex/f?p=44785:24:0::NO::P24_CONTENT_ID,P24_PREV_PAGE:6265,1

Marcie is also the one responsible for building the whole OLL site in APEX and even developing the Mobile version of the site.

The workshop series includes the following labs:

  • Data Modeler
  • SQL Developer
  • APEX (x2)
These are designed to be taken as a complete unit where you start with the Data Modeler to get your data structures correct, then use SQL Developer to work further on database objects, before using Application Express to build an application on top. I really appreciate that the tables you work on with the first lab are the same tables you build an application on top of in the APEX labs. These labs should prove very useful for anybody who needs to meet some new business requirements. 

I have always been a huge proponent of modelling since my days using Oracle CASE and then Oracle Designer. If you don't have a well designed base (tables, etc) then whatever applications you build on top will be inherently harder to build and less performant. Too many young developers consider the data structures one of the least important aspects of designing a computer solution.  My take is the better you design the database structures the easier your application development will be so spend the time upfront and reap the rewards later.

Collaborate 2012 reflections

Andrews Consulting - Wed, 2012-05-16 09:34
Collaborate is always worthwhile but it forces you to work hard to catch back up after a week out of the office.  The time since Collaborate has given me a chance to reflect on all that I learned there.  This posting will net out my reactions to a great conference. The JD Edwards community was […]
Categories: APPS Blogs

Future of Oracle Forms conference, part 1

Gerd Volberg - Wed, 2012-05-16 06:00
Yesterday I attend at the "Future of Oracle Forms" conference in Nieuwegein, Netherland.

Great conference !

Lucas Jellema from AMIS started as host with a wide overview over the history of forms, the evolution and future of forms.

After that the day was structured into 3 parts. In the first part each speaker has 30 minutes to show the topics of his presentation. Each speaker got an additionally 45 minutes afterwards, where 3 tracks run parallel in separate rooms. Last but not least, each speaker gave a 120 minutes hands-on in the evening.

to be continued tomorrow in part 2
Gerd

Creating Custom (Calculated) Members

Keith Laker - Mon, 2012-05-14 16:22
If you have ever wanted to report on the total of two or more dimension members you have probably done so using in SQL using SUM ... GROUP BY. 

Let's look at an example using the OLAPTRAIN schema.  Suppose you want the total of the states in the northeastern United States.  In OLAPTRAIN, that would include Massachusetts, Rhode Island, New York and Pennsylvania..

If you did this with SQL, it might look something like this.

SELECT t.calendar_year_long_descr AS calendar_year,
  g.country_long_description      AS country,
  p.all_products_long_descri      AS all_products,
  c.all_channels_long_descri      AS all_channels,
  SUM(f.sales)
FROM time_calendar_view t,
  product_standard_view p,
  geography_regional_view g,
  channel_sales_channel_view c,
  sales_cube_view f
WHERE t.dim_key                 = f.time
AND p.dim_key                   = f.product
AND g.dim_key                   = f.geography
AND c.dim_key                   = f.channel
AND t.level_name                = 'CALENDAR_YEAR'
AND p.level_name                = 'ALL_PRODUCTS'
AND c.level_name                = 'ALL_CHANNELS'
AND g.level_name                = 'STATE_PROVINCE'
AND g.state_province_long_desc IN ('Massachusetts','Rhode Island','New York', 'Pennsylvania')
AND t.calendar_year_long_descr  = 'CY2009'
AND g.country_long_description  = 'United States'
GROUP BY t.calendar_year_long_descr,
  g.country_long_description,
  p.all_products_long_descri,
  c.all_channels_long_descri;

And the query would return as

CY2009    United States    All Products    All Channels    10828869.07

A different way to approach this is to create a custom member that is the aggregate of other members.  In this case, the custom member is added to the dimension and can be used just like any other dimension member.  The only real difference is that a custom member is not within a hierarchy and does not belong to a level.  The advantages are that the custom member is available to all users (unless you control access, more on that later), they work with all of the cube's aggregation rules (e.g., first, last, hierarchical weighted average and so on), they work seamlessly with calculated measures and they are available in all tools (e.g., Excel PivotTables).

Custom aggregates are created using the dbms_cube.import program.  Note that the dimension keys are numeric in OLAPTRAIN.  (Sorry for posting this sample as an image ... blogger wasn't happy about displaying XML.  To view the full example option the image in a new tab or window).




I can view custom members in the dimension or hierarchy view with a query such as this:

SELECT * FROM geography_view WHERE member_type = 'C';

I can query the cube view with a simplified query (note the lack of SUM ... GROUP BY).

SELECT t.long_description AS time,
  g.long_description      AS geog,
  p.long_description      AS product,
  c.long_description      AS channel,
  f.sales
FROM time_calendar_view t,
  product_standard_view p,
  geography_regional_view g,
  channel_sales_channel_view c,
  sales_cube_view f
WHERE t.dim_key                 = f.time
AND p.dim_key                   = f.product
AND g.dim_key                   = f.geography
AND c.dim_key                   = f.channel
AND t.level_name                = 'CALENDAR_YEAR'
AND p.level_name                = 'ALL_PRODUCTS'
AND c.level_name                = 'ALL_CHANNELS'
AND g.long_description          = 'Northeast US'
AND t.calendar_year_long_descr  = 'CY2009';

And the query returns Northeast US rather than a modified version of United States.

CY2009    Northeast US    All Products    All Channels    10828869.07

If it is appropriate for the custom members to be visable to all users, there's nothing else to do.  If you want to control access to custom member, Virtual Private Database is probably a good choice.  

If you would like a sample script that creates a few custom members and sets up a VPD policy to control access, send me an email at william.endress@oracle.com.







Categories: BI & Warehousing

JHeadstart 11.1.2 Evaluation Version and Updated Tutorial Now Available!

JHeadstart - Mon, 2012-05-14 14:41

Anybody who is interested  in building ADF applications like the experts do, and at the same time wants to increase developer productivity significantly should take a look at the free downloadable JHeadstart 11.1.2 evaluation version. This evaluation version is compatible with JDeveloper 11.1.2.1.x and 11.1.2.2. The best way to evaluate the immense power of this JHeadstart release is to follow the comprehensive tutorial, that is updated for this latest release. The tutorial includes instructions for installing JHeadstart, and has step-by-step instructions so even people with minimal or no ADF/Java experience can follow along. You can also download the completed tutorial application here, in case you don't have the time to go over the tutorial. To run the tutorial application, you do need to install JHeadstart (see the tutorial for instructions) as JHeadstart comes with a powerful Java runtime library (source code is included!). 

For more information on JHeadstart, visit the JHeadstart Product Center.

Enjoy!

Categories: Development

DBClarity Webinar - Reusing SQL Queries

Sue Harper - Mon, 2012-05-14 11:19
In my last entry I said that I'd watched Tristan's webinar on reusing a SQL query to create insert and merge statements. I enjoyed the re-usability aspect, so quickly created a video to show the feature, not having the patience to wait for Tristan's webinar to be published! The full webinar is now available; we've edited out the noise in the Q&A section, so it's all good content.  There are few useful questions and answers on pricing and a snippet of news about the great feature coming in the next release.  You can find the video on YouTube:  http://www.youtube.com/watch?v=EbLEmZf79Hc.
If you missed these webinars, we're re-running the series to coincide with a SQL Server Relay, a 5-day event running in various cities and ending in London on the 30th May and we'll be there! Visit the Microgen/DBClarity website to register.

Optimizer Funkiness...

Jeff Hunter - Fri, 2012-05-11 17:00
I have two simple tables that I want to join in an outer join: SQL> @bug32052.sql SQL> set feedback on SQL>  SQL> drop table jh1; Table dropped. SQL> create table jh1 (x number(10)); Table created. SQL>  SQL> drop table jh2; Table dropped. SQL> create table jh2 (x number(10)); Table created. SQL>  SQL> insert into jh1 values (1); 1 row created. SQL> commit; Commit complete. SQL>  SQL

Big Data Analytics SIG - Teradata Universe Dublin April 2012

Donal Daly - Fri, 2012-05-11 11:49
At the recent Teradata Universe Conference held in Dublin,  Duncan Ross, Simona Firmo and I organised a Special Interest Group (SIG) devoted to Big Data Analytics. We were lucky in the high quality speakers and panelists we had as well as the large attendance of delegates on the last day of the conference. I thought I would try to summarise my reflections from the session.

You can find an overview of the SIG here.

We kicked off with a presentation from Duncan, to set the scene for the session -  Every journey starts with an idea / Seven ideas for starting your Big Data journey

Duncan chose to give his presentation via Prezi. You will find a copy of his presentation here. This was an interesting departure from the traditional M$ Powerpoint, and intrigued me enough to plan on using it for a future presentation myself. Certainly the transition between bullet points is more dramatic which some people like and others find nauseating in equal measure :-)

So the 7 ideas that Duncan presented were:

  1. Data exhaust
  2. Crowd Sourcing
  3. Location
  4. Gamification
  5. Self knowledge
    1. Quantified Self
    2. Consumer Data Locker
  6. Data Markets
  7. Open Data
I guess you could consider that 8 ideas Duncan! This presentation suitably warmed up the attendees for presentations from Tom Fastner on Do More with your Data: Deep Analytics. It is fantastic to learn about the scale at which eBay operates. The have an EDW on Teradata at 8+ PB, a Teradata system they call Singularity, for semi structured data at 42+ PB and unstructured data in Hadoop at 50+ PB. It was also interesting to see that the concurrent user population ranged from 500+ with the EDW, to 150+ with the singularity system to 5-10 on Hadoop. He also talked about their behaviour data flow and the value of compression to them.

This was followed by an equally interesting presentation by Professor Mark Whitehorn from the University of Dundee who was ably assisted by Chris Hillman a former student, who recently joined Teradata EMEA as a Principal Data Scientist. I found their presentation fascinating on their research work at Dundee on Proteomics: Science, Data Science and Analytics. Chris turned out to be a true geek, admitting to having built his own Hadoop cluster at home. Rest assured I have since converted him to the even more powerful and productive environment of Teradata Aster. I wasn't sure about his Hadoop cluster at home, but he sent me proof...



Their presentation outlined some of the possibilities of using Big Data analytics techniques  on Proteomics, that could lead to dramatic improvements in drug discovery and shorten the drug development lifecycle. While this is a highly complicated area, it really outlines an innovative and possible very critical use case for big data analytics. I learnt that Mass Spectrometry generates 7GB of raw data per 4 hours and in excess of 15 TB per year that needs to be analysed and that's from only one machine! Teradata is working with university to bring this research forward. Stay tuned for more updates in this area in the future.

We then moved onto a panel session and our speakers where joined by Navdeep Alam from Mzinga, a Teradata Aster customer, who presented earlier in the week and our very own Dr. Judy Bayer from Teradata. We were hoping for a provocative panel session, so we set the title as: Big Data and Analytics for Greater Competitive advantage



Duncan and I brainstormed some questions in advance to kick off the panel session. The questions we posed were:

Q. What is the one word that sums up Big data for you?
Q. What makes a good Data Scientist?
  • Curious, 
  • open mind, 
  • good communicator, 
  • creativity, 
  • passion for finding the stories in the data

Q. What is the most important Big Data Analytical Technology and why?
  • MPP
  • Fault Tolerance 
  • Visualisation 
  • Path Analysis 
  • Ecosystem

Q. If Big Data Fails in 2012 what will be its cause?
  • Data Silos
  • Stupidity :-) 
  • Lack of skilled people 
  • Unreasonable expectations?

Q. If you were starting a Big Data project tomorrow (and could choose to do anything)
     what would you do?
  • Study the universe
  • Proteomics
  • Natural Language Processing
  • Projects to benefit society



Did you attend this SIG? If so, what were your impressions?

Learn to Reuse your SQL Queries: Working with Subqueries and Merge

Sue Harper - Fri, 2012-05-11 10:04
This week we ran a new webinar for DBClarity Developer, focusing on creating SQL queries, first by creating a query and then reusing that query - using DBClarity Developer  - to make things nice and easy.  I go back and forth on this"nice and easy" because I started life writing SQL at the command line, so visual, graphical queries are still relatively new to me.  As I watched the webinar this week, I felt that same twinge of excitement when I show anyone something new.  Over the years I have loved teaching and presenting neat features in products.  I have not been at a conference or event in over a year, but I couldn't wait to show you this piece of code  - hence this little video.  It's all easy stuff, and I'm sure you'll like the "reuse" aspect of the demo.

I'm stealing a bit of Tristan's thunder. He did the webinar and the demo and in the video below, I'm doing an exact rework of his demo.  In the webinar he also talks of the benefits of the product and mentions an exciting new feature in the next release, so you'll have to watch the webinar to get all that news!

If your SQL is a little rusty, perhaps it takes a little while to build up a query or if you're wanting to learn new SQL syntax, then take a look at this demo.




More Information

Conference "Future of Oracle Forms"

Gerd Volberg - Thu, 2012-05-10 06:00
I got an invitation to an interesting conference in the netherlands next week (May 15th 2012).


AMIS in the netherlands is the initiator of the conference and host, too.

The conference is splitted into two parts. From 9 to 5 we will hear many presentations from the top speakers in europe. Francois Degrelle, Wilfried van der Deijl, Mia Urman and many others are on the list. In the evening we can use our own notebook to participate in hands-on-sessions!

That will be a good chance, to hear and see, what can be done to modernize your Oracle Forms.

Links to AMIS are here :

Day-Program

Evening-Program

I'm glad to meet all the speaker and can discuss with them over the future of forms.
Gerd

Add a new hard drive to your Oracle Developer Days VM

Barry McGillin - Wed, 2012-05-09 06:59
For those of you who end up using the Oracle Developers Day VM for more that just demo's but playing with other things too, will find that at some point, you'll need more space. (Like I did)   Today's post is about just that.  We're going to add a new VMDK drive to our virtual machine and configure it so its available to you in the machine.


First thing we want to do is to have a list of the devices in your linux box.  This will save you searching for it once you add it later.



[oracle@localhost ~]$ cd /dev
[oracle@localhost dev]$ ls -al hd*
brw-r----- 1 root disk 3, 0 May 4 05:50 hda
brw-r----- 1 root disk 3, 1 May 4 05:51 hda1
brw-r----- 1 root disk 3, 2 May 4 05:50 hda2
brw-r----- 1 root disk 3, 64 May 4 05:50 hdb
brw-r----- 1 root disk 3, 65 May 4 05:51 hdb1
[oracle@localhost dev]$


Now we can power down the machine and add the drive.



You need to make sure your VM is powered down so we can make changes to the server.




Checking the storage frame of this VM, we can see that there is only two drives connected.  Double clicking on the storage frame pops up the storage window where we can add the drive.



Clicking on add drive, asks us if we want to add an already built drive or add a new one.  We want to add a new one.


We then choose a VMDK to use.  There are other types, but we're using this one for now.


On the next page of the wizard, we choose dynamically allocated. which will size the disk to just the be the size of the data that is in it.  So if there is no data on the drive, this file will be tiny.


Next we give it a name and size.


Clicking ok to finish the wizard show the new drive added.  One las thing we do is to change the type of the hard drive to be a secondary slave.



And there we have it, one file added.  This is useless to us though until we go in and format configure it in linux, then bring it online so its of use to us.




Ok, Now we have a drive attached to our virtual machine.  All that remains is for us to configure it in in the machine so it is formatted and mounted.


Firing up the VM as normal, we want to SU as root for the next phase.  The first thing we need to do is to format the disk.

[oracle@localhost ~]$ cd /dev
[oracle@localhost dev]$ ls -al hd*
brw-r----- 1 root disk 3, 0 May 4 05:50 hda
brw-r----- 1 root disk 3, 1 May 4 05:51 hda1
brw-r----- 1 root disk 3, 2 May 4 05:50 hda2
brw-r----- 1 root disk 3, 64 May 4 05:50 hdb
brw-r----- 1 root disk 3, 65 May 4 05:51 hdb1
brw-r----- 1 root disk 3, 65 May 4 05:53 hdd
[oracle@localhost dev]$


Now looking at the top device listing versus this one we can see that the new device that has been add is /dev/hdd


This disk that we've added is blank and raw so the first thing we need to do is to set up partitions and then format the disk.

[oracle@localhost dev]$ sudo fdisk /dev/sdd

Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)

Command (m for help):


Choose 'n' to create a new partition and then choose 'e' and then pick the defaults through that option.

Command (m for help): n
Command action
e extended
p primary partition (1-4)

Finally, when this comes back, choose the 'w' to write the partition table back to disk.

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[oracle@localhost dev]$

Now we can build the file system on the disk we have partitioned with mkfs.

[oracle@localhost dev]$  sudo mkfs -t ext3 /dev/sdd
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
6111232 inodes, 12211400 blocks
610570 blocks (5.00%) reserved for the super user
First data block=0
373 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

[oracle@localhost dev]$


Now you have a drive, but its not mounted anywhere so you still cant see it.    You will now need to create a mount point for your drive in the root file system.

[oracle@localhost ~]$ sudo mkdir -p /newdrive
[sudo] password for oracle:
[oracle@localhost ~]$

 And lastly you can issue the mount command to mount the drive to that mount point.

[oracle@localhost ~]$ sudo mount -t ext3 /dev/hdd /newdrive
[oracle@localhost ~]$

Now you can list your drive with 'ls -al /newdrive' and it is listed and usable.  However, the next time, the machine is rebooted, you will not have this drive mounted.  We need to add a line to the file /etc/fstab to allow it to be mounted automatically.

LABEL=/                 /                       ext3    defaults        1 1
LABEL=/home /home ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-hda2 swap swap defaults 0 0
http://localhost:80 /home/oracle/dav davfs noauto,users 0 0
/dev/hdd /newdrive ext3 defaults 1 2

Adding the line above to this file will allow the drive to be mounted each time the machine reboots.  


Now you have a drive which you can use for data or install other Oracle software on, like Oracle Golden Gate  to help synchronise data between databases.  Find out more about the Oracle developer day VM on OTN


Convert Excel Julian date to Oracle Date datatype

Mike Moore - Mon, 2012-05-07 15:09

SQL>  select to_date(to_char(2415019+41029),'J') dd from dual

DD    
---------
30-APR-12
1 row selected

Where 41029 is the Excel Julian Date.

Procedure to apply the PROD incremental backup based on the SCN of the DR

Ayyappa Yelburgi - Mon, 2012-05-07 02:49
Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4 ayyudbahttp://www.blogger.com/profile/00046200352601718598noreply@blogger.com283

Scheduler jobs and Active Standby

Fairlie Rego - Mon, 2012-05-07 00:30
One of the kewl enhancements in 11g is fact that you can now have a standby database in read only active mode applying changes from the primary. You need to be licensed for the Active Dataguard feature but this entry is not about that..

I have been using Active Dataguard for more than 2 years where we have a application service which runs solely on the standby and is used by an adhoc query tool.Other than the odd bug it has proved to be quite useful

Now you would assume that everything in the dictionary on the primary (and not memory based views) would be visible on the standby.
So I was quite bemused when a simple query on dba_scheduler_jobs was not showing any information on the standby.
It turns out that the view definition as shown below

***********************************************************
AND j.class_oid = co.obj#(+)
AND ( j.database_role = v.database_role
OR (j.database_role IS NULL AND v.database_role = 'PRIMARY')

************************************************************

Hence when you query this view on the standby you do not see any jobs

Update on InteliVideo

Bradley Brown - Sat, 2012-05-05 01:54
I'm making it easy for people to upload their content, create classes, and ultimately monetize their knowledge.

We all know that DVDs are going away. Everyone is watching movies on their iPads and iPhones now. You see kids watching movies at restaurants on iPhones. My company, InteliVideo has built a platform that helps those companies with libraries of DVDs move into the world of streaming and downloadable videos for any device. It's a marketplace and companies can do everything themselves - it's entirely self service. We collect the money, keep track of who bought what and how long they can watch it, and ultimately deliver the content using our cloud-based platform.

This is an example of an IFRAME that an owner can pull off my site.

Here are the main categories:
 

Here is a specific category:


And another - try rolling your mouse over these...:



And the final category:

What are the JCA Adapters that are officially supported to work with Oracle Service Bus 11.1.1.6?

Ramkumar Menon - Thu, 2012-05-03 16:58

Refer to Section 25.2.1 of the Oracle Service Bus Developer's Guide. Excerpt from the section inlined below.

Technology Adapters

1. Custom JCA adapters
2. Oracle JCA Adapter for AQ
3. Oracle JCA Adapter for Database
4. Oracle JCA Adapter for Files/FTP
5. Oracle JCA Adapter for Sockets
6.Oracle BAM Adapter (Business Activity Monitoring)

Application Adapters

1. Oracle Adapter for Oracle Applications.
2. PeopleSoft (Oracle Application Adapters 10g)
3. SAP R/3 (Oracle Application Adapters 10g)
4. Siebel (Oracle Application Adapters 10g)
5. J.D. Edwards (Oracle Application Adapters 10g)

What are the JCA Adapters that are officially supported to work with Oracle Service Bus 11.1.1.6?

Ramkumar Menon - Thu, 2012-05-03 16:58

Refer to Section 25.2.1 of the Oracle Service Bus Developer's Guide. Excerpt from the section inlined below.

Technology Adapters

1. Custom JCA adapters
2. Oracle JCA Adapter for AQ
3. Oracle JCA Adapter for Database
4. Oracle JCA Adapter for Files/FTP
5. Oracle JCA Adapter for Sockets
6.Oracle BAM Adapter (Business Activity Monitoring)

Application Adapters

1. Oracle Adapter for Oracle Applications.
2. PeopleSoft (Oracle Application Adapters 10g)
3. SAP R/3 (Oracle Application Adapters 10g)
4. Siebel (Oracle Application Adapters 10g)
5. J.D. Edwards (Oracle Application Adapters 10g)

If You Are Interested In OUD - You Need To Be Reading Sylvain Duloutre's Blog

Mark Wilcox - Wed, 2012-05-02 14:38
My colleague Sylvain Duloutre is writing a series of posts about Oracle Unified Directory (OUD) including how to co-habitate and migrate from DSEE to OUD which is how we believe most existing DSEE customers who adopt OUD will make the move.You can read his blog here.

If You Are Interested In OUD - You Need To Be Reading Sylvain Duloutre's Blog

Mark Wilcox - Wed, 2012-05-02 14:38
My colleague Sylvain Duloutre is writing a series of posts about Oracle Unified Directory (OUD) including how to co-habitate and migrate from DSEE to OUD which is how we believe most existing DSEE customers who adopt OUD will make the move.
You can read his blog here.

Pages

Subscribe to Oracle FAQ aggregator