Wednesday, August 26, 2015

Easy Getting Started Example with Data Virtualization for Developers

Data Virtualization (Teiid) provides Architects, Database Administrators and Developers the ability to build Data Services with federated and aggregated views of data with ease.   DV gives them a fast, easy and agile experience in Data Integration.  Instead of building connections to individual data sources and transformations for a aggregated view,  Developers can use DV for creating Data Abstraction Layers for Data Integration and then utilize many different interfaces for consuming the data.

We have created a simple way for Developers to quickly view the product and view/run a simple project.  This gives them a Hello World experience.  The Getting Started example revolves around a Customer Context with data from a XML file and a CSV file.  The repository has all the instructions to install DV and JBDS, import the project, view data from the views, deploy the Virtual Database and browse to the data.  Scripts are also included to automatically install and run DV then test OData urls.  This provides the ability to use 1 of 3 options - Option 1 with JBDS and Option 2 without JBDS.

Credentials setup during install
Management Credentials: admin/redhat1!
Datavirtualization Credentials: teiidUser/redhat1!
Datavirtualization Dashboard Credentials: dashboardAdmin/redhat1!

Steps to Run the Demo
OPTION 1 - RUNNING AND PREVIEWING WITHIN JBDS:
STEP 1: Clone the Repository and Download Data Virtualization
-git clone https://github.com/jbossdemocentral/dv-gettingstarted.git
-Download from jboss.org http://www.jboss.org/products/datavirt/download/
-Install Data Virtualization enabling OData

STEP 2: Import, Preview Data and Deploy
-Download JBDS http://www.jboss.org/products/devstudio/download/
-Install JBDS and the Integration Stack https://devstudio.jboss.com/updates/8.0/integration-stack/
-Add and start a new server with the home directory of the installed DV from above
-Verify management and jdbc connections on the Teiid instance
-Refresh the server
-Import the project into JBDS (should have JBDIS installed)
-Verify default teiid instance from actions in Teiid perspective
-Right click on the 3 views/tables and preview the data
-Click on the VDB and execute the selected text SELECT * FROM CustomerContextView.CustomerContextTable;
-Deploy the VDB

STEP 3: Browse the Data Virtualization and the Data throughthe Chrome Browser
-All Data
http://localhost:8080/odata/CustomerContextVDB/CustomerContextView.CustomerContextTable?$format=json
-Specific Entity
http://localhost:8080/odata/CustomerContextVDB/CustomerContextTable('123')?$format=json
-Metadata
http://localhost:8080/odata/CustomerContextVDB/$metadata
-Management Console to view Virtual Database
http://localhost:8080
-Dashboard
http://localhost:8080/dashboard/

As Easy as 1,2,3....

OPTION 2 - STEPS TO RUN WITHOUT JBDS:
STEP 1: Clone the Repository and Download Data Virtualization
-git clone https://github.com/jbossdemocentral/dv-gettingstarted.git
-Download from jboss.org http://www.jboss.org/products/datavirt/download/
Put the Data Virutalization Download, jboss-dv-installer-6.1.0.redhat-3.jar, into the software folder

STEP 2: Run Scripts in the scripts folder
-Run ./init.sh to setup DV
-Run ./run.sh to run DV. Verify DV started completely with tail -f dv.log
-Run ./test.sh > out.txt to test the OData url

STEP 3: Browse the Data Virtualization and the Data
-View the out.txt to see All Data, Specific Entity and Metadata examples for XML format and/or run the three below individually through the Chrome browser
-All Data
http://localhost:8080/odata/CustomerContextVDB/CustomerContextView.CustomerContextTable?$format=json
-Specific Entity
http://localhost:8080/odata/CustomerContextVDB/CustomerContextTable('123')?$format=json
-Metadata
http://localhost:8080/odata/CustomerContextVDB/$metadata
-Management Console to view Virtual Database
http://localhost:8080
-Dashboard
http://localhost:8080/dashboard/

As Easy as 1,2,3....

