InfoQ

InfoQ

Sponsored category

Content in this box provided by our Sponsor:

VMware vFabric SQLFire is a memory-optimized distributed SQL database delivering dynamic scalability and high performance for data-intensive modern applications. SQLFire’s memory-optimized architecture minimizes time spent waiting for disk access, the main performance bottleneck in traditional databases. SQLFire achieves dramatic scaling by pooling memory, CPU and network bandwidth across a cluster of machines and can manage data across geographies. SQLFire provides developers with the well-known SQL interface and tools.

Developing Applications with SQLFire explains the main concepts of programming Java and ADO.NET applications with SQLFire APIs and the SQLFire implementation of SQL. It describes how to embed a SQLFire instance in a Java application and how to connect as a client. This guide also describes transactional and non-transactional behavior, and explains how to create data-aware stored procedures.

SQLFire RESOURCES

Tutorial: Integrating SQLFire with tc Server and Spring Data

This article describes basic instructions of SQLFire usage in a simple Java and Spring-based application deployed in vFabric tc Server. The sample application used is a Spring-ified version of Sun's J2EE PetStore application.

Banking Case Study: Scaling with Low Latency using NewSQL

In this presentation, Jags Ramnaryan, Chief Architect for GemFire products at VMWare walks through how a bank used a horizontally scalable, memory oriented SQL database (VMWare SQLFire), did minimal changes to its application, injected the Database between the app and its original database and achieved elastic (on-demand) scaling with very low latencies.

Introducing SQLFire: a memory-optimized, high performance SQL database

Fast meets scalable in VMware’s new distributed SQL database. VMware vFabric™ SQLFire is memory-optimized for maximum speed out of the box and gives you the scale you need in a substantially simpler way. SQLFire is designed for horizontal scalability, so if you need more capacity you simply add more nodes (or more virtual machines) and SQLFire will automatically rebalance data across all members for maximum performance. Watch this webcast to learn how SQLFire offers some of the best features usually seen only in NoSQL databases, all while providing a real SQL interface.

HIGHLIGHTS FROM THE SQLFire BLOG

Java Stored Procedure Performance: Myths vs. Facts

“Java Stored Procedures will never be as fast as SQL Stored Procedures” is a common refrain from database administrators based on their experience with stored procedures in “normal” relational databases.   However, SQLFire provides significant advantages for performance of stored procedures. SQL statements are byte compiled into Java structures and Java Stored Procedures run in the same memory and processing space that database operations are performed. Learn more in this blog. 

How to offload data from an existing data store and load it into SQLFire

A common requirement for using SQLFire is offloading data from an existing data store and loading it into SQLFire. This example shows how you can load data into a SQLFire distributed system using Spring Batch from a CSV file and then how to present the data from a simple Spring MVC application.

Using SQLFire as a read-only cache for MySQL

Putting a read-only cache atop an RDBMS helps by offloading some reads to another server.  A database that is constantly getting reads and writes for a lot of different users (high concurrency) leads to disk thrashing which leads to extremely bad performance. Serving a portion of reads in-memory cuts down on this thrash, making your write throughput go up on the underlying database. In addition, an in-memory architecture like SQLFire handles high concurrency extremely well since it doesn't suffer from thrashing problems the way disk-based databases do.

SQLFire and Grails

Chris Harris has written a series of blog posts showing how to use SQLFire from within Grails. In the process he introduces a couple of very interesting features of SQLFire , specifically how your app should take advantage of SQLFire's elasticity and the possibility of using SQLFire as a cache.

Java Community Content on InfoQ


Latest featured content about Java

Polyglot Programming: The Power of Hybridization

Sections
Architecture & Design,
Development
Topics
jQuery,
Python,
Scala,
Javascript,
Dynamic Languages,
Functional Programming,
JVM Languages,
Web Development,
Languages,
Java,
Programming,
Polyglotism,
Google Go

Bruce Eckel emphasizes using different languages within a project, each one for the task it is better fitted for, and giving several such examples: Python+Scala, Go+Python, Python+CoffeeScript.

News about Java

