Tuesday, October 7, 2014

AllegroCache v3.0 - Now Available!!!

AllegroCache is a high-performance, dynamic object caching database system. It allows programmers to work directly with objects as if they were in memory while in fact the object data is always stored persistently. It supports a full transaction model with long and short transactions, and meets the classic ACID requirements for a reliable and robust database. It automatically maintains referential integrity of complex data objects. AllegroCache provides 64-bit real-time data caching on the application memory to achieve very high data access throughput by applications over as large a data set as necessary.


"AllegroCache is the heart of our rule-based Solicitation Selection system as well as our Medical Supply Chain solution for the U.S. Department of Defense." noted Glenn House Sr., President 2Is Inc., "We are delighted with the new functionality in AllegroCache 3.0.  We are able to cut our hosting database footprint by 50%, increase our transaction speeds by 50% to 100% and bring new search capabilities to bear." stated Mr. House.


New features in v3.0

  • SMP Optimized -- perform simultaneous operations on index btrees
  • Compressed Indexes -- reduces database size by up to 50%
  • Regex Cursors -- efficiently match string values against regular expressions


AllegroCache Features:

  • Persistent CLOS Objects in Allegro Common Lisp -- Class definitions are stored as first class objects in the database
  • Dynamic Schema Evolution -- Redefine classes on the fly, persistent objects are lazily updated when accessed
  • Standalone & Client Server -- Single user on local disk or multiple clients talking to single server over sockets
  • Native lisp btrees -- Comparable in speed with BerkeleyDB, with more control
  • Transactional model -- All ACID features, commit/rollback, and optimistic concurrency
  • Supports databases with billions of objects (and Terabytes of Data)
  • Convenient macros to loop over classes, maps and sets
  • Indexed slots -- A mapping from slot-values to objects, retrieve objects and object ids (oid)
  • Maps -- Transactionally safe persistent hashtables
  • Sets -- Persistent large collections of objects
  • Supports most common datatypes -- Including unsigned-byte 8 arrays, maps and sets
  • Object ID's unique for the lifetime of the database -- User accessible
  • Dump the database into XML files
  • Restore database from the XML dump
  • User controlled caching -- For the size of the btrees and the total number of objects stored in the cache
Download Now - Express Users Downloaded or Updated as of October 16, 2015, AllegroCache v3.0 already included.


Recent Webcast with 2Is - 





Thursday, July 10, 2014

Franz Tech Corner - July 2014



Franz Tech Corner News
July, 2014

In this issue

Tech Corner Article: New Universal Date/Time Parser Facility
date-time
A new universal date/time parser facility was added by a recent patch. It defines the new functions "string-to-universal-time" and "universal-time-to-string". The first function takes a string specifying a date and time in any of a variety of standard formats and returns the corresponding universal time. The second function converts a universal time to one of those formats. This new facility is separate from the existing date-time module but integrated with it.

The new universal date time parser is described here.

Tech Corner Article: Loop Over Sequence Extension to Loop Macro
A new "for-as-in-sequence" subclause for the loop macro was added by a recent patch. It allows iteration over either lists or simple, general vectors. For example, the function foo defined below will take either a list or a vector as an argument:

(defun foo (x)
    (loop for y in-sequence x collect (1+ y)))
(foo '(1 2 3)) => (2 3 4)
(foo #(1 2 3)) => (2 3 4)

Without this extension, foo would have to make separate loop calls with lists and vectors. Note the extension has some restrictions.
See the documentation here for further details.

International Lisp Conference, 2014 - August 15-17, Montreal
ILC14
The Association of Lisp Users is pleased to announce the 2014 International Lisp Conference will be held in Montreal, Canada at Universite de Montreal from August 15 to 17, 2014. This year's focus is directed towards integrated solutions and mobile computing.
The International Lisp Conference is a forum for the discussion of Lisp and, in particular, the design, implementation and application of any of the Lisp dialects. We encourage everyone interested in Lisp to participate.
This year's program consists of tutorials, an excellent technical session, and prominent invited speakers from the Lisp communities: Christian Queinnec (Universite Pierre et Marie Curie), Ambrose Bonnaise-Sergeant (Indiana University), Stefan Monnier (Universite de Montreal) and Marc Battyani (Fractal Concept).
For additional conference infomation, see heretarget blank image..

Video - Gabor Melis' talk at ELS'14 - "Sending Beams into the Parallel Cube"
Gabor
We send probes into the topic hypercube bounded by machine learning, parallelism, software and contests, demonstrate existing and sketch future Lisp infrastructure, pin the future and foreign arrays down. We take a seemingly random walk along the different paths, watch the scenery of pairwise interactions unfold and piece a puzzle together. In the purely speculative thread, we compare models of parallel computation, keeping an eye on their applicability and lisp support. In the the Python and R envy thread, we detail why lisp could be a better vehicle for scientific programming and how high performance computing is eroding lisp's largely unrealized competitive advantages. Switching to constructive mode, a basic data structure is proposed as a first step.
To view the video, see heretarget blank image.

Free Webcast: Graph vs. Semantic Graph Databases - Selecting the Right Database for Your Next Project
Franz Graph Logo

Wednesday, July 23rd, 10 AM Pacific

A frequent question for Semantic Technology vendors: "Why use an RDF triplestore, why not a general Graph database or some other NoSQL option?" This presentation discusses the criteria for selecting the appropriate database for your application.
With the surge in interest around "Graph" technologies there is a need for understanding the tradeoffs for various Graph based technologies. There is a whole set of use cases where Graph technologies make the most sense for application success. This presentation will explore the technical and business reasons to consider a Graph Database, RDF Database, or hybrid Graph/NoSQL. We will discuss a set of real world applications for Graph technologies and explore a number of criteria to consider for proper database selection, a few are noted below:
Selection criteria:
  • (1) Do you need to model knowledge or assets and you literally have to deal with thousands of objects that have different feature sets?
  • (2) Do you add or change object definitions on a nearly daily basis?
  • (3) Do you need to do do recursive graph search on your data or you need to do complex pattern matching?
  • (4) Do you have to deal with innumerable one to many or many to many relations and you need to index them all?
To register for this webinar, see https://www2.gotomeeting.com/register/147446290target blank image.

Free Webcast: Discovering the Social Networks in your Customer Data
Gruff View

Wednesday, August 13, 10 AM Pacific

Most Enterprises have collected large bodies of data that describe interactions between their customers. Consider the graph of claims and policies for an insurance provider, telephone calls and SMS for a Telco, and links between payments by customers of financial institutions. Graph databases can be used to mine these social interactions to better understand customer patterns and opportunities.
Relational databases are fundamentally unfit to explore the graph within a social network and Big Data solutions (Hadoop, etc) are usually not meant to work with sparse graphs. The mature capabilities of Graph Databases have made them the optimal approach to mine these social networks.
During this presentation, we will discuss applications of graph mining to show the relationships discovered through "Similarity" and "Social" graphs.
To register for this webinar, see https://www2.gotomeeting.com/register/252265562target blank image.

Gruff v5.3 - Now Available
gruff lab guy
New Features include:

See the full list of new features and improvements in the release notes.

AllegroGraph 4.14 Available July 14th 

New features include:
  • Redesigned Query Interface for AGWebView. The interface has enhanced functionality and includes a CANCEL button to easily allow user to cancel uncompleted queries. See notes in the WebView Documentation
  • AGWebView's SPARQL query user interface now supports query log viewing, query plan inspection and reports additional details about query execution such as query time and warnings
  • Enhanced auditing and end user security capabilities
See the full list of new features and improvements in the release notes.

YouTube - The Allegro CL and AllegroGraph Channels 
Google+

Subscribe to Franz RSS feeds: RSS Feeds
For more information about other Franz products and services, follow us on Twitter - @Franzinc or email - info@franz.com.

Wednesday, July 9, 2014

Allegro CL - Tech Corner - Universal date/time parser facility

New universal date/time parser facility

A new universal date/time parser facility was added by a recent patch. It defines the new functions string-to-universal-time and universal-time-to-string. The first function takes a string specifying a date and time in any of a variety of standard formats and returns the corresponding universal time. The second function converts a universal time to one of those formats. For example,
(string-to-universal-time "20031231" :format :iso8601)
  => 3281846400 :iso8601 :time-zone-not-specified
(universal-time-to-string 3281846400 :format :iso8601)
  => "2003-12-31T00:00:00"
(string-to-universal-time "20031231")
  => 3281846400 :iso8601 :time-zone-not-specified
(universal-time-to-string 3281846400)
  => "2003-12-31T00:00:00"
(string-to-universal-time "20031231" :format :iso8601 :native t)
  => # nil nil

(string-to-universal-time "20031231" :format :iso8601)
  => 3281846400 :iso8601 :time-zone-not-specified
(universal-time-to-string 3281846400 :format :iso8601)
  => "2003-12-31T00:00:00"
(string-to-universal-time "20031231")
  => 3281846400 :iso8601 :time-zone-not-specified
(universal-time-to-string 3281846400)
  => "2003-12-31T00:00:00"
(string-to-universal-time "20031231" :format :iso8601 :native t)
  => # nil nil
This new facility is separate from the existing date-time module but, as the last example indicates, integrated with it. The date-time module is described in date-time.htm The new universal date time parser is described here.

Wednesday, April 9, 2014

The SSL Heartbleed bug: UPDATE NOW!

The OpenSSL "Heartbleed Bug (CVE-2014-0160)" (see https://www.openssl.org/news/secadv_20140407.txt), as it is being called, is a serious security hole in the Secure Sockel Layer (SSL) used for sending private documents over the internet. This bug is fixed for Allegro CL by our recent SSL module update. This update affects Windows and UNIX ports of Allegro CL and AllegroGraph.
Some background: the ACL SSL module has some glue code that sits between the OpenSSL library and Allegro CL (and any app that is built upon Allegro CL, including AllegroGraph). On UNIX, this glue code statically links with the OpenSSL libraries. On Windows, we dynamically link to the installed OpenSSL libraries on the system.
Visit the Franz Tech Corner for more details
http://franz.com/support/tech_corner/heartbleed040914.lhtml

Tuesday, February 11, 2014

European Lisp Symposium - Paris, May 5-6

Sending Beams into the Parallel Cube

Gábor Melis

Gábor Melis is a consultant at Franz Inc. (@Franzinc, +FranzInc) He worked on the SMP thread implementation of both SBCL and AllegroCL and got interested in all things parallel. Had he been a first generation lisper, he would have been in the artificial intelligence bubble of the 80s, but as a second generation lisper all that was left for him is machine learning. There are two kinds of programmers: those who get a kick out of their creation being used by real people to accomplish a goal, and those who first and foremost think in terms of the internal beauty of the object at hand. Most of the time, Gábor is firmly in the latter category and for his practical side to emerge he needs external pressure. Fortunately, external pressure is abundant in contests which he finds and leverages with some success.

Presentation:
Sending Beams into the Parallel Cube - A pop-scientific look through the Lisp lens at machine learning, parallelism, software, and prize fighting.

We send probes into the topic hypercube bounded by machine learning, parallelism, software and contests, demonstrate existing and sketch future Lisp infrastructure, pin the future and foreign arrays down.
We take a seemingly random walk along the different paths, watch the scenery of pairwise interactions unfold and piece a puzzle together. In the purely speculative thread, we compare models of parallel computation, keeping an eye on their applicability and lisp support. In the the Python and R envy thread, we detail why lisp could be a better vehicle for scientific programming and how high performance computing is eroding lisp's largely unrealized competitive advantages. Switching to constructive mode, a basic data structure is proposed as a first step.
In the machine learning thread, lisp's unparalleled interactive capabilities meet contests, neural networks cross threads and all get in the way of the presentation.
http://www.european-lisp-symposium.org/content-melis-full.html