OPTION 3 - CONTAINERIZED INSTALL:
STEP 1: Clone the Repository and Download Data Virtualization
-git clone https://github.com/jbossdemocentral/dv-gettingstarted.git
-Download from jboss.org http://www.jboss.org/products/datavirt/download/
Put the Data Virutalization Download, jboss-dv-installer-6.1.0.redhat-3.jar, into the software folder
STEP 2: Create and Run Container
  • Copy Dockerfile and .dockerignore files from support/docker directory to the project root.
  • Build demo image
    docker build -t jbossdemocentral/dv-gettingstarted .
    
  • Start demo container
    docker run -it -p 9990 -p 9999:9999 -p 8080:8080 -p 31000:31000 jbossdemocentral/dv-gettingstarted
    
  • In many cases, the docker socket may not utilize the localhost interface. Changes may be required to modify the following scripts to utilize the correct interface docker is utilizing
    • run.sh
-Run ./test.sh > out.txt to test the OData url
STEP 3: Browse the Data Virtualization and the Data
-View the out.txt to see All Data, Specific Entity and Metadata examples for XML format and/or run the three below individually through the Chrome browser.
-All Data
http://<DOCKER_HOST>:8080/odata/CustomerContextVDB/CustomerContextView.CustomerContextTable?$format=json
-Specific Entity
http://<DOCKER_HOST>:8080/odata/CustomerContextVDB/CustomerContextTable('123')?$format=json
-Metadata
http://<DOCKER_HOST>:8080/odata/CustomerContextVDB/$metadata
-Management Console to view Virtual Database
http://<DOCKER_HOST>:8080
-Dashboard
http://<DOCKER_HOST>:8080/dashboard/
As Easy as 1,2,3....

Tuesday, August 25, 2015

Teiid and Data Virtualization at the EMEA Partner Conference

The EMEA Partner conference is October 4th to October 7th, 2015 in Frankfurt at the Congress Center Messe Frankfurt.  Data Virtualization is included in 2 presentations and 1 lab.

Presentation 1 - Integration Red Hat Mobile with Data Virtualization
Date/time: Monday, October 5, 2015 - 17:00 to 17:40
Abstract: Being Updated

Presentation 2 - Big Data in Action with Red Hat JBoss Data Virtualization
Date/time: Wednesday, October 7, 2015 - 10:15 to 10:55
Abstract: Hortonworks Data Platform (HDP) with Red Hat JBoss Data Virtualization (DV) integrates Hadoop with existing information sources including data warehouses, SQL databases and enterprise applications. The solution creates business-friendly, reusable and virtual data models with unified views by combining and transforming data from multiple sources including Hadoop so developers and business analysts can build new applications that exploit new data sets. In this session we will discuss HDP and DV integration and show a real world example of Big Data with DV. DV will leverage HDP to mashup Clickstream analysis data with product and customer data on HDP to provide Virtual Data Marts to Marketing and Product Teams for multi-departmental teams.

The Red Hat Partner Conference agenda has a variety session types including keynotes, breakout tracks, Labs Unlimited, examination and more.

  • Exhibition
    Exhibition
    Visit the exhibition.
  • Keynotes
    Keynotes
    Gain insights from Red Hat and partner executives.
  • Breakout tracksBreakout tracks
    Breakout sessions are 40 minute presentations by subject-matter experts focused on a particular topic. Get your existing sales accreditation extended by participating in defined sessions. The defined sessions will be published here.

  • Labs UnlimitedLabs Unlimited
    Over 35 labs, both instructor-led courses (see daily agenda for details) and self paced test labs (ongoing in Spektrum I).

  • Red Hat ExaminationRed Hat Examination*
    Red Hat examinations are free of charge training certifications. We offer these examinations during the EMEA Partner Conference:
    • Red Hat Certified System Administrator (RHCSA) exam (EX200)
    • Red Hat Certified Engineer (RHCE) exam (EX300)
    • Red Hat Certified System Administrator in Red Hat OpenStack exam (EX210)
    • Red Hat Certified JBoss Developer exam (EX225)
    • Red Hat Certified JBoss Administrator (RHCJA) exam (EX248)

