25. 02. 2022.

Redis performance tuning – Top 10 mistakes

Redis is the most popular Key-value data store and one of the most popular database systems overall.   According to Db-engine ranking: https://db-engines.com/en/ranking/key-value+store (You can check the picture below), Redis is on the top position by large margin among Key-values data stores. Amazon DynamoDb on the second place, lags behind Redis more than a twice. […]

26. 01. 2022.

StreamSets review – creating real time data pipelines in no time

In this post I’ll try to review StreamSets Data Collector, one of the most popular tools for creating smart data pipelines for streaming, batch and change data capture, which allows you to move data around in a near real time.   First I’d like to point out that the whole review is my own personal […]

23. 12. 2021.

YugabyteDb – distributed SQL database for a new age

Recently I’ve got a chance to try YugabyteDb, one of the new age databases which try to tackle with new requirements such as scalability, resilience, high availability, Cloud/Hybrid readiness and new architecture styles based on microservices. Although Yugabyte is relatively young company, it attracts a lot of attention, not only from architects/developers/admins, but also from […]

22. 10. 2021.

When visual tool for monitoring appears to lie

A few days ago I was asked to take a look at two queries that shows up among the top queries in the Oracle SQL Developer instance viewer. I’ve extracted two statements that are relevant for this case. The select statements for both records are almost identical:   From the SELECT statement it is obvious […]

16. 02. 2021.

Postgres monitoring with Percona PMM

For those who are coming from Oracle world, the best alternative database is probably Postgres, because of many similarities between those two Db engines (data types, tablespace concept etc.).   However, one of the first thing you want to do is to grab a full control over what is going on in your database. If […]

23. 12. 2020.

PRIMARY KEY creation effect on SUPPLEMENTAL LOGGING

Recently I’ve discovered a bug that affects all versions of Oracle RDBMS from 11g up to the 19c. If you are using SUPPLEMENTAL LOGGING feature for any reason (security audit of logs, Data Guard, tables replication…) you might be affected. To follow my example you need to fulfill prerequisites to prepare database for supplemental logging. […]

24. 09. 2020.

How to setup Adobe Flash Support in Browser for Linux

Some vendors still relies on Adobe Flash for rich web contents. One such example is Oracle, where you can find that all tuning reports are generated by using Flash. Even Oracle Enterprise Manager Grid, main Oracle monitoring tool still uses Adobe Flash to generate its content. If you are on Windows, you can use Internet […]

18. 03. 2020.

String aggregation – part II

Last time I’ve suggested two ways of how to perform string concatenation. Unfortunately, both approaches have serious drawbacks that you might experience. In this post I’ll explain one approach which is not Oracle version dependent, which corrects both shortcomings of previously described methods: size of concatenated string speed of data processing Part I you can […]

17. 03. 2020.

String aggregation – part I

Very often you’ll find delimited text to be more suitable format option instead of splitting text in many rows. Typical use cases for having delimited text includes preparation of data for further analysis, reporting, importing data into the spreadsheet etc. To demonstrate the concept, I’ll use my demo table TEST with 10 million rows. And […]

21. 02. 2020.

External C procedures – how to setup and performance boost you can expect

In this post I’ll explain what you need to do to setup external C procedure call with Oracle 18c. I’ll also show for a CPU intensive task, what performance boost you might expect. For those of you who remember how difficult it was to configure LISTENER and TNSNAMES to work with C external procedures, will […]