Showing posts with label compression. Show all posts
Showing posts with label compression. Show all posts

Sunday, March 24, 2019

Informix 14.1 : License changes / Mudanças no licenciamento

A few details about Informix 14.10 license terms (original version here)


English version
Informix 14.10 introduces a few changes in terms of licenses. But fear not... the changes are for better... although one aspect may cause some confusion, and that's why I'm starting the review of 14.1 changes by this aspect.
Let's start by what can cause some confusion. IBM maintains the following Informix editions:

  • No cost editions
    • Informix Innovator-C edition
    • Informix Developer edition
  • Cost editions
    • Informix Express edition
    • Informix Workgroup edition
    • Informix Enterprise edition
    • Informix Advanced Enterprise edition
    • Informix Advanced Developer edition
You may notice that the Informix Advanced Workgroup edition is no longer an option.
But if you see the download package you'll probably see ONLY the Informix Developer edition, even if your organization is entitled for Express/Workgroup/Enterprise/Advenced Enterprise or Advanced Developer edition(s). Why? Well because one of the features introduced in 14.1 is the Informix Edition Installer which basically permits that an administrator changes the edition license he has installed. We can also use the License Installer to define the edition at installation time. So, and because of that you'll have the Developer edition package and one of more License Installer packages available for your download. You should decompress both packages to the same temporary installation director like:


[root@stardust install_dir]# pwd
/ifmx_data/install_dir
[root@stardust install_dir]# ls -lia
total 391008
729089 drwxr-xr-x  3 root     root          4096 Mar 14 11:03 .
     2 drwx------ 12 informix informix      4096 Mar 14 11:02 ..
729090 -rw-r--r--  1 root     root     389191680 Mar 14 11:03 INFORMIX_DEV_ED_14.10.FC1_Linux.tar
729091 -rw-r--r--  1 root     root      10783435 Mar 14 11:03 INFORMIX_EE_License_Ins_14.10.FC1.tar
729092 drwxr-xr-x  3 root     root          4096 Mar 14 11:48 install
[root@stardust install_dir]# cd install
[root@stardust install]# ls -lia
total 391980
729092 drwxr-xr-x 3 root root      4096 Mar 14 11:48 .
729089 drwxr-xr-x 3 root root      4096 Mar 14 11:03 ..
729095 drwxr-xr-x 2 root root      4096 Feb 20 21:41 doc
729101 -rwxr-xr-x 1 root root  11811722 Feb 18 15:24 ee_edition.jar
729093 -rwxr-xr-x 1 root root 388159473 Feb 20 21:46 ids_install
729099 -rw-r--r-- 1 root root      1952 Feb 20 21:46 ids.properties
729094 -rwxr-xr-x 1 root root    980144 Feb 20 21:46 onsecurity
729102 -rw-rw-r-- 1 root root      1173 Feb 18 15:23 README-Edition.txt
729100 -rw-r--r-- 1 root root      1959 Feb 20 21:41 README_ids.txt
[root@stardust install]#


As you can see in bold, there is the usual "ids_install" script and the "ee_edition.jar" (the "ee" stands for Enterprise edition). So this will be an Enterprise Edition installation.
If needed we can later change the edition by decompressing the License package and run:


$INFORMIXDIR/jvm/jre/bin/java -jar ee_edition.jar -i <console|gui>


NOTE: At the time of this writing, some packages have the "*.tar" extension, but they're actually "*.zip" files. If you have issues to "untar" a TAR file just try with unzip. Hopefully this will be fixed shortly.
So, this is the difference that may cause some confusion... What other license changes have been introduced?:
  • A new license model called Virtual Processor was introduced. It's available for Express, Workgroup, Enterprise and Advanced Enterprise editions.
    It's basically based on the number of cores made available to a virtual server. It allows a better understanding of the license model when the number of cores available for a number of virtual servers might exceed the number of real cores. Imagining a server with 16 physical cores supporting a number of servers where the sum of the PVUs for those servers could be higher than the equivalent PVUs for the physical server (let's say 20), this metric clearly defines 16 Virtual CPUs as the maximum charge.
  • The limits for Informix Workgroup edition were increased. Now we can use it until the limit of 24 CPU VPs (as defined by the NUMCPUVPS parameter) - previously was 16 - and the memory limit was increased to 32GB (as defined by SHMTOTAL) when previously it was 16GB
  • The storage optimization feature which was the only extra available on top of Enterprise Edition is now included in that version
