Elephant: Easy Persistence No ORMs at all Very easy to use APIs: btree, persistent sets, and CLOS integration Dynamic index creation on slots Functional.

Slides:



Advertisements
Similar presentations
IATI Technical Advisory Group Technical Proposals Simon Parrish IATI Technical Advisory Group, DIPR March 2010.
Advertisements

Pennsylvania BANNER Users Group 2006 Integrate Your Decision Support with Cognos 8.
Tier-1 Evolution and Futures GridPP 29, Oxford Ian Collier September 27 th 2012.
Database System Concepts and Architecture
XProtect ® Express Integration made easy. With support for up to 48 cameras, XProtect Express is easy and affordable IP video surveillance software with.
Elephant: A Persistent Metaobject Protocol and Object Oriented Database for Common Lisp Persistent object protocol –persistent-metaclass specializes slot.
Java development infrastructure at FMI Pekka Rantala FMI.
Single view of customer Support deposit and loan accounts Fully integrated General Ledger module that can be customised according to customer specification.
TORQUE 3D Daniel Casadevall-Pino
Software Freedom Day th September 2007 Asia Pacific Institute of Information Technology Colombo, Sri Lanka. Nazly Ahmed Scripting The Web.
ARCHIMÈDE Presented by Guy Teasdale Directeur, Services soutien et développement Bibliothèque de l’Université Laval CARL Workshop on Institutional Repositories.
Supervised by Prof. LYU, Rung Tsong Michael Department of Computer Science & Engineering The Chinese University of Hong Kong Prepared by: Chan Pik Wah,
Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman.
IELM 230: Industrial Data Systems Course topics: - Relational Database Design - DB development and optimized usage - DB backed web-applications.
1 Alternate Title Slide: Presentation Name Goes Here Presenter’s Name Infrastructure Solutions Division Date GIS Perfct Ltd. Autodesk Value Added Reseller.
AgriDrupal - a “suite of solutions” for agricultural information management and dissemination, built on the Drupal CMS; - the community of practice around.
DR. MOHAMMAD IQBAL THANKS TO ADITYA SENGUPTA Comparing Web Frameworks.
Google AppEngine. Google App Engine enables you to build and host web apps on the same systems that power Google applications. App Engine offers fast.
Your software. Your vision. Your community. DraftSight.
“This presentation is for informational purposes only and may not be incorporated into a contract or agreement.”
Linux Operations and Administration
Content Management Interoperability Services (CMIS)
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Mohan Kumar Puttasiddaiah
ROOT: A Data Mining Tool from CERN Arun Tripathi and Ravi Kumar 2008 CAS Ratemaking Seminar on Ratemaking 17 March 2008 Cambridge, Massachusetts.
Database Design for DNN Developers Sebastian Leupold.
Evolution to CIMI Charles (Cal) Loomis & Mohammed Airaj LAL, Univ. Paris-Sud, CNRS/IN2P3 29 August 2013.
Def D OC An extensible, dynamic document creation system By Rahul Jain
1188 New developments in InterBase since Year 2000 Sriram Balasubramanian Staff Engineer Borland Software Corporation.
DB Libraries: An Alternative to DBMS By Matt Stegman November 22, 2005.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Fundamentals of Database Chapter 7 Database Technologies.
Joomla An Open Source Content Management System. Scope of Workshop Definition and background of Joomla Explanation of Joomla’s abilities and strengths,
WordFreak A Language Independent, Extensible Annotation Tool.
Free Open Educational Resources shared and created under Creative Commons licenses by those who teach in, or create content for, the further and higher.
Bibliographic references: state of the art, a possible solution Jordan Biserkov, Lyubomir Penev Pensoft Publishers.
Migrating to Linux Desktops with Wine Dan Kegel June 2006.
Data Management BIRN supports data intensive activities including: – Imaging, Microscopy, Genomics, Time Series, Analytics and more… BIRN utilities scale:
Nadir Saghar, Tony Pan, Ashish Sharma REST for Data Services.
PHP Features. Features Clean syntax. Object-oriented fundamentals. An extensible architecture that encourages innovation. Support for both current and.
Database weekly reports Zbigniew Baranowski Carlos Fernando Gamboa.
Chapter 3 Software. Learning Objectives Upon successful completion of this chapter, you will be able to: Define the term software Describe the two primary.
David Dye.  Introduction  Introduction to PowerPivot  Working With PowerPivot.
Windows Role-Based Access Control Longhorn Update
INNOV-10 Progress® Event Engine™ Technical Overview Prashant Thumma Principal Software Engineer.
RDF languages and storages part 1 - expressivness Maciej Janik Conrad Ibanez CSCI 8350, Fall 2004.
Database Concepts Track 3: Managing Information using Database.
Data Integration Hanna Zhong Department of Computer Science University of Illinois, Urbana-Champaign 11/12/2009.
Realtime insight in your application usage with NodeJs, ElasticSearch and Kibana Onno de Haan.
CERN IT Department CH-1211 Geneva 23 Switzerland t CF Computing Facilities Agile Infrastructure Monitoring CERN IT/CF.
NanoSearch DMS V2.3 Make our daily job became easy With Documents Management System.
Automated Time Tracking From proposal to production By Chris Gaffney.
Institute for the Protection and Security of the Citizen HAZAS – Hazard Assessment ECCAIRS Technical Course Provided by the Joint Research Centre - Ispra.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Submitted by: Moran Mishan. Instructed by: Osnat (Ossi) Mokryn, Dr.
#SummitNow Super Size Your Search 14 th November 2013 Fran Alvarez (Zaizi)
3rd July 2007Open Repository, Open Source 1 Where we were, What we've learnt, And what it means to you.
Mobile Device Development
Electrical and Solar Installation - Dynamic-integration.com
The Life of a MongoDB GitHub Commit
Section 6 Object Storage Gateway (RADOS-GW)
2 reasons for new trend Right solution for the future
Flexible Extensible Digital Object Repository Architecture
Flexible Extensible Digital Object Repository Architecture
Top Reasons to Choose Angular. Angular is well known for developing robust and adaptable Single Page Applications (SPA). The Application structure is.
Designed for Big Data Visual Analytics, Zoomdata Allows Business Users to Quickly Connect, Stream, and Visualize Data in the Microsoft Azure Platform MICROSOFT.
Quasardb Is a Fast, Reliable, and Highly Scalable Application Database, Built on Microsoft Azure and Designed Not to Buckle Under Demand MICROSOFT AZURE.
JTLS-GO 6.0 PostgreSQL Information
Chapter 3 Software.
Presentation transcript:

Elephant: Easy Persistence No ORMs at all Very easy to use APIs: btree, persistent sets, and CLOS integration Dynamic index creation on slots Functional indexes

(defpclass friend () ((name :accessor name :initarg :name) (birthday :initarg :birthday)) (:index t)) => # (make-instance 'friend :name "Carlos" :birthday (encode-birthday '( ))) (make-instance 'friend :name "Adriana" :birthday (encode-birthday '( ))) (make-instance 'friend :name "Zaid" :birthday (encode-birthday '( ))) NOW SOMEONE TRIPS OVER THE POWER CORD... Restart your LISP and do: (get-instances-by-class 'friends) => (# # # ) (mapclass #'(format t " name: ~A birthdate: ~A~%" (name friend) (birthday friend)) 'friend) name: Carlos birthdate: ( ) name: Adriana birthdate: ( ) name: Zaid birthdate: ( ) => (# # # ) Persistent Classes

PSET Class Indexing Persistent Slots BTree SerializerMemutils/UFFI MOP User API Data Store Interface and Utilities db-bdbdb-postmoderndb-clsqldb-lisp BerkeleyDBPostgreSQLSQLite DCM User API Internal Ready to integrate TBD 3rd party

Multi-platfom Supported by LISP: SBCL, ACL, LispWorks, OpenMCL Different Oses: Linux, Mac, Windows Works on 64 bit architectures Repository flexibility

Late binding of repository decisions Multiple Repositories (3 tested, but more should be possible via CL-SQL) Tested migration between repositories Repository usage and migration flexible enough that engineering decisions about repos are independent of Elephant

Repositories BDB: fast, not free for a website unless open-source Postgres: slower, liberal license, very solid and well-supported SQLite3: fast, good for protyping Start on X, move to Y

Indexing decisions changeable Don't optimize prematurely...index a slot when you need to Functional indexes provide lots of power

The Future Schema changes (changing a persistent classes slots) should be improved Pure-lisp solution would allow prototyping (and maybe more) with even less installation hassle Improving the serializer improves performance on every repository Better postgres usage with postmodern Query languages, Prevalence,.....