Archive for the ‘Community’ Category
Today we launched the a new update for the Ingres Database as well as a new name. With a previous name that included a year number, we were always getting some feedback around our naming strategy and decided it was time to return to our roots. The base numbering scheme has always reflected the current version and the decision was made to make that more visibility - therefore Ingres Database 9.2.
In this update we opened up our development process with quite a bit of collaboration from our partners, customers and numerous community members. The feature list for this update was driven from code sprints from our user groups, co-developed bundles and appliances that we did with Alfresco and JasperSoft and numerous suggestions from our customers and partners.
Ingres Database 9.2 Focus areas:
Internationalized Applications
- Support for the UTF-8 Character Set
- Support for Unicode upper and lower case
Improved Availability
- Roll forward re-start
- Logging of backups
- Logging of roll forward
- Logging of database verification
Application Development
- Support for scrollable cursors
- New numeric functions
- New string functions
Content Management System Support
- LOB Locator Support
- Improved performance of string comparisons
Supportability Features
- Better defaults for large systems
- Default storage structures for indexed tables
- Improved exception handling and tracing
- New product demos to help new users
We at Ingres believe that our products should deliver value to our customers and in today’s economic times, everyone can certainly use a product that helps shave dollars off their bottom line without sacrificing functionality.
Give Ingres Database 9.2 a try - Download it now and let us know what you think by emailing us at products@ingres.com.
/deb
Posted in Community, Database, Ingres News, Software
Today, when computers present at almost each work space, any average worker is on frontier - he must independently accept, send, or process data. It’s comfortable to accumulate data in a database, but average person cannot:
- output 3-dimensional constructions from database onto a screen (convert into format and protocol of X11)
- enter data from a browser (adjust proprietary web-server to a particular DBMS)
- copy information from a remote database (use other sources of information to make own data subset)
- switch-on and switch-off notebook several times during one long transaction, lasting days or even weeks
This paper describes proposed solutions for the above problems, and author would be interested in opinions, comments and possible implementation from the Ingres community. Details are stated in separate document (we will refer below to pages of that document). All problems, except 2-nd, can be solved with usage of proprietary formats of data transferring, and are formulated as transfer of XML only for unification with 2-nd problem.Solution of 1-st problem - interface ‘model - window system’ - is described in previous publication. To direct DBMS to change its data format from XML to X11 and to take away invisible surfaces, postfix ‘PROJECTING’ is used in operator ‘SELECT’. In particular case of two-dimensional data, objects must be written using data schema (what is understandable for users) instead of pretentious (and redundant) data types, which user does not master. Single difference from previous publication is that author proposes to send X11 data to client in XML-wrapper in purpose of unification with XML.To solve2-nd problem, it’s necessary to provide possibility to install DBMS and immediately use it, like user install and use programs “Teleport”, “FlashGet”, browser, etc. DBMS itself must accept XML, and place data from it into tables under some agreements. My proposals about these agreements are: (more…)
Tags: Database, ingres, open source, sql
Posted in Community, Database, Software
Progress in office technologies stopped and it has occurred because user, capable to write primitive programs, cannot:
- display 3-dimensional data in window of own program
- move 3-dimensional objects by commands in a foreign program (in such as ‘Microsoft Office’), and see changes on display
Objects can be drawn by mouse independently, downloaded from internet, obtained as a result of calculations, or as output from hardware. In any case, there is a need for:
- binary format for file, which contains 3D-objects, moreover objects must be written as triangles (which are understandable for users) instead of languages 3DMLW, 3DXML, COLLADA, because user does not master formulating and considering of own problems on these languages
- engine inside operating system, which:
- allows to load into self these binary files
- return objects in format X11 [1] at request of them, that program, addressed to this engine, could send obtained data to the X-server without any own calculations or changes (without referencing to OpenGL, DirectX, which user never will masters!)
- supplies two ways to change the coordinates of objects (both ways create commands in format X11 to control X-Server, which are immediately forwarded to the X-server):
- by query language (that allow a program to change coordinates)
- accepting events in format X11 [1], which are also commands to change coordinates, but are send by mouse (that allows to change coordinates by mouse)
It will be enough for user to call one function, we shall name it as ‘printg’, in which user specify what 3D-objects from database engine must appear on a screen (this function being called, automatically forwards all mouse motion commands of objects and motion of camera into engine; all messages about motion of objects, obtained from engine, automatically forwarded into X-server). It will be enough to call another function, we shall name it as ‘request’, to send order to change coordinates on query language (change immediately is displayed on screen, because messages from engine are automatically forwarded to X-server after call of ‘printg’). And these two functions can be called in any program. This is breakthrough in office technology. (more…)
Tags: Database, ingres, open source
Posted in Community, Connectivity, Database, Drivers, Ingres News
So I’m trying to work a bit on the Mac OS X port of Ingres that’s had a recent update and some important changes. There’s a few things that don’t just come “out of the box”:
- You’ll have to install as rootTo do this the easy way, just open a term and run the command “su -”. This will prompt you for your current user password to make sure that you really mean it.
- You need to set DYLD_LIBRARY_PATHMine is set to /lib:/usr/lib:/usr/local/lib:$II_SYSTEM/ingres/libYou can safely replace any directives to set LD_LIBRARY_PATH with setting DYLD_LIBRARY_PATH
- You need to up your shared memory kernel settingsCreate the file /etc/sysctl.conf and add the following lines if you have 4G memory:kern.sysv.shmall=4096000kern.sysv.shmseg=8kern.sysv.shmmni=256
kern.sysv.shmmin=1
kern.sysv.shmmax=1024000000
- You need to be running LeopardWe know this may be a bit of a hassle, and it could be remedied with some work, but the current people working on the port are all running Leopard and we’re trying to focus time on getting the port working well on Leopard first. If you’re interested in helping out, please let me know!
Here’s a few things I did that just make life easier based on my experience:
- Create an “ingres” user via the good old System Preferences app’s Accounts section
- Install in /opt
- Permanently change my term’s option for termcap interaction with the function keys to “Strict VT-100 keypad behavior” on the Advanced tab of my preferences
To make your life easy, but maybe slightly bloated, run the ingres_express_install.sh script and let it rip by. Once finished, login as the ingres user, set your env (including DYLD_LIBRARY_PATH), and create your first database:
Replace the msale with the username you use to do development on the local box and then that user will be able to perform DBA actions for that database. If you want to do your development/dba work as ingres, just leave out the -u option.
You can now connect to your database via the JDBC tool of your choice to interact via ANSI-friendly SQL (I use SQuirrel due to its Toad-like UI) using the JDBC driver at $II_SYSTEM/ingres/lib/iijdbc.jar.
Let us know if you have any issues with the install and we’ll do the best we can to help out. We know there is plenty of work that still needs to be done to get this port reliable and ready as a solid development platform on the Mac.
If you are a student with experience developing C or Obj-C on the Mac, we would love to get you involved in our Google Summer of Code project to get Ingres healthy on Leopard.
Tags: ingres, mac os, open source
Posted in Community, Database, Software
Recently Chip Nickolett shared some performance tips with me and I thought I would pass them along to others..
On Storage Structures -I use BTREE for almost everything.
- I’ve found that unless you are just writing to a table that HEAP tables tend to do full table scans, even with indexes.
- ISAM works well but you can easily run into locking issues and contention due to overflow pages. I’ve also seen much more sort activity that with BTREE.
- I use HASH when I need to separate people for concurrency reasons (e.g., a trouble ticket table with 200 people accessing / updating the table at any one time), but have found that even for things that should be a direct match there are often scans on the HASH table and sorting due to the query plan selected. Not a big deal, but because the HASH tables are generally larger this increases I/O.
If there is a good “primary key” that has a lot of leading-edge granularity I will often use this for the storage structure. Sometimes it makes sense to use a “clustering key” to localize data and minimize I/O. For example, at an insurance company years ago the policy table was 4+ GB and almost everything caused a table scan. I modified this to BTREE on company (there were three companies), branch (each company had ~50-100 branches), and state. There was a unique index on policy # that was used both for access and to maintain uniqueness. This approach improved query performance by something like two orders of magnitude because we were doing more direct access and much less I/O. Constraints I tend to avoid these since they are implemented as secondary indexes and sometimes redundant to the storage structures and/or indexes selected.
(more…)
Tags: Database, ingres, performance, tune
Posted in Community, Database, Software
The latest release of the DbLinq project now comes with official support for the Ingres database! For those of you that are not familiar with it, Linq is an O/R (Object-Relational) mapping tool with some similarities to Hibernate. Linq is type-safe, queries get compiled into MSIL on the fly, and your C# WHERE clauses are translated into SQL and sent to the DBMS server for execution. In short, it makes design of data access layers safer and faster. In C# 3.0, linq code looks like this:
var q = from p in db.Products
where p.ProductName == “Pen”
select p.ProductID;
The cool thing is, that you get full Intellisense support, so it is virtually impossible to spell anything wrong. What you also get is the ability to refactor an existing database into a Linq mapping class or a *.dbml file. So to get started with Linq on Ingres, just take the following easy steps:
- Have Visual Studio 2008 (the free Express Edition suffices)
- Download and compile DbLinq version 0.17
- Generate a mapping file from your existing Ingres database using the Visual Metal tool
- Start a new project in Visual Studio, add the mapping file and references to DbLinq.dll, DbLinq.Ingres.dll and Ingres.Client.dll
- Enjoy!
(more…)
Tags: dblinq, ingres
Posted in Community, Connectivity, Database, Drivers
I saw this post on one of the Ingres mailing list and thought others might be interested in hearing what Roy Hann (UK IUA President) had to say about the recent Ingres Engineering Summit .—-Original Message—–From: Roy HannSent: Wednesday, 30 April 2008 2:51 AM
Subject: [Info-Ingres] Ingres Engineering Summit
Nobody has yet posted any report of the Ingres Engineering Summit anywhere, so I thought I’d report a few bits and pieces that captured my attention.
First of all, it was an open event, as befits an open source company.
Anyone was welcome to attend and a great many partners (and others) did. I don’t know the total headcount but considering it was a moderately expensive week and a long time out of the office, it was very well attended. I’d guess there were well over 100 people there.
The amount of openness demonstrated was impressive. It wasn’t just about exposing the code, it was also about exposing the thinking, the working practices, the people, and–yes–the tensions. With the exception of a one-hour slot that was employees-only, everything was out in the open.
Anyone who didn’t attend has missed out on a lot. Plan to attend next year.
(more…)
Tags: Community, ingres, open source
Posted in Community, Database
Today is day one at the Ingres Engineering Summit being held in Punta Cana (Dominican Republic) with a cross section of folks from across the Ingres engineering, support/ service, Product Management teams as well as a number of contributors from the Ingres open source community. Amazing the number of people here and the tenure they have around Ingres - I think the winner from the community has 24 years using Ingres ( he started using Ingres on VAX - wow!!) . We also have a number of newbies to Ingres from various universities and it’s great to have them here as well.
The agenda is loaded with pretty cool topics that range from demos from DMSolutions (GIS) and Ingres CAFE, application development using Ingres CAFE and OpenROAD, Google Summer of code work, Datallegro contributions, open sessions with Ingres Janitor’s Project just to name a few. Lots of good debate on code repositories and various new ideas to get engaged with. I was talking with one of partners here at the Summit - Karl from Datallegro and he is speaking later and has several hundred submissions in queue.. Great job Karl. Great seeing the blog from Datallegro on line as well.
Later this week we have a codefest planned, lots of after hours activities and yes you can’t go to Punta Cana with out some team building event - rumor is it is building a sand castle and best design wins not sure what …. That ought to be loads of fun with a bunch of really technical dbms guys. Any hardware design guys in the house????
Tags: Community, Database, engineering summit, ingres, open source, openroad
Posted in Community, Database
Yesterday was kind of a bummer for open source communities everywhere. We saw an open source company (MySQL) compromising the trust they have with their community. MySQL announced that they will only offer certain features to paying customers. Take a look at Jeremy’s blog for more commentary. They have forked their community release and one must now wonder what goes next. Building creditability is always a difficult task for one to achieve. It takes hard work every day, building innovative, robust products, adding value in everything you do, responding to customer queries, and doing what you say you will do. The latter being most important - open source is about open code. It is about sharing your work so others can contribute, use, provide feedback, etc.
At Ingres, we are working very hard to grow and build our community. We are always looking for guidance and new ideas on how to build a robust community. We have a number of activities underway with various universities, partners, customers, users and are looking for more each day. I worked at Red Hat for years where knowledge was always plentiful and we never compromised our creditability with our community. This is a trait we are building at Ingres as well. The industry has responded over the years with a strong vote of support for the open source model and it is surprising and sad to see MySQL take such a turn.
/deb woods
Tags: Database, ingres, open source
Posted in Community, Database, Software
In case you missed Andrew Ross’ presentation on how to get started contributing to Ingres, I wanted to share the link to the webinar. You can find it in the Ingres DBMS section entitled Ingres Open Source Community. The VIP archive page has a wealth of information on how to get started with Ingres, upcoming release information and future direction. Sign up to get invites to future sessions.
Andrew does a great job walking through some of the tools that Ingres is now using to help users i.e.
http://lxr.ingres.com
- How to create a work area
svn co http://code.ingres.com/ingres/main~/ingres-main
- To raise a bug to the Ingres community
http://bugs.ingres.com
- Looking for more on Ingres
http://groups.google.com/group/comp.databases.ingres/topics
Tags: Community, ingres, open source
Posted in Community, Database