So, in summary, one edition was discontinued (Advanced Workgroup), a new license metric was introduced which may help to clarify the required entitlements  in some cases, new increased limits for Workgroup Edition and the inclusion of compression in Enterprise edition. All in all, mostly good news.
More articles will come more focused on the technical enhancements of 14.10

Versão Portuguesa
O Informix 14.10 introduz algumas mudanças no licenciamento. Mas não há que recear... as mudanças são para melhor... apesar de um aspecto poder causar alguma confusão., e é por isso que começo a análise das mudanças na 14.10 por este aspecto.
Comecemos pelo que pode causar alguma confusão. A IBM mantém as seguintes edições de Informix:
  • Edições sem custo
    • Informix Innovator-C edition
    • Informix Developer edition
  • Edições com custo
    • Informix Express edition
    • Informix Workgroup edition
    • Informix Enterprise edition
    • Informix Advanced Enterprise edition
    • Informix Advanced Developer edition
Poderá reparar que a edição Advanced Workgroup já não está disponível.
Mas se examinar os pacotes de download provavelmente só verá a Developer edition, mesmo que a sua organização tenha licenciado  a Express/Workgroup/Enterprise/Advenced Enterprise ou a Advanced Developer. Porquê? Bom, porque uma das funcionalidades introduzidas na 14.1 é o Informix Edition Installer que basicamente permite a um administrador mudar a licença de uma instalação de Informix, após a instalação inicial. Também podemos usar o License Installer para definir a edição na altura da instalação. Portanto, e por estas razões, o que verá no seu sitio de downloads será a edição Developer e um ou mais pacotes do License Installer. Deverá descomprimir ambos para o mesmo directório temporário de instalação tal como indicado:


[root@stardust install_dir]# pwd
/ifmx_data/install_dir
[root@stardust install_dir]# ls -lia
total 391008
729089 drwxr-xr-x  3 root     root          4096 Mar 14 11:03 .
     2 drwx------ 12 informix informix      4096 Mar 14 11:02 ..
729090 -rw-r--r--  1 root     root     389191680 Mar 14 11:03 INFORMIX_DEV_ED_14.10.FC1_Linux.tar
729091 -rw-r--r--  1 root     root      10783435 Mar 14 11:03 INFORMIX_EE_License_Ins_14.10.FC1.tar
729092 drwxr-xr-x  3 root     root          4096 Mar 14 11:48 install
[root@stardust instahll_dir]# cd install
[root@stardust install]# ls -lia
total 391980
729092 drwxr-xr-x 3 root root      4096 Mar 14 11:48 .
729089 drwxr-xr-x 3 root root      4096 Mar 14 11:03 ..
729095 drwxr-xr-x 2 root root      4096 Feb 20 21:41 doc
729101 -rwxr-xr-x 1 root root  11811722 Feb 18 15:24 ee_edition.jar
729093 -rwxr-xr-x 1 root root 388159473 Feb 20 21:46 ids_install
729099 -rw-r--r-- 1 root root      1952 Feb 20 21:46 ids.properties
729094 -rwxr-xr-x 1 root root    980144 Feb 20 21:46 onsecurity
729102 -rw-rw-r-- 1 root root      1173 Feb 18 15:23 README-Edition.txt
729100 -rw-r--r-- 1 root root      1959 Feb 20 21:41 README_ids.txt
[root@stardust install]#


Como pode ver salientado, existe o habitual "ids_install" e um ""ee_edition.jar" (o "ee" significa Enterprise edition). Assim, isto dará origem a uma instalação da Enterprise Edition. Se necessário, mais tarde podemos mudar a edição, descomprimindo o pacote do License Installer e executando:

$INFORMIXDIR/jvm/jre/bin/java -jar ee_edition.jar -i <console|gui>


NOTA: à data de criação deste artigo parece haver alguns arquivos com a extensão "*.tar" que são na realidade ficheiros ZIP. Se ao tentar descomprimir um pacote TAR tiver erros tente com o unzip. Esta questão deverá ser corrigida brevemente.
Esta é a diferença que poderá causar alguma confusão... Que outras diferenças no licenciamento foram introduzidas?:
  • Um novo modelo de licenciamento chamado "Virtual Processor" foi introduzido. Está disponível nas seguintes edições: Express, Workgroup, Enterprise e Advanced Enterprise.
    É basicamente baseado no número de cores disponibilizados a um servidor virtual. Permite um melhor entendimento do modelo de licenciamento quando o número de cores disponível a um conjunto de servidores virtuais possa exceder o número de cores físicos. Imagine um servidor com 16 cores físicos, a suportar um conjunto de servidores virtuais onde a soma dos PVUs para esses servidores pudesse ser superior aos PVUs equivalentes para o servidor físico (digamos 20). Esta métrica define claramente os 16 Virtual CPUs como o máximo a cobrar.
  • Os limites da edição Workgroup foram aumentados. Podemos agora utilizar até 24 CPU VPs (tal como definido no parâmetro NUMCPUVPS - antes eram 16 -, e o limite de memória passou dos 16GB para os 32GB (tal como definido pelo parâmetro SHMTOTAL)
  • A storage optimization feature ou simplesmente compressão era o único extra disponível em cima da edição Enterprise. Agora está incluído nessa mesma edição, permitindo aos clientes usar a compressão sem custos adicionais.
Portanto, em resumo, uma edição foi descontinuada (Advanced Workgroup), uma nova métrica de licenciamento foi introduzida, o que permite clarificar alguns casos, os limites da edição Workgroup foram aumentados (memória e CPU VPs) e a compressão passa a estar incluída na licença da edição Enterprise. Portanto praticamente tudo para melhor e boas notícias.
Mais artigos virão, mais focados nas melhorias técnicas da versão 14.10.



Wednesday, April 04, 2012

2012 Informix Roadshow Lisboa: Closing notes / Notas de fecho

This article is written in English and Portuguese
Este artigo está escrito em Inglês e Português



English Version

The 2012 Informix Roadshow in Lisbon ended yesterday. The highlights of the second workshop day were Informix Warehouse Accelerator, compression and Genero.

Attendees were impressed by the ease of use of IWA and has planned in literally a couple of hours they managed to install the server component, the client management tool, define a data mart, load it, test the queries and even look into the workload analyzer that allows automatic mart definition. And all these achievable in a laptop with 4GB of memory (mart used roughly 1GB of in-memory data). The underlying Informix instance was provided fully configured and loaded.

The session about compression was also very well received and Scott gave us some important tips for it's use (not only the chargeable components - compression itself -, but also the free stuff - repack/shrink/defrag -)

Before finishing we also had a session on Genero, particularly interesting for the 4GL users present.
So, this was a great event, and a big special thank you to Scott for coming here and provide us (IBMers, clients and partners) all this info and his own experiences.

Versão Portuguesa

O Roadshow Informix 2012 em Lisboa terminou ontem. Os pontos altos do segundo dia de workshop foram o Informix Warehouse Accelerator, compressão e Genero.

Os presentes ficaram impressionados com a facilidade de utilização do IWA, e como planeado em literalmente um par de horas conseguiram instalar o componente servidor, a ferramenta de gestão, definir um data mart, carregá-lo, testar as queries e mesmo espreitar o analisador de carga que permite a definição automática de data marts. E tudo isto é possível num portátil com 4GB de memória (o data mart ocupava cerca de 1GB de dados em memória). A instância base de Informix foi fornecida completamente configurada.

A sessão sobre compressão foi também muito bem recebida e o Scott deixou-nos algumas dicas para o seu uso (não apenas o componente pago - a compressão propriamente dita - mas também as funcionalidades grátis - repack/shrink/defrag - )

Antes do encerramento ainda tivemos a sessão sobre Genero, particularmente interessante para os utilizadores 4GL presentes.
Portanto, foi um excelente evento, e um grande obrigado ao Scott por ter vindo cá e nos ter deixado a todos (IBMers, clientes e parceiros) toda esta informação e as suas próprias experiências.

Friday, May 08, 2009

11.50.xC4: Another mark in Informix history

IBM Informix Dynamic Server 11.50xC4 is available for customers on Passport Advantage.
It's another fixpack that comes with significant improvements. Traditionally we had to wait for full releases to have some significant features but we're getting used to see great improvements in fixpacks.
This one is no exception and from the release notes we can see an overview of the new functionality:


  • High Availability
    • Availability Enabled on Windows 64-bit Operating System
      Some of the HA features were not available on MS Windows 64 bit versions

  • Administration
    • Save Disk Space by Compressing Data
      Data compression for tables. This deserves a few more words... Check the end of the article
    • Improved Options for Specifying Processor Affinity
      New options for providing binding between virtual CPUs and physical CPUs. We can now specify a list of physical CPUs, one ore more ranges, and ranges with increments
    • Disable IPv6 Support
      If you prefer to disable the IPv6 protocol you can create and empty file named $INFORMIXDIR/etc/IFX_DISABLE_IPV6 (readable by informix) or set and enrionment variable: IFX_DISABLE_IPV6=yes
    • Enhancements to the OpenAdmin Tool for IDS
      These include: Control of table compression, query by example for all the usual table operations (query, insert, delete and update), SQL explorer history, managing of external directives and export/import of OAT connection definitions
    • Generating a Customized Database Server Configuration File
      A new utility called genoncfg was introduced. It takes a default onconfig.std and a text file with some directives (number of CPUs, memory, rootdbs location) and adjusts the instance configuration. The result is saved in a file called onconfig on the local directory. This can be the beginning of a great tool

  • Enterprise Replication
    • Generate ATS and RIS Files in XML Format for Custom Repair Script
      The Aborted Transaction Spooling and Row Information Spooling files can be generated in XML format to facilitate the implementation of recovery processes
    • Prevent Upserts During Conflict Resolution
      An Upsert happens if an Update it send to target and the row does not exists. This may not be desirable if the row was previously deleted. Now we can make the DELETE "win"
    • New Event Alarms for Enterprise Replication
      Three new situations will trigger an alarm: When a server connection is dropped, when a server, replicate or replicate set changes state (stopping, starting, modifying, deleting, or changing the connection status) and when a transaction fails (generating ATS/RIS files)
    • Monitor the Progress of a Consistency Check or a Direct synchronization
      New cdr commands to see the status of check and sync processes (cdr stats check and cdr stats sync)
    • Specify the Duration of a Consistency Check
      By default, inconsistent rows are rechecked once after two seconds, which might not be enough time for replicated transactions to be applied on the target server. You can now specify the number of seconds to spend on rechecking the consistency of inconsistent rows. Rechecking prevents transactions that are in progress from being listed as inconsistent in the consistency report. You can use the --inprogress option of the cdr check replicate and cdr check replicateset commands to specify the maximum number of seconds to perform rechecking.
    • Schedule Synchronization or Consistency Checking Operations
      cdr check and cdr sync allow for a new flag ( --background ) that will use the scheduler to make periodic runs of those processes
    • Improve Consistency Checking Performance
      Several options allow the execution of parallel threads for check operations. You can specify which data or intervals to check
    • Improve the Performance of Checking or Synchronizing Replicate sets
      A new option ( --process ) define how many threads to use in paralell for check and synchronization jobs
    • Role separation for Enterprise Replication (UNIX)
      If you're using role separations your DBSAs can control enterprise replication. Previously only user informix could
    • Enhancements to the Enterprise Replication plug-in for the OpenAdmin Tool for IDS
      A lot of new features in the ER plugin for Open Admin Tool (OAT)
  • Performance
    • Enable Concurrent I/O to Improve Performance on AIX Operating Systems
      IDS supports DIRECT I/O since version 11.10. Now it also supports Concurrent I/O (CIO) on AIX. It's a needed step to really get to the performance of raw devices. I have plans for an article on this subject...
    • IFX_LARGE_PAGES Environment Variable (AIX, Solaris)
      Allows IDS to take advantage of a pool of large memory pages configured by the system administrator. The shared memory virtual segments must be set to RESIDENT by the database system administrator

  • Application Development
    • DataBlade Module Registration through SQL
      Datablades can now be registered using plain old SQL. A new function, SYSBldPrepare is used for the registration process. So you can do it from any SQL tool or interface
    • Control the Results of a Fuzzy Search with the Basic Text Search DataBlade Module
      You can now specify the degree of similarity of search results in fuzzy searches when using the Basic Text Search DataBlade module. Specify a number between 0 and 1, where a higher value results in a higher degree of similarity. To limit results, specify a higher number. To maximize results, specify a lower number. The default degree of similarity is 0.5.
    • Map Characters for Indexing with the Basic Text Search DataBlade Module
      This allows us to replace special characters with other characters for indexing purposes
    • Default Boolean Operator in Basic Text Search Queries
      When we query a BTS index, the space between words is considered a default operator. Now we can define that default operator at index creation time
    • Storage for Temporary Basic Text Search Files
      It's now possible to define a separate sbspace for the temporary files used in BTS searches. This can increase performance. Up to now they were created in the same space as the index.
    • Track Basic Text Search Query Trends
      The possibility to save the queries made using a BTS index. This information can be used to provide hints to the end users in order to improve their own queries. It's like using past experiences to improve future queries
    • Fragment bts Indexes by Expressions
      It's now possible to split a BTS index into several sbspaces by using fragmentation
    • Monitor Change Data Capture Sessions
      A new onstat option ( onstat -g cdc ) that allows monitoring on data capture sessions. Change Data Capture API was introduced in 11.50.xC3 and can be used to capture data change and propagate it into other databases, web services etc. It's also one basic component to use SolidDB as a frontend cache for IDS.
    • View Change Data Capture Error Message Text
      A new function ( cdc_errortext() ) that retrieves an error message from an error generated by CDC

  • Security
    • Automatic Check for Installation Path Security (UNIX, Linux, Mac OS X)
      The installation process checks that the directory structure is secured
    • Utility to Enhance the Security of the Dynamic Server Installation Path (UNIX, Linux, Mac OS X)
      A new utility ( onsecurity ) that can check the integrity of the product installation. It can detect if the installation was compromised and in that case forbids the use of the product
As we've seen in previous fixpacks, IBM introduces another major feature in this one. Compression. There is a lot to say about IDS compression, but it would be a waste of time spending too much time here. The subject is already covered in several places:
I'd like to highlight a few aspects of IDS compression:
  • It's a dictionary based compression, similar to DB2 deep compression. This means you don't have to rely on pattern repetition on each page
  • Since the dictionary is created by sampling the table it's very fast to get a compression estimate
  • It works for normal INSERTs and UPDATEs. It doesn't depend on load operations
  • It works online (without blocking the tables or rows)
  • It comes with two other features: repack and shrink. Repack regroups the data rows sequentially on the table, leaving the free space at the end. Shrink can return this free space to the dbspace/chunk where the table resides
But if compression is the brightest feature we should not let the others go by without notice:
  • From the list above we can see that Basic Text Search datablade has seen a lot of nice improvements. I'd bet that if IBM keeps improving it like this it will have to change it's name to something like "Not so Basic Text Search Datablade" :)
  • And again, Enterprise Replication (ER) sees a lot of improvements
  • A new version of Open Admin Tool (OAT) with several major improvements
  • The new utility to generate a configuration file (genoncfg). It's still a bit simple, but I believe it can be the start of a great utility to help new Informix users to get a basic working configuration
  • The introduction of CIO for AIX. This is a very important step after the introduction of DIRECT_IO. I would love to write a post about this. Stay tuned.
And that's it for now. If you're an IBM customer you can download 11.50.xC4 from the usual sites. If you're not an IDS user, you can try it by downloading the IBM Informix Dynamic Server Developer Edition from:

http://www.ibm.com/developerworks/downloads/im/ids/dev.html