
Tibero First pancake
Recently in my life the period of searching for a new job has ended. At one of the interviews of this period, I learned that a new DBMS has appeared in the world, the developers of which promise to overshadow Oracle Almighty. A tempting promise immediately gave rise to my desire to try this miracle of overseas technology. It was about the Korean DBMS Tibero .
According to wikipedia:
It felt like this text was written by Tibero employees, but we will leave it on their conscience.
If you delve into the Internet, you may find that a little over a year ago the company opened its representative office in Russia, and besides, “Currently, about 50 projects in various fields are being implemented in Russia. For a number of customers (for example, the Federal Center for Informatization of the Accounts Chamber of the Russian Federation), one of the reasons for seeking alternative solutions in the Asian direction (where TmaxSoft is the leader) was the imposition of US sanctions on the IT industry, which TmaxSoft does not support. Among the Tibero customers in Russia are: MTS, the Ministry of Defense of the Russian Federation, MosEnergoSbyt, the Accounts Chamber of the Russian Federation, the Bank of Russia, the Federal Tariff Service, etc. "
Together, this has further fueled my interest in this product. And I decided to try it: run and play with it. To do this, I rented a small server with Debian 7.9 (wheeze) on board in the Google Cloud . Here are its parameters:
Machine type: n1-standard-1 (1 vCPU, 3.75 GB memory)
CPU platform: Intel Ivy Bridge
Boot disk and local disks: 40GB Standard persistent disk
The first thing you come across is a critically small amount of information in Russian, and in English, too, it is not a lot. The second is that Tibero does not provide a free version of the DBMS for training and development needs, as Oracle does.. Tibero also provides a test license for the previous version of the DBMS for a period of half a year, and it was not easy for me to find it. To do this, you had to find this official, but hidden in the bowels of the Internet site: http://technet.tmaxsoft.com/ . register, download the latest version distribution kit, find out that there are no free licenses for it, remove the distribution kit, download the old version distribution kit and installation instructions.
And so, download the instructions and understand that we need a JDK of at least 1.5, gcc> = 3.4.6, xml license file on the server, 512 MB RAM, Swap File 1 GB, 300mb / tmp, 300MB on the hard drive when fully installed and 200 MB if you only install the client (but among the instructions it says that without 1 , 5 GB base will not be delivered). I didn’t fulfill all the software requirements for obvious reasons, but they are: RedHat Enterprise Linux AS / ES 2.1, 3.0, 4.0. The note also says about the requirement for the kernel version: it must be at least 2.6.
The strangest thing for me was the requirement to change the kernel parameters for installation! Well, if I am a large corporation and I have a lot of money and servers. And if I am a small company and I save on everything, what can I do? Buying Cheap Korean OracleI have only one server. There are a lot of things spinning and somehow it’s not very cool to force me to change the kernel settings without any alternative.
Ok, I fixed the /etc/sysctl.conf file to the following:
Tibero requirements are as follows:
Applied the settings using / sbin / sysctl -p and rebooted the server. I made the following to indicate where the temporary installation files should fall:
All preparations are completed. Run the installer. In parallel with the instructions, going through the installer, I decided to fix something for myself. For example, scattering logs into several files. As a result, the installer told me: "Everything is super, you can start." However, I did not succeed in starting up. First, you had to do this:
After that, I was no longer told that there was no such program, but simply said: “Tip file open failure .: No such file or directory” . Long digging on the Internet has not led to anything reasonable. The documentation claimed that the root of evil was not set by TB_SID , but TB_SID was set, and the program was still unhappy. I had to start creating the database and set all the settings to "Default". After that came success! The base has earned.
After that, there was a desire to leave the Google server and configure the client. But the official documentation suggests downloading the client installer file, with an example exclusively for Windows and silent about where to get this file.
Trying to install the client through the DBMS installer on my Ubuntu laptop, I found a wonderful correspondence between documentation and reality. the -G switch leads to help, not to graphical mode, and for graphical mode you need to use -i gui or -i swing , however, neither the first nor the second one wanted to work on Ubuntu assuring me that the Installer user interface is not supported .
In the end, I had to install the entire Tibero on my laptop with Ubuntu . Banish source ~ / .profile Then find an analogue TNSNAME.ora . It is located in the $ TB_HOME / client / config folder and is calledtbdsn.tbr .
The format he has is painfully familiar:
And ... Victory! On command:
I connected to the database on a remote host (I’ll leave the dances with tambourines around the firewall).
We can say that for some tests the system is ready.
I did not do adequate performance tests, since it’s not my profile after all. Maybe someone will be interested and do it. For myself, I can say that there are few external differences from Oracle . Even their new PSM language looks like this:
So far, according to the documentation and the amount of information, the product seemed to me incapable of entering a wide range of operations. But maybe he is worth something and you need to look at him?
Thank you all, good luck and bye!
Part 2
According to wikipedia:
Tibero - the so-called DBMS produced and distributed by Tibero Corporation, which is part of the South Korean corporation TmaxSoft. The development of this product started in 2003, and in 2008 they became the second company in the world providing a disk-based cluster as a shared resource (shared-disk-based cluster).
...
Tibero DBMS is considered an alternative to Oracle due to its full compatibility with Oracle products, including SQL.
Tibero guarantees the reliability of database transactions (which are a well-thought-out set of SQL expressions) provided by ACID support (atomicity, consistency, isolation, durability).
...
Tibero implemented a unique thread architecture (Tibero Thread Architecture) to address the shortcomings of previous DBMSs. As a result, Tibero can efficiently use system resources, such as CPU and memory, using fewer server processes. This allows Tibero to offer a combination of performance, stability and scalability, and ease of development and customization. Additionally, the DBMS allows users and developers using many standard interfaces to easily integrate with other DBMSs and applications.
In addition, to improve the 'Tibero Active Cluster' (a database clustering system similar to Oracle RAC), information transfer technology was applied in blocks. Tibero supports self-tuning performance optimization, a robust database monitoring system and performance management system.
In Korea, Tibero has been introduced to more than 450 companies with various business lines: finance, manufacturing, and public relations; and with more than 14 companies in the rest of the world as of July 2011.
It felt like this text was written by Tibero employees, but we will leave it on their conscience.
If you delve into the Internet, you may find that a little over a year ago the company opened its representative office in Russia, and besides, “Currently, about 50 projects in various fields are being implemented in Russia. For a number of customers (for example, the Federal Center for Informatization of the Accounts Chamber of the Russian Federation), one of the reasons for seeking alternative solutions in the Asian direction (where TmaxSoft is the leader) was the imposition of US sanctions on the IT industry, which TmaxSoft does not support. Among the Tibero customers in Russia are: MTS, the Ministry of Defense of the Russian Federation, MosEnergoSbyt, the Accounts Chamber of the Russian Federation, the Bank of Russia, the Federal Tariff Service, etc. "
Together, this has further fueled my interest in this product. And I decided to try it: run and play with it. To do this, I rented a small server with Debian 7.9 (wheeze) on board in the Google Cloud . Here are its parameters:
Machine type: n1-standard-1 (1 vCPU, 3.75 GB memory)
CPU platform: Intel Ivy Bridge
Boot disk and local disks: 40GB Standard persistent disk
The first thing you come across is a critically small amount of information in Russian, and in English, too, it is not a lot. The second is that Tibero does not provide a free version of the DBMS for training and development needs, as Oracle does.. Tibero also provides a test license for the previous version of the DBMS for a period of half a year, and it was not easy for me to find it. To do this, you had to find this official, but hidden in the bowels of the Internet site: http://technet.tmaxsoft.com/ . register, download the latest version distribution kit, find out that there are no free licenses for it, remove the distribution kit, download the old version distribution kit and installation instructions.
And so, download the instructions and understand that we need a JDK of at least 1.5, gcc> = 3.4.6, xml license file on the server, 512 MB RAM, Swap File 1 GB, 300mb / tmp, 300MB on the hard drive when fully installed and 200 MB if you only install the client (but among the instructions it says that without 1 , 5 GB base will not be delivered). I didn’t fulfill all the software requirements for obvious reasons, but they are: RedHat Enterprise Linux AS / ES 2.1, 3.0, 4.0. The note also says about the requirement for the kernel version: it must be at least 2.6.
The strangest thing for me was the requirement to change the kernel parameters for installation! Well, if I am a large corporation and I have a lot of money and servers. And if I am a small company and I save on everything, what can I do? Buying Cheap Korean OracleI have only one server. There are a lot of things spinning and somehow it’s not very cool to force me to change the kernel settings without any alternative.
Ok, I fixed the /etc/sysctl.conf file to the following:
kernel.sem = 10000 32000 10000 10000
kernel.shmall = 2097152
kernel.shmmni = 4096
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 1024 65000
Tibero requirements are as follows:
semmsl 10,000 /proc/sys/kernel/sem
semmns 32,000
semopm 10,000
semmni 10,000
shmall 2,097,152 /proc/sys/kernel/shmall
shmmax half of physical memory (in bytes) /proc/sys/kernel/shmmax
shmmni 4,096 /proc/sys/kernel/shmmni
file-max 6,815,744 /proc/sys/fs/file-max
ip_local_port_range 1024 - 65000 /proc/sys/net/ipv4/ip_local_port_range
) Applied the settings using / sbin / sysctl -p and rebooted the server. I made the following to indicate where the temporary installation files should fall:
export TB_INST_TMP_DIR=/opt
All preparations are completed. Run the installer. In parallel with the instructions, going through the installer, I decided to fix something for myself. For example, scattering logs into several files. As a result, the installer told me: "Everything is super, you can start." However, I did not succeed in starting up. First, you had to do this:
source ~/.profile
After that, I was no longer told that there was no such program, but simply said: “Tip file open failure .: No such file or directory” . Long digging on the Internet has not led to anything reasonable. The documentation claimed that the root of evil was not set by TB_SID , but TB_SID was set, and the program was still unhappy. I had to start creating the database and set all the settings to "Default". After that came success! The base has earned.
After that, there was a desire to leave the Google server and configure the client. But the official documentation suggests downloading the client installer file, with an example exclusively for Windows and silent about where to get this file.
Trying to install the client through the DBMS installer on my Ubuntu laptop, I found a wonderful correspondence between documentation and reality. the -G switch leads to help, not to graphical mode, and for graphical mode you need to use -i gui or -i swing , however, neither the first nor the second one wanted to work on Ubuntu assuring me that the Installer user interface is not supported .
In the end, I had to install the entire Tibero on my laptop with Ubuntu . Banish source ~ / .profile Then find an analogue TNSNAME.ora . It is located in the $ TB_HOME / client / config folder and is calledtbdsn.tbr .
The format he has is painfully familiar:
DBTNS=
(
(INSTANCE=(HOST=hostname)
(PORT=port)
(DB_NAME=DB_NAME)
)
)
And ... Victory! On command:
tbsql sys/syspassword@DB_TNS
I connected to the database on a remote host (I’ll leave the dances with tambourines around the firewall).
We can say that for some tests the system is ready.
I did not do adequate performance tests, since it’s not my profile after all. Maybe someone will be interested and do it. For myself, I can say that there are few external differences from Oracle . Even their new PSM language looks like this:
CREATE [OR REPLACE] PACKAGE BODY book_manager IS
PROCEDURE add_new_book(v_author VARCHAR2, v_name VARCHAR2,
publish_year DATE) IS
BEGIN
IF substr(v_name, 1, 1) >= 'a' AND
substr(v_name, 1, 1) < 'k' THEN
INSERT INTO books
VALUES (1, v_author, v_name, publish_year);
ELSE
INSERT INTO books
VALUES (2, v_author, v_name, publish_year);
END IF;
COMMIT;
book_cnt := book_cnt + 1;
END;
PROCEDURE remove_lost_book(v_author VARCHAR2, v_name VARCHAR2) IS
BEGIN
DELETE FROM books WHERE author = v_author AND name = v_name;
COMMIT;
END;
FUNCTION search_book_position(v_author VARCHAR2, v_name VARCHAR2)
RETURN NUMBER IS
book_position NUMBER;
BEGIN
SELECT kind INTO book_position FROM books
WHERE author = v_author AND name = v_name;
RETURN book_position;
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('NOT EXIST...SORRY');
RAISE;
END;
FUNCTION get_total_book_cnt RETURN NUMBER IS
BEGIN
RETURN book_cnt;
END;
BEGIN
book_cnt := 0;
END;
So far, according to the documentation and the amount of information, the product seemed to me incapable of entering a wide range of operations. But maybe he is worth something and you need to look at him?
Thank you all, good luck and bye!
Part 2