Tuesday, August 11, 2015

JDV and JDG Finalist in the DBTA 2015 Readers Choice Awards

We are very excited to announce that both JBoss Data Virtualization and JBoss Data Grid were finalist in the Database Trends and Applications (DBTA) Readers Choice Awards for 2015.   JBoss Data Grid was a Finalist in the category, Best In-Memory Database.   JBoss Data Virtualization was a Finalist in the category, Best Data Virtualization Solution.  There were 29 categories in which products could be nominated and ultimately voted upon.  The categories were wide-ranging for the Data Industry.  For instance, there are Hadoop distributions, NoSQL database products, and cloud products and services, but also categories to recognize products in more established segments of the market such as relational database management, MultiValue, business intelligence, and data integration.


Red Hat JBoss Data Virtualization (JDV) concentrates on three main concepts listed below:
  • Connect provides Data Federation across one to many disparate data sources so that aggregated views can be built 
  • Compose provides the Data Integration which allows discovery, cleansing, monitoring, transforming and delivery of data from diverse sources
  • Consume provides Data Abstraction which is the reduction of a particular set of data to a simplified or essential elements of data.
The main concepts bring us to the overall goal of JDV from DBTA which is to achieve a complete view of enterprise data across disparate data environments.   As businesses are increasingly using a wide range of technologies for structured and unstructured data that is located across systems there is a risk of moving further from the main goal.  But using JBoss Data Virtualization reduces or removes this risk since data from across the enterprise can be abstracted into the essential data services provided through Virtual Databases (VDBs).   The data services gives companies the ability to reduce complexity and improve data analysis.  A secondary goal is to to allow organizations a complete data view without having to modify or remove physical systems in place.

So to summarize, according to the DBTA, the successful solutions provide agile enterprises agile development, a secure virtual data layer and real-time data access and provisioning.


JDG is an in-memory data grid (IMDG) solution that resides entirely in RAM, and is distributed among multiple servers. Recent advances in 64-bit and multi-core systems have made it practical to store terabytes of data completely in RAM, obviating the need for mass storage media such as hard disks.

According to industry analyst firm Gartner Inc., IMDGs are suited to handle big data's "big-three V's": velocity, variability, and volume. IMDGs can support hundreds of thousands of in-memory data updates per second, and they can be clustered and scaled in ways that support large quantities of data. Specific advantages of IMDG technology include:
  • Enhanced performance because data can be written to, and read from, memory much faster than is possible with a hard disk.
  • The data grid can be easily scaled, and upgrades can be easily implemented.
  • A key/value data structure, rather than a relational structure, provides flexibility for application developers.
  • The technical advantages provide business benefits in the form of faster decision making, greater productivity, and improved customer service.
Applications that can benefit from IMDG include financial-instrument pricing in banks, shopping carts in e-commerce, user-preference calculations in Web applications, reservation systems in the travel industry, and cloud applications.

So to summarize, the successful solutions provide access to data quickly and easily.

Friday, August 7, 2015

New Data Virtualization Stickers

We have new Data Virtualization (Teiid) images for stickers available which are great for laptop covers, notebook covers, etc.  Watch for these stickers across the globe.  I usually order the die cut stickers from Sticker Mule.  You can access the Sticker Mule Templates here.  You can also get the stickers from the JBoss Middleware Business Unit.  Just reach out to our Evangelists, Data Virtualization Product Marketing Manager or Data Virtualization Product Manager.

Enlighten your data

Knowledge is power

One view to query 'em all!


Wednesday, August 5, 2015

Teiid Designer Diagram Model Size

Teiid Designer in the JBoss Developer Studio Integration Stack (JBDIS) contains different preferences that allows the Developer to customize their development experience.  We will highlight one of the preferences in this article.

