1973
Posts
1225
Kudos Received
124
Solutions
My Accepted Solutions
| Title | Views | Posted |
|---|---|---|
| 1912 | 04-03-2024 06:39 AM | |
| 3009 | 01-12-2024 08:19 AM | |
| 1642 | 12-07-2023 01:49 PM | |
| 2419 | 08-02-2023 07:30 AM | |
| 3355 | 03-29-2023 01:22 PM |
04-15-2018
09:55 AM
3 Kudos
TIBCO Enterprise Message Service https://www.tibco.com/products/tibco-enterprise-message-service I tested this against the most recent release of TIBCO Enterprise Message Service and their JMS driver available via trial download. I followed the very easy install directions. I downloaded it to a Centos 7 server. Expanded my download to TIB_ems-dev_8.4.0_linux_x86_64 Then made it executable and ran TIBCOUniversalInstaller-lnx-x86-64.bin --console. I used all the defaults (I picked server and client) and then quickly ran the finished install server. Running Tibco on Centos 7 cd /opt/tibco/ems/8.4/bin/
./tibemsd64 -config ~/TIBCO_HOME/tibco/cfgmgmt/ems/data/tibemsd.conf Example JMS Queue Settings URL: tcp://servername:7222
class: com.tibco.tibjms.TibjmsQueueConnectionFactory
Directory: /opt/tibco/ems/8.4/lib/ I believe it just uses these files from that directory:
tibjms.jar jms-2.0.jar Once I have my server and port shown, it's easy to add those settings to Apache NiFi. The settings I need to Publish messages is below. After you enter your username and queue, you need to create (or use) a controller service. Then we use our settings for our server, mine are the default ones. Make sure you enter the lib directory containing your jars and that it is on the Apache NiFi server and Apache NiFi user has permissions to read them. You can also use this same controller to Consume JMS messages from TIBCO EMS. These are example metadata attributes that Apache NiFi provides to you on message receipt. Example Run Log of my TIBCO EMS v8.4.0 Server running on Linux. Example Flow tibco-jms.xml Example Data {
"top1pct" : "43.1",
"top5" : "n09428293 seashore, coast, seacoast, sea-coast",
"top4" : "n04371774 swing",
"top3" : "n02894605 breakwater, groin, groyne, mole, bulwark, seawall, jetty",
"top2" : "n03933933 pier",
"top1" : "n03216828 dock, dockage, docking facility",
"top2pct" : "34.3",
"imagefilename" : "/opt/demo/images/201817121004997.jpg",
"top3pct" : "3.8",
"uuid" : "mxnet_uuid_img_20180413140808",
"top4pct" : "2.7",
"top5pct" : "2.4",
"runtime" : "1.0"
} This is example JSON data, we could use any TEXT. References https://docs.tibco.com/pub/sb-lv/2.2.1/doc/html/authoring/jmsoperator.html http://www.sourcefreak.com/2013/06/tibco-ems-sender-and-receiver-in-java/ https://docs.tibco.com/pub/adr3bs/1.2.0/doc/html/GUID-7111BD21-86C6-4F3A-89B3-B03BFCE15E0D.html http://tutorialspedia.com/tibco-ems-how-to-send-and-receive-jms-messages-in-queues/ https://github.com/SolaceLabs/solace-integration-guides/tree/master/src/nifi-jms-jndi https://docs.tibco.com/pub/activematrix_businessworks/6.2.0/doc/html/GUID-624942EB-89A3-400F-A9D1-B906107E6985.html https://github.com/mcqueary/spring-jms-tibco/blob/master/README.md
... View more
Labels:
04-06-2018
09:54 PM
These setup steps may help for your particular machine.
apt-get install curl wget -y
wget https://github.com/bazelbuild/bazel/releases/download/0.11.1/bazel-0.11.1-installer-linux-x86_64.sh
./bazel-0.11.1-installer-linux-x86_64.sh
apt-get install libblas-dev liblapack-dev python-dev libatlas-base-dev gfortran python-setuptools python-h5py -y
pip3 install six numpy wheel
pip3 install --user numpy scipy matplotlib pandas sympy nose
pip3 install --upgrade tensorflow
git clone --recurse-submodules https://github.com/tensorflow/tensorflow
wget http://mirror.jax.hugeserver.com/apache/nifi/minifi/0.4.0/minifi-0.4.0-bin.zip
wget https://storage.googleapis.com/download.tensorflow.org/models/inception5h.zip
wget http://download.tensorflow.org/models/image/imagenet/inception-2015-12-05.tgz
... View more
04-06-2018
07:04 PM
2 Kudos
Using a Pre-Trained Neural Network on MS CoCo DataSet using Mask R-CNN in TensorFlow / Keras.
I am always looking for use cases, always. Yesterday I gave a talk at the IoT Fusion Conference in Philadelphia about IoT. I had a Raspberry Pi taking web camera images. I mentioned I wasn't pointing at people because they may not want to be photographed. I am concerned with privacy. It gave me the idea it would be cool to block people or other things from images. Then on queue, a great library shows up in github. Thanks to Minimaxir's Person Blocker, I can now use Apache NiFi to pull remove people from images. I did a couple of minor tweaks to his code to add OpenCV image capture and output some JSON information on what happened. I am running this on an OSX laptop, but at some point I'll move it to a Raspberry Pi, TinkerBoard or NVidia Jetson TX1.
Please support this project: https://github.com/minimaxir/person-blocker
https://www.patreon.com/minimaxir
Using this pretrained neural network, we can block anything in this list of classes https://github.com/minimaxir/person-blocker/blob/master/classes.py.
You will need to download the MS Coco classes which aren't that large. (mask_rcnn_coco.h5)
This works without a GPU!!
To Install the Libraries:
pip install --upgrade pip
pip install keras
pip install tensorflow
pip install opencv-python
pip install uuid
git clone https://github.com/minimaxir/person-blocker.git
pip3 install -r requirements.txt
There are a bunch of requirements such as Python 3, recent TensorFlow (I used TF 1.7), Keras, Numpy, SkiImage, SCIPY, Pillow, Cython, H5PY, Matplotlib and imageio. I added uuid and json libraries. So you install them and get running. The JSON produced as a record of the run has the following schema:
Schema
{ "type" : "record", "name" : "personblocker", "fields" : [ { "name" : "uuid", "type" : "string", "doc" : "Type inferred from '\"person_uuid_20180406203059f_b7ce1056-9d88-4e7f-b4dd-0e8c8d6e7086\"'" }, { "name" : "runtime", "type" : "string", "doc" : "Type inferred from '\"27\"'" }, { "name" : "host", "type" : "string", "doc" : "Type inferred from '\"server.local\"'" }, { "name" : "ts", "type" : "string", "doc" : "Type inferred from '\"2018-04-06 20:30:59\"'" }, { "name" : "ipaddress", "type" : "string", "doc" : "Type inferred from '\"10.1\"'" }, { "name" : "imagefilename", "type" : "string", "doc" : "Type inferred from '\"person_blocked_20180406203057\"'" }, { "name" : "originalfilename", "type" : "string", "doc" : "Type inferred from '\"images2/tx1_image_b9ebdd52-9a9f-45f0-b71c-a44c54f14b71_20180406203032.jpg\"'" } ] }
Example Output JSON
{"uuid": "person_uuid_20180406201647f_1d2c31bc-c232-4976-a350-747ffabf5afe", "runtime": "76", "host": "mymachine.local", "ts": "2018-04-06 20:16:47", "ipaddress": "10.1.1.12", "imagefilename": "person_blocked_20180406201632", "originalfilename": "images2/tx1_image_0309425f-12ca-4331-a810-21067cbaa8f2_20180406201531.jpg"}
run.sh
python3 -W ignore pb.py 2>/dev/null
Now You See Me (OpenCV Captured Image)
Now You Don't (Person Blocker - it did block a stove pipe)
There's also the option to produce a GIF that moves which is cool but takes time and space. I commented that out.
My modified example:
https://github.com/tspannhw/OpenSourceComputerVision
See run.sh and pb.py.
... View more
Labels:
04-04-2018
12:42 PM
Do you see anything in the logs? That is not normal behavior. I would like more RAM, in the bootstrap.conf? # JVM memory settings java.arg.2=-Xms14G java.arg.3=-Xmx14G
... View more
04-04-2018
11:50 AM
I just iterated mine. https://github.com/tspannhw/nifi-tensorflow-processor make sure you update all the poms, one in each subdirectory. also then mvn clean mvn package make this 2 as well <version>1.0.0</version>
... View more
04-03-2018
05:36 PM
https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.6.4/bk_command-line-installation/content/configure_livy.html
... View more
04-03-2018
04:12 PM
1 Kudo
Using MQTT From MiniFi Java Agent From a standard Apache NiFi 1.5 download. Copy
nifi-standard-services-api-nar-1.5.0.3.1.1.0-35.nar nifi-mqtt-nar-1.5.0.3.1.1.0-35.nar To minifi 0.40. lib directory. PublishMQTT Publish Sensor Data Via MQTT This is our example MiniFi flow. We can drop out the GetFile (to grab images) and push to NiFi Flow if we just want to do a simple MQTT use case. I am using CloudMQTT, you can use any MQTT broker like Mosquitto or HiveMQ. Ingest in Apache NiFi 1.5 We can process data from MQTT and/or standard Apache NiFi S2S HTTPS. Processing continues as regular. I add another route for mqtt source. References: If you are doing SSL, see https://community.hortonworks.com/articles/47854/accessing-facebook-page-data-from-apache-nifi.html
... View more
Labels:
04-01-2018
03:21 PM
How many nodes do you have? how much RAM? How much disk space used by those 300 million rows? please post the table DDL. How is the data formatted? How big is each row? can you post a row? https://community.hortonworks.com/articles/68631/optimizing-hive-queries-for-orc-formatted-tables.html
... View more
03-31-2018
05:30 PM
1 Kudo
DevOps: Backups Part 2 Apache NiFi Registry Rest API Docs https://nifi.apache.org/docs/nifi-registry-docs/rest-api/index.html Github: https://github.com/tspannhw/BackupRegistry
... View more
Labels:
03-30-2018
01:14 PM
2 Kudos
http://iotfusion.net/session/enterprise-iiot-edge-processing-with-apache-nifi-minifi-and-deep-learning/ Join me for this live in Philly on April 5, 2018. Sending Data to an Advanced Analytics Platform like https://www.zoomdata.com/ is childsplay. I added that as a live stream via REST while I am sending the JSON to be converted to AVRO then ORC for storage and Hive queries. As part of the ingest we store the images and make a current image for display. See: https://community.hortonworks.com/articles/182850/vision-thing.html https://community.hortonworks.com/content/kbentry/182984/vision-thing-part-2-processing-capturing-and-displ.html An Overview of a Flow to Ingest Both Apache MXNet + SenseHat Data plus multiple rows of TensorFlow data If TensorFlow json data, split it into individual JSON records This is how to split an array of JSON that doesn't have a top element. Reference: https://community.hortonworks.com/articles/182850/vision-thing.html Github: https://github.com/tspannhw/OpenSourceComputerVision https://github.com/tspannhw/ApacheDeepLearning101 https://github.com/tspannhw/nifi-tensorflow-processor
... View more
Labels: