Posts

Showing posts with the label Tika

Docker on Azure PaaS - Tika Parser

Image
Azure PaaS services are an example of how the cloud has raised the raised the bar in the commodity platform space. More functionality is baked into the platform and less has to be built by software developers and enterprises. Some of the PaaS tenants are that it should be simple to scale-up and scale-out.  Networking should be simple and port exposure should be simple. Microsoft has at least 3 different Container services with different levels of PaaS-ness. They appear to be targeted more at Enterprise customers than the original SMB oriented PaaS services. It may be that the original ones just didn't support enterprise security, networking and other needs. Tech Comments The demonstration deploys a Tika Parser, Java Docker container running on each Azure Linux Docker PaaS services. Microsoft's move towards explicitly containerized PaaS services has both improved and degraded this model. Sample Scripts Use these scripts to experiment with Java Linux deployments on Azure ...

Using AWS Elastic Beanstalk as a guide for application configuration

Image
PaaS services fit in that world in between serverless and roll-your-own infrustructure.  AWS Elastic Beanstalk is a PaaS service exposes their their service usage to teach you the right way to deploy web applications. The EB team eats their own AWS dogfood and generates a full featured environment via a generated CloudFormation template that you can examine and leverage. For this example we will deploy Apache Tika document parser as a service. We'll leverage a previous blog article PaaS Document Parsing With Tika and EBS for the instructions.  A shortened version is below Topology Discussion This diagram shows the components deployed to make an autoscaling web application that leverages Elastic Beanstalk , IAM, ALBs and other AWS goodness. Resources and Services Elastic Beanstalk uses these services to provision and deploy a simple no-database web application like the Apache Tika Parser.  We use the CLI to upload the configuration which Elastic Beanstalk the...

Almost PaaS Document Parsing with Tika and AWS Elastic Beanstalk

Image
The Apache Tika project provides a  library capable of parsing and extracting data and meta data from over 1000 file types.  Tika is available as a single jar file that can be included inside applications or as a deployable jar file that runs Tika as a standalone service. This blog describes deploying the Tika jar as an auto-scale service in Amazon AWS Elastic Beanstalk.  I selected Elastic Beanstalk because it supports jar based deployments without any real Infrastructure configuration. Elastic Beanstalk auto-scale should take care of scaling up and down for for the number of requests you get. Tika parses documents and extracts their text completely in memory. Tika was deployed for this blog using EC2 t2.micro instances available in the AWS free tier. t2.micro VMs are 1GB which means that you are restricted in document complexity and size. You would size your instances appropriately for your largest documents.   Preconditions An AWS account. AWS ac...