SQL Zone is brought to you in partnership with:
  • submit to reddit
Lisa Schultz09/30/14
0 replies

Three Features You Need in Your Database

Whether you’ve made the decision to launch an e-commerce platform in the future or you’re figuring out if your current configuration needs a facelift, choosing the database that will power your site is one of the most important decisions you’ll make.

Angela Ashenden09/30/14
0 replies

Bullet-proof SQL - Hadoop's Real Battleground

Ever since Hadoop’s second generation release in late 2013 brought it closer to enterprise capability acceptance, the blogosphere has been ringing with the sound of commentators proclaiming what was still lacking, and what hurdles that yellow elephant needed to jump in order to truly burst into the mainstream.

Lukas Eder09/29/14
0 replies

Top 10 Most Popular Articles on the jOOQ Blog

What do people do when they run out of topics? They recycle previous topics and create top 10 lists. Here is a list of the top 10 most popular articles from the jOOQ blog.

G. Ryan Spain09/29/14
0 replies

The Best of the Week (Sep. 19): SQL Zone

Make sure you didn't miss anything with this list of the Best of the Week in the SQL Zone, including rethinking the ORM model, mapping entities in JPA, and a primer to NoSQL and NewSQL concepts.

Peter Zaitsev09/27/14
0 replies

How to Calculate the Correct Size of Percona XtraDB Cluster’s gcache

When a write query is sent to Percona XtraDB Cluster all the nodes store the writeset on a file called gcache. By default the name of that file is galera.cache and it is stored in the MySQL datadir. This is a very important file, and as usual with the most important variables in MySQL, the default value is not good for high-loaded servers. Let’s see why it’s important and how can we calculate a correct value for the workload of our cluster.

G. Ryan Spain09/26/14
0 replies

How to Find Duplicate Indexes

Josh Berkus at Database Soup wrote a post recently explaining how to find duplicate indexes in SQL. He has written a few queries to help those who need to filter through large amounts of indexes within a database. Berkus says his queries help to minimize the number of false positives that occur.

John Piekos09/26/14
0 replies

Optimizing Index Performance - A CMU Intern’s Work at VoltDB

My name is Yetian Xia. I worked as a software engineering intern at VoltDB during the summer, working with the core team. My favorite project was optimizing the performance of deleting entries from a low-cardinality non-unique tree index.

Peter Zaitsev09/25/14
0 replies

Syncing MySQL Slave Table with pt-online-schema-change

I recently encountered a situation in which after running Percona Toolkit’s pt-table-checksum on a customer system, 95% of the table on the MySQL master was different on the MySQL slave... So how did we solve it? With pt-online-schema-change and a NOOP ALTER.

Peter Zaitsev09/24/14
0 replies

MySQL Upgrade Best Practices

MySQL upgrades are necessary tasks and we field a variety of questions here at Percona Support regarding MySQL upgrade best practices. This post highlights recommended ways to upgrade MySQL in different scenarios.

Vlad Mihalcea09/24/14
0 replies

Preventing Lost Updates in Long Conversations

All database statements are executed within the context of a physical transaction, even when we don’t explicitly declare transaction boundaries (BEGIN/COMMIT/ROLLBACK). Data integrity is enforced by the ACID properties of database transactions.

G. Ryan Spain09/23/14
0 replies

SQL Test Data and Non-Evenly Distributed Randoms

Need to generate test data in your SQL database? The team over at Periscope has had a couple of blog posts recently reminding us that an evenly random distribution is not always the most useful solution.

Peter Zaitsev09/23/14
0 replies

Examining the TokuDB MySQL Storage Engine File Structure

As we know different storage engines in MySQL have different file structures. Every table in MySQL 5.6 must have a .frm file in the database directory matching the table name. But where the rest of the data resides depends on the storage engine.

Sayem Ahmed09/22/14
2 replies

JPA tutorial: Mapping Entities – Part 1

In this article I will discuss about the entity mapping procedure in JPA. As for my examples I will use the same schemathat I used in one of my previous articles.

Ayende Rahien09/22/14
0 replies

SQL Injection & Optimizations Path

It is silly, but I just had a conversation with one of our developers on SQL Injection. In RavenDB we support replicating to a relational database, which obviously require using SQL. We are doing things properly, with parameters and everything.

Priya Darshini09/21/14
0 replies

CRUD Using Spring MVC 4.0 RESTful Web Services and AngularJS

Based on the requests from many readers, I am now presenting an article on how to make CRUD operations using Spring MVC 4.0 RESTFul web services and AngularJS. I had already written few articles on Spring MVC 4.0 RESTFul Web Services in case you are new to this.

Madhuka Udantha09/20/14
0 replies

Increasing MySQL Connection Count

A short tutorial on increasing the MySQL connection count.

Aleksey Novik09/19/14
17 replies

Solving ORM: Keep the O, Drop the R, No Need for the M

The ORM complexity problem has a simple, production-ready solution hiding in plain sight in the Java world.

Chris Travers09/19/14
0 replies

Math and SQL Part 6: The Problem with NULLs

NULL handling is probably the most poorly thought-out feature of SQL and is inconsistent generally with the relational model. Worse, a clear mathematical approach to NULLs is impossible with SQL because too many different meanings are attached to the same value.

Peter Zaitsev09/19/14
0 replies

MySQL 101: Monitor Disk I/O with pt-diskstats

In this post, I will share some examples about how to monitor and check to see if the IO subsystem is performing properly or if any disks are a limiting factor – all this by using the pt-diskstats tool.

Lisa Schultz09/19/14
0 replies

NoSQL and NewSQL: A Primer

To fulfill the need for additional database processing speed and storage, the goal is to scale-out (add more commodity nodes to the system) rather than having to scale up (add more CPU or memory to each node). And to handle this need, two new kinds of scale-out databases have emerged: NoSQL and NewSQL. Let’s take a look at what sets them apart.

Peter Zaitsev09/18/14
0 replies

Generating Test Data from the Mysql> Prompt

There are a lot of tools that generate test data. Many of them have complex XML scripts or GUI interfaces that let you identify characteristics about the data. For testing query performance and many other applications, however, a simple quick and dirty data generator which can be constructed at the MySQL command line is useful.

Lisa Schultz09/18/14
0 replies

Report: Vast Majority of Cloud Databases Use SQL

According to a recent survey of 500 developers, 79 percent were using a SQL database—either MySQL or NewSQL—while only 16 percent said they were using NoSQL. At one point in time, industry pundits speculated as to whether NoSQL would threaten SQL’s dominance of the database market. Based on the previous results, this is no longer thought to be the case.

Peter Zaitsev09/17/14
0 replies

Trawling the Binlog with FlexCDC and New FlexCDC Plugins for MySQL

Swanhart-Tools includes FlexCDC, a change data capture tool for MySQL. FlexCDC follows a server’s binary log and usually writes “changelogs” that track the changes to tables in the database.

Doug Winfield09/17/14
0 replies

Telerik Data Access Enhancer - Persistence and Change Tracking Without Reflection

In this blog post I will talk about the Enhancer – an integral part of Telerik Data Access which often goes unnoticed. The Enhancer is the tool responsible for enabling you to use simple POCO classes in your Telerik Data Access Models and therefore making the development process easier. Let’s see what this tool does for us.

Ayende Rahien09/17/14
0 replies

What is New in RavenDB 3.0: JVM Client API

With RavenDB 3.0, we release an official Java Client API for RavenDB. Using it is pretty simple if you are familiar with the RavenDB API or the Hibernate API.