Presentation on theme: "RBNB DataTurbine (Ring Buffered Network Bus )"— Presentation transcript:
1RBNB DataTurbine (Ring Buffered Network Bus ) Released under Apache 2.0 Open Source LicenseSolution for accessing both streaming and static data, from different vendor systems, via a common interfaceProvides real high performance data streaming, 10Mb/sec, frames/sec on PCsSupported by NASA SBIR,15 years in developmentNSF invested in supporting open-source development of the Data TurbineSDCI project, , ~ $850KIt is one of just a handful (actually, 2) comprehensive solutions for managing streaming data
2Motivating Projects NEON – Ecology (you’ll see a working demo) GLEON – Hydroecology (deployed, international)CREON – Coral reefs (development, deploy 2007)MoveBank – Animal tracking (newly funded, NSF)Bridges and Civil Infrastructure – Engineering (testbed status)NEES – Earthquake Engineering (deployed)PRAGMA – Pacific Rim Applications and Grid Middleware Assembly (deployed)
4More about the DataTurbine Can be configured to feed data to several applications, including remote serversSupports multiple types of streams: real-time monitoring, video and multimedia, telemetry, instant messages, etc. etc.Can be accessed via URLs (e.g. can stream to browser); one can also write to the server via browserCan be mapped as a network drive (e.g. as a “Web Folder” opened in IE), built-in support in Windows, Mac OS X, Linux, several other systemsHas a programmer API, and a developer community. .Net support available (though Java is used more often)Has direct connection with Matlab; M-files are provided with standard distributionHas several standard applications: rbnbAdmin, rbnbSource (signal generator), rbnbPlot, rbnbChatScalable: DataTurbine servers can be interconnected to handle large streamsCan manipulate the streams: fast forward or slow motion playback (TiVo-like)Secure access to DataTurbine Server, based on user credentials (under development)These are common streaming data infrastructure requirements
5RBNB DataTurbine as infrastructure component Scalable, secure, programmable, versatile for different data types and vendor interfaces, developer community, with many applications written (e.g. data viewers and plug-ins)Typical scenarios:CS loggersLoggernetCS loggersDBMSNI loggersMonitoring and management appsOther proprietary or in-house
7Web sites and demos Main site: http://www.dataturbine.org DASH demo:Geeting RBNB: neesforge.nees.org/projects/rbnb/ Real-time Data Viewer (RDV):JavaDoc: C:\Program Files\RBNB\V3.1B1\Documentation\JavaDoc\index.html
8Requirements You need: A computer running Linux, Windows, Unix, OSX or similar.More importantly, it must have a working JVM, version 1.1 or later. Different brands of JVMs should be fine (e.g. Sun, IBM, Jrocket, etc)Enough memory to hold the data you wantEnough disk to contain the archive you wantA network connection that's fast enough and reliable enough for your needs.We like Apple minis as minimal servers. With 2GB of memory, they're fast and cheap. However, since all that matters is the JVM, you can use whatever you prefer.In general, more memory is good. A 32-bit JVM can use up to 3.5GB, and with a 64-bit JVM you can address as much as you can afford.If you have extreme needs, consider a 64-bit Sun box. We've had good results with their Niagara-architecture T2000.
9Setting Up Get RBNB and install (double click Jar file) RBNB-V3.1B1 has been successfully installed to:C:\Program files\RBNB\V3.1B1Usage-----To use this product, start the Web server by either:1) WINDOWS: using the shortcut provided on the desktop.2) LINUX/UNIX/MACOSX: by executing the script:C:\Program files\RBNB\V3.1B1/bin/Start_WebServer.shOnce the Web server has been started, point your Web browser to:. . .
10Inserting stream data in RBNB Configure the sensors. The data sources can produce either numeric or image data.According to RBNB Simple API (SAPI), create a program to insert stream data in RBNB server. Using simple API defined by RBNB, create a “source” program to insert the digital data values into RBNB. Documentations on SAPI and examples are included in the downloaded package (C:\Program Files\RBNB\V3.1B1\Documentation\JavaDoc\index.html)
11Install RDV and verify data stream Real-time Data Viewer is the usual DataTurbine clientInstall itLaunch via JNLP, the Java Network Launch Protocol. This requires that you write a small XML file defining the application, command line parameters and JVM options. An example can be found at it.nees.org/software/rdv/RDV.jnlp Note that deploying this requires a Java code signing certificate and the jarsigner program; you'll have to get your own or use our signed JAR files.
12Now, the familiar ODM part… Setup ODM database in HIS, and insert various metadata information in itat the moment, we automatically insert the sensor data only. Site information, sensor type information, and other appropriate fields need to be populated.Configure the JAVA program ‘stream2db’ and run it.The program automatically inserts data values from the RBNB into ODM database when the new data arrives in RBNB server. It needs the name mapping between the sensor channels from the RBNB and column name and table names in ODM database.Monitor the databaseOpen the ODM in SQL Management Studio and edit tables. Open DataValues table and see the values that came.Configure web services over the ODM, and DASHWe’ve done it before