Teiid Designer is a visual tool that enables rapid, model-driven definition, integration, management and testing of data services without programming using the Data Virtualization (Teiid) runtime framework.  Teiid Designer is a part of the JBoss Developer Studio Integration Stack.  The JBoss Tools integration stack is a set of Eclipse plugins that add support for JBoss SOA, Data Virtualization and Business rules related frameworks, such as Drools, Teiid, jbpm, SwitchYard, Fuse, etc.

One of the Teiid Designer preferences is the Diagram Settings.  One of the settings is the Model Size.  Since displaying very large diagrams may take a considerably long time, this preference allows users to set an upper limit on the number of objects to display in a diagram.  If this limit is exceeded, a warning message is displayed to the user and the diagram is not constructed.

To get to this setting click on Window in the menu and then Preferences.


Within the Preferences window, after clicking the Teiid Designer preferences, the preferences will show in the left which include General, Diagram, Editor and Validation settings.


After clicking on the Diagram Preferences, the settings window will display.


The Model Size default is 20000 and can be changed to a larger value.

To find out more about the Teiid Preferences you can take a look at the Product Documentation.

To find out more about how to integrate faster with Red Hat JBoss Middleware and Data Virtualization (DV) you can take a look at the DV Product Pages.

Thursday, July 30, 2015

Friday is System Administrator Day

Happy SysAdmin Day!

Wait… what exactly is SysAdmin Day? Oh, it’s only the single greatest 24 hours on the planet… and pretty much the most important holiday of the year. It’s also the perfect opportunity to pay tribute to the heroic men and women who, come rain or shine, prevent disasters, keep IT secure and put out tech fires left and right.
At this point, you may be thinking, “Great. I get it. My sysadmin is a rock star. But now what?” Glad you asked! Proper observation of SysAdmin Day includes (but is not limited to):
  • Cake & Ice cream
  • Pizza
  • Cards
  • Gifts
  • Words of gratitude
  • Custom t-shirts celebrating the epic greatness of your SysAdmin(s)
  • Balloons
  • Streamers
  • Confetti
Friday, July 31, 2015, is the 16th annual System Administrator Appreciation Day. On this special international day, give your System Administrator something that shows that you truly appreciate their hard work and dedication. (All day Friday, 24 hours, your own local time-zone).
Let’s face it, System Administrators get no respect 364 days a year. This is the day that all fellow System Administrators across the globe, will be showered with expensive sports cars and large piles of cash in appreciation of their diligent work. But seriously, we are asking for a nice token gift and some public acknowledgement. It’s the least you could do.
Consider all the daunting tasks and long hours (weekends too.) Let’s be honest, sometimes we don’t know our System Administrators as well as they know us. Remember this is one day to recognize your System Administrator for their workplace contributions and to promote professional excellence. Thank them for all the things they do for you and your business.

Wednesday, July 29, 2015

Java EE and Node.js Comparison



I was looking for a quick comparison of JavaEE and Node.js and came across a blog from StrongLoop that I thought did a good job of a quick comparison including an example for both.  


In their post, they showed how to create a REST based web service using Java EE. This service returned a list of beers from the fantastic Pabst Brewing Company. Then created the same application using StrongLoop LoopBack and Node. With very little code in Node, they created a REST web service that returns the name and description of our beers. In addition, the LoopBack API also provides default actions for the entire CRUD process.

The table below shows some of the comparisons discussed in the blog:
Feature
Java EE
Node.js
Great IDE support
Yes, multiple choices including Eclipse, Sublime and Idea
Yes, multiple choices including Visual Studio, Eclipse, Sublime
Dependency management
Maven
NPM
Enterprise ready
Yes, in use today
Yes, in use today
Large ecosystem of libraries
Yes
Yes
Requires JVM
Yes
No
Common frameworks
Spring, JEE
Express
Database support
Yes
Yes
ORM frameworks
Yes
Yes
Testing Frameworks
Yes
Yes


References:
https://strongloop.com/strongblog/node-js-java-getting-started/
http://blog.shinetech.com/2013/10/22/performance-comparison-between-node-js-and-java-ee/
http://www.infoworld.com/article/2883328/java/java-vs-nodejs-an-epic-battle-for-developer-mindshare.html