Community Articles
Find and share helpful community-sourced technical articles.
Check out our newest addition to the community, the Cloudera Innovation Accelerator group hub.
Labels (1)
Super Guru

With NiFi 1.00 I ingested a lot of image data from drones, mostly to get metadata like geo. I also ingested a resized version of the image in case I wanted to use it. I found a use for it.


I am pulling this out very simply with Spring for a simple HTML page. So I wrote a quick Java program to pull out fields I stored in Phoenix (from the metadata) and I wanted to display the image. I could have streamed it out of HDFS using HDFS libraries to read the file and then stream it.

sql = "select datekey, fileName, gPSAltitude, gPSLatitude, gPSLongitude, orientation,geolat,geolong,inception from dronedata1 order by datekey asc";
PreparedStatement ps = connection.prepareStatement(sql);
ResultSet res = ps.executeQuery();
while ( {
    try {
      out.append("<br><br>\n<table width=100%><tr><td valign=top><img src=\"");
      out.append("<td valign=top>Date: ").append(res.getString("datekey"));
      out.append("\n<br>Lat: ").append(res.getString("geolat"));
      out.append("\n<br>Long: ").append(res.getString("geolong"));
    } catch (Exception e) {

It was a lot easier to use the built-in WebHDFS to display an image. Wrapping the Web API call to the image file in an HTML IMG SRC tag loads our image.



It's pretty simple and you can use this with a MEAN application, Python Flask or your non-JVM front-end of choice. And now you have a solid distributed host for your images. I recommend this only for internal sites and public images. Having this data publicly available on the cloud is dangerous!

Don't have an account?
Version history
Last update:
‎08-17-2019 09:14 AM
Updated by:
Top Kudoed Authors