VMware's vFabric Suite Gains Automated Deployment and PostgreSQL Support

Sections
Operations & Infrastructure,
Development
Topics
Spring,
Virtualization,
Cloud Foundry,
Dependency Injection,
SpringSource,
Java,
IaaS,
Infrastructure,
Design Pattern,
VMWare,
Languages,
Licensing,
Cloud Computing,
Patterns,
Object Oriented Design,
Design,
Business,
Companies,
Programming

VMware has today announced VMware vFabric Suite 5.1, adding automated deployment, enterprise open source support, and PostgreSQL capabilities, as well as an expansion to the SQLFire in-memory database.

Apache TomEE 1.0 Released

Sections
Architecture & Design,
Development
Topics
Apache TomEE,
Apache Tomcat,
Application Servers,
Java EE,
Java,
Languages,
Programming,
Apache

The Apache Software Foundation has released Apache TomEE 1.0. Apache TomEE, pronounced "Tommy", is a Java EE 6 Web Profile certified all-Apache stack available under the Apache 2.0 license. TomEE is composed of Tomcat (Servlet, JSP, JSTL), OpenWebBeans (CDI), OpenEJB (EJB), OpenJPA (JPA), MyFaces (JSF), Geronimo Transaction (JTA), Geronimo JavaMail (Javamail) and Apache Bean Validation.

Running Java on NET/Mono: Jeroens Frijters Discusses IKVM.NET

Sections
Development
Topics
Java,
Languages,
.NET,
Programming,
IKVM

Microsoft's Erik Meijer recently discussed IKVM.NET with creator Jeroens Frijters to discuss the history of the project and explore how it makes running Java code on .NET and Mono possible.

Articles about Java

Dan Allen on Arquillian Testing Framework

Sections
Operations & Infrastructure,
Architecture & Design,
Development
Topics
Java,
Languages,
Integration Testing,
Frameworks,
Testing,
Programming,
JBoss Arquillian

Arquillian is an integration and functional testing platform that can be used for Java middleware testing. It helps bring the tests to the runtime environment, freeing developers from managing runtime from within the test. InfoQ caught up with Dan Allen to talk about the framework features and its future roadmap.

MongoDB, Java and Object Relational Mapping

Sections
Development
Topics
MongoDB,
Distributed Document Oriented Database,
Java,
NoSQL,
Languages,
Database,
Programming

Brian C. Dilley covers pitfalls, & strengths of using MongoDB ("a very approachable NoSQL solution"), and introduces MJORM. The MJORM project is an annotation free MongoDB Java ORM library. This article builds on Brian's real world in the trenches experience with MongoDB and includes "gotchas" like "Don't treat MongoDB like an RDBMS...", how to "design your indexes carefully", and more.

Benchmarking JVM Concurrency Options for Java, Scala and Akka

Sections
Development
Topics
JVM,
Virtual Machines,
Scala,
Runtimes,
JVM Languages,
Java,
Functional Programming,
Performance Tuning,
Languages,
Benchmark,
Programming,
Performance & Scalability

Michael Slinn examines how to benchmark JVM concurrency options for JVM-based langauges including Java and Scala.

Presentations about Java

Play!: I’ll See Your Async and Raise You Reactive

Sections
Development
Topics
Play Framework,
Scala,
Java Web Frameworks,
Web Frameworks,
JVM Languages,
Java,
QCon London 2012,
Functional Programming,
QCon,
Languages,
WOA,
Programming,
Conferences,
Architecture,
Reactive Extensions,
Asynchronous Architecture

Guillaume Bort and Sadek Drobi introduce Play, a Java and Scala web development framework, insisting on its asynchronous reactive capabilities built on Iteratee IO.

Building Polyglot Systems with Scalang

Sections
Development
Topics
Scala,
Strange Loop 2011,
Erlang,
JVM Languages,
Functional Programming,
Strange Loop,
Java,
Programming,
Conferences,
Languages,
Interop,
Polyglotism

Cliff Moon discusses Scalang, a message passing and actor library enabling easy communication between Scala and Erlang apps, wrapping services in Scalang actors.

Interviews about Java

