-
1. Re: Using jBoss Data Virtualization platform
rareddy Nov 25, 2014 10:14 AM (in response to prabodh1987)1 of 1 people found this helpfulPrabodh,
Yes, it is possible. Teiid has another type of VDB called Dynamic VDB. See VDBs - Teiid 8.10 (draft) - Project Documentation Editor
- Dynamic VDB is XML file, you can build this file programatically
- You can use Admin API to deploy and undeploy VDBs, so when you think you have new source, or remove source create a XML VDB file and deploy it
- Once deployed, this VDB gets its metadata from sources directly, or you can supply the DDL inside the XML file that represents the model.
- Once the VDB is active, you can connect to it and issue SQL queries against it.
Note that every time you want to add a new source or remove a old source, you need to create new XML file and deploy it. If there are users connected to the previous VDB, you can either kill those sessions or deploy the new VDB as different version such that any new connections will go to the new VDB. If your client is REST based, then since those sessions are short lived you do not need to worry about it. So, it matters what kind of client you are using?
If do not want write XML, you even do much tighter integration with what Teiid calls as "MetadataRepository", which represents a VDB. Think like some SVN, GIT, RDBMS etc which can supply the schema information about your sources inside the VDB. Obviously this is much more involved topic, so either ask specific questions for us to help with, or seek professional help from RedHat.
HTH.
Ramesh..
-
2. Re: Using jBoss Data Virtualization platform
shawkins Nov 25, 2014 10:18 AM (in response to prabodh1987)1 of 1 people found this helpful> However, it looks like I have to use teiid designer to create virtual databases at design time and then to query these virtual databases at run time. This will not work for me. I need the entire data access to be dynamic.
Teiid Designer is not required. You can create what we call vdbs with just an xml file or a zip - Dynamic VDBs - Teiid 8.10 (draft) - Project Documentation Editor
It depends on what you mean by dynamic as to whether Data Virtualization will be a good fit. If you mean that you want the user to enter any query against some combination of sources, then Data Virtualization will work well. If you want to have sources that are added/removed dynamic and associated tables/views/procedures are created dynamically, then Data Virtualization may not be a good fit. Any structural metadata change for Teiid currently requires a new vdb revision to be deployed.
> Can someone please guide me on this? Any links to samples are greatly appreciated!!
A good place to start: Home - Teiid Examples - Project Documentation Editor
-
3. Re: Using jBoss Data Virtualization platform
prabodh1987 Nov 25, 2014 5:45 PM (in response to prabodh1987) -
4. Re: Using jBoss Data Virtualization platform
rareddy Nov 25, 2014 7:28 PM (in response to prabodh1987)It does *not* handle changes in source systems. The metadata of the source is retrieved at the deploy time of the VDB, as long as you willing to re-deploy/re-load the VDB then at that time based on some event, it can can a fresh copy of the schema from source. The question you need to ask is, how does your client know that there is new source and new table or new column available for access?
May be you are going about the usecase incorrectly with respect to DV, if you wan explain what you are trying to achieve may be can help, if DV is right fit or not.
Ramesh..