IBM's Tim Ellison on the Future of Java

Sections
Development
Topics
Java SE,
Java,
GarbageCollection,
Languages,
OSGi,
Programming,
Modularity

Tim Ellison talks to Charles Humble about Lambda, extension methods, modularity, and plans for Java beyond Java 8

IBM’s Graham Charters on OSGi, WebSphere and Jigsaw.

Sections
Development
Topics
Websphere,
IBM,
Application Servers,
Maven,
Companies,
Java,
Languages,
Build systems,
Programming,
Jigsaw,
OSGi

IBM WebSphere OSGi Applications Lead Architect, Graham Charters, talks to Charles Humble about OSGi, exploring its use and relevance within WebSphere, how useful it is for Java EE developers, and how OSGi and Jigsaw can co-exist. The interview also touches on issues around OSGi and governance, and the impact of modularity on development and operations teams.

Books about Java

Identity Management on a Shoestring

Sections
Enterprise Architecture,
Architecture & Design
Topics
Java,
Languages,
Identity Management,
Security,
Programming,
Enterprise

The authors of this book share their experience and lessons learned while building an enterprise-wide Identity and Access Management system using an architectural approach called LIMA.

Good Relationships

Sections
Enterprise Architecture,
Development
Topics
Neo4j,
Spring Data,
Spring,
Neo,
Java,
Dependency Injection,
SpringSource,
Graph Database,
Languages,
NoSQL,
Design Pattern,
VMWare,
Object Oriented Design,
Patterns,
Database,
Design,
Companies,
Programming,
Enterprise

With Spring Data, the ever popular Spring Framework has cultivated a new patch of ground, bringing Big Data and NOSQL technology like Neo4j to enterprise developers. This guide introduces you to Spring Data Neo4j, using the fast, powerful and scalable graph database Neo4j to enjoy the benefits of having good relationships in your data.

Getting Started with Grails, Second Edition

Sections
Development
Topics
Grails,
Java Web Frameworks,
Groovy,
Java,
Web Frameworks,
JVM Languages,
Dynamic Languages,
WOA,
Languages,
Programming,
Architecture

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Starting Struts 2

Sections
Architecture & Design,
Development
Topics
Struts,
Java Web Frameworks,
Java,
Languages,
Architecture,
Programming,
Book Review

Within this book you will find everything you need to get up and running using Struts2 – from the architecture and configuration, to implementing actions and the supporting infrastructure such as validation and internationalization. Above all else, it focuses on the practical – with plenty of code and productivity tips to get you started using Struts2 today.

Getting Started with Grails

Sections
Development
Topics
Grails,
Java Web Frameworks,
Groovy,
Web Frameworks,
Java,
Dynamic Languages,
JVM Languages,
Languages,
WOA,
Programming,
Architecture

Grails is an open-source, rapid web application development framework that provides a super-productive full-stack programming model based on the Groovy scripting language and built on top of Spring, Hibernate, and other standard Java frameworks. Over the course of this book, the reader will explore the various aspects of Grails and also experience Grails by building a Grails app.

Starting Struts 2

Sections
Development
Topics
Struts,
Java Web Frameworks,
Java,
Web Frameworks,
Languages,
WOA,
Programming,
Architecture

Within this book you will find everything you need to get up and running using Struts2 – from the architecture and configuration, to implementing actions and the supporting infrastructure such as validation and internationalization. Above all else, it focuses on the practical – with plenty of code and productivity tips to get you started using Struts2 today.

Java Transaction Design Strategies

Sections
Enterprise Architecture,
Architecture & Design,
Development
Topics
EJB,
Spring,
JDBC,
Java EE,
Dependency Injection,
SpringSource,
Java,
Design Pattern,
Languages,
VMWare,
Transactions Processing,
Patterns,
Companies,
Object Oriented Design,
Design,
Programming,
Database,
Design Patterns

Java Transaction Design Strategies shows how to design an effective transaction management strategy using the transaction models provided by Java-based frameworks such as EJB and Spring. Local, programmatic, declarative, and XA models are explained; the book concludes with a set of design patterns show how to effecitvely use these models.