Feb
24
2015
--

Mirantis Partners With Google To Bring Kubernetes To OpenStack

gorch_fock_wheel Mirantis, a major player in the OpenStack ecosystem, today announced that it has partnered with Google to bring support for Kubernetes, Google’s open-source project for managing containerized applications, to the OpenStack project. This new project uses OpenStack’s Murano application catalog to make it easier to deploy and configure these new Kubernetes-based clusters and their… Read More

Feb
24
2015
--

New RelateIQ Reporting Shoots For Deeper Insight

Man aiming bow and arrow at warn target. RelateIQ, a tool that helps growing businesses manage their sales, announced a major update today that brings advanced reporting to the tool. This is a feature that has been long overdue. The company, which was sold to Salesforce.com last July for $390M provides CRM services for small companies. Its differentiator to this point has been to help small businesses manage their CRM automatically… Read More

Feb
24
2015
--

New Firm Combines Wearables And Data To Improve Decision Making

Group of workers meeting around conference table. Humanyze, a unique new firm spawned in the MIT Media Lab, has developed a system that uses a smart employee badge to collect employee behavioral data, which it links to specific metrics with the goal of improving business performance. It announced $1M in seed funding today. The funding was led by Romulus Capital with contributions from Boston Seed and dunnhumby Ventures. Humanyze… Read More

Feb
24
2015
--

GuideSpark Raises $22.2M To Create Customized Videos That Make HR Less Tedious And Confusing

guidespark GuideSpark, a startup that helps human resources teams communicate with the rest of the company, announced today that it has raised $22.2 million in Series C funding. CEO Keith Kitani told me that GuideSpark works with HR to create videos and interactive content covering things like employee benefits and compensations. While parts of those videos can be reused from company to company,… Read More

Feb
24
2015
--

Business Services, Retail Saw The Most Online Security Breaches In 2014: FireEye

13334048894_6e8b421c4e_o Business services and retail operations saw the most online intrusions from malicious hackers in 2014, and one business was infiltrated and tapped for a full eight years before it figured out it was being targeted, according to Mandiant, a division of computer security firm FireEye. In the news recently for tracking how supporters of the pro-Assad Syrian government have been… Read More

Feb
24
2015
--

Is MySQL’s innodb_file_per_table slowing you down?

MySQL’s innodb_file_per_table is a wonderful thing – most of the time. Having every table use its own .ibd file allows you to easily reclaim space when dropping or truncating tables. But in some use cases, it may cause significant performance issues.

Many of you in the audience are responsible for running automated tests on your codebase before deploying to production. If you are, then one of your goals is having tests run as quickly as possible so you can run them as frequently as possible. Often times you can change specific settings in your test environment that don’t affect the outcome of the test, but do improve throughput. This post discusses how innodb_file_per_table is one of those settings.

I recently spoke with a customer whose use case involved creating hundreds of tables on up to 16 schemas concurrently as part of a Jenkins testing environment. This was not in production, so performance was far more important than durability. They’d run their tests, and then drop the schemas. This process took close to 20 minutes. They asked “How can we make this faster?”

Due to the number of tables involved innodb_file_per_table seemed a likely culprit.

It’s been noted here on the MySQL Performance Blog that innodb_file_per_table can cause table creation and drops to slow down. But what exactly is the performance hit? We wanted to find out.

The innodb_file_per_table Test:

On a test server running CentOS release 6.5, xfs filesystem, and 5.6.22-71.0-log Percona Server, I ran the following homemade benchmark bash script:

[root@host ~]# time $(for db in {1..16};
do mysql -e "create database bench$db";
$(for tb in {1..500}; do $(mysql bench$db -e "create table tab${tb} (i int) engine=innodb"); done) & done)

If you open the mysql client in another screen or terminal, you should see something like this:

...
+-------+------+-----------+---------+---------+------+----------------+------------------------------------------+-----------+---------------+         
| Id    | User | Host      | db      | Command | Time | State          | Info                                     | Rows_sent | Rows_examined |         
+-------+------+-----------+---------+---------+------+----------------+------------------------------------------+-----------+---------------+         
| 80013 | root | localhost | NULL    | Query   |    0 | init           | show processlist                         |         0 |             0 |         
| 89462 | root | localhost | bench5  | Query   |    0 | creating table | create table tab95 (i int) engine=innodb |         0 |             0 |         
| 89466 | root | localhost | bench8  | Query   |    0 | creating table | create table tab81 (i int) engine=innodb |         0 |             0 |         
| 89467 | root | localhost | bench1  | Query   |    0 | creating table | create table tab91 (i int) engine=innodb |         0 |             0 |         
| 89468 | root | localhost | bench13 | Query   |    0 | creating table | create table tab90 (i int) engine=innodb |         0 |             0 |         
| 89469 | root | localhost | bench15 | Query   |    0 | creating table | create table tab90 (i int) engine=innodb |         0 |             0 |         
| 89472 | root | localhost | bench9  | Query   |    0 | creating table | create table tab86 (i int) engine=innodb |         0 |             0 |         
| 89473 | root | localhost | bench10 | Query   |    0 | creating table | create table tab94 (i int) engine=innodb |         0 |             0 |         
| 89474 | root | localhost | bench11 | Query   |    0 | creating table | create table tab80 (i int) engine=innodb |         0 |             0 |         
| 89475 | root | localhost | bench3  | Query   |    0 | creating table | create table tab80 (i int) engine=innodb |         0 |             0 |         
| 89476 | root | localhost | bench2  | Query   |    0 | creating table | create table tab82 (i int) engine=innodb |         0 |             0 |         
| 89478 | root | localhost | bench4  | Query   |    0 | creating table | create table tab91 (i int) engine=innodb |         0 |             0 |         
| 89479 | root | localhost | bench16 | Query   |    0 | creating table | create table tab88 (i int) engine=innodb |         0 |             0 |         
| 89481 | root | localhost | bench12 | Query   |    0 | creating table | create table tab90 (i int) engine=innodb |         0 |             0 |         
| 89483 | root | localhost | bench6  | Query   |    0 | creating table | create table tab96 (i int) engine=innodb |         0 |             0 |         
| 89484 | root | localhost | bench14 | Query   |    0 | creating table | create table tab95 (i int) engine=innodb |         0 |             0 |         
+-------+------+-----------+---------+---------+------+----------------+------------------------------------------+-----------+---------------+         
...        

After creating the tables, I dropped all schemas concurrently:

[root@host ~]# time $(for db in {1..16};
do mysql -e "drop database bench${db}" & done)

So what was the difference with innodb_file_per_table ON vs OFF?

  • With innodb_file_per_table=ON
    • Schema and table creation = 1m54.852s
    • Schema drops = 1m21.682s
  • With innodb_file_per_table=OFF
    • Schema and table creation = 0m59.968s
    • Schema drops = 0m54.870s

So creation time decreased by 48%, drop time decreased by 33%.

I think its worth noting that this benchmark creates and drops empty tables. Dropping InnoDB tables created with innodb_file_per_table=ON can take much longer if they have large amounts of data.

Please also be aware that there are always trade-offs when modifying your InnoDB settings. That is outside the scope of this post, so please research and test before making changes. The MySQL documentation discusses that here.  In 5.6.6 and up, innodb_file_per_table is ON by default. MySQL 5.6 will also create temp tables as InnoDB, as noted here.

So there you have it. If your primary goal is to improve create and drop table time, turning OFF innodb_file_per_table will save significant amounts of time.

The post Is MySQL’s innodb_file_per_table slowing you down? appeared first on MySQL Performance Blog.

Feb
23
2015
--

IBM Goes Deep With Comprehensive Cloud Initiative

Receiver going long for a pass in a football game. IBM has been setting its sights on helping customers manage the hybrid cloud world, and today it announced a series of initiatives it hopes will make it simpler to manage a broad range of resources by treating them as a single entity. The hybrid cloud is a term used to describe a mixed computing environment that can include any combination of public cloud resources, private clouds and… Read More

Feb
23
2015
--

MySQL community t-shirt contest for Percona Live 2015

MySQL community t-shirt contest for Percona Live 2105Have designs on Percona Live this April in Silicon Valley? Send them to us! The winning entry will appear on a cool limited edition t-shirt that we’ll award to a few dozen lucky recipients at our booth’s new Percona T-Shirt Bar. The winner will also get a t-shirt, of course, along with a pair “Beats by Dre” headphones!

That’s right: We’re calling on the creative types within the MySQL community to come up with designs for a unique t-shirt.

Let your imaginations run free! Just make sure to include “Percona Live 2015” in there somewhere. You might also want to include your signature, hanko, seal or mark… treat the cotton as the canvas of your masterpiece… let the world know who created it!

Send your t-shirt designs to me as a high-resolution PDF or in .EPS format. The deadline for entries is March 6. The winner will be chosen under the sole discretion of Percona’s marketing team, taking into consideration quality of design, values alignment, trademark clearance and general awesomeness. (Submitted designs assume unlimited royalty free rights usage by Percona. We also reserve the right to declare no winners if there are no suitable designs submitted. You do not need to register or attend the conference to submit a design.)

Click here to submit your design for the MySQL community t-shirt contest!

By the way, the image on this post is not a template. You have free rein so go get ‘em! And just to be clear: this won’t be the t-shirt that everyone receives at the registration booth. However, it just might be one of the most coveted t-shirts at the conference!

I’ll share the winning design the week of March 9. Good luck and I hope to see you all this April and the Percona Live MySQL Conference and Expo! The conference runs April 13-16 at the Hyatt Regency Santa Clara & the Santa Clara Convention Center.

 

The post MySQL community t-shirt contest for Percona Live 2015 appeared first on MySQL Performance Blog.

Feb
23
2015
--

Apple To Invest $2B Building Green Data Centers In Ireland And Denmark

7709686744_9d5f6a5611_h Amid deeper investigations into how Apple may be using its operations in Ireland as a means for tax avoidance on tens of billions of dollars in profit, the iPhone maker has announced that it will spend nearly $2 billion (€1.7 billion) to develop two new 100% renewable energy data centers in Europe. The centers — which will use wind power and other green fuel sources — will… Read More

Feb
22
2015
--

Main Street Hub Lands $20M To Bring Social Media Marketing To Small Business

Main Street store fronts. Main Street Hub, a company that helps mom and pop businesses run social media marketing, customer relationship management (CRM) and marketing automation recently announced it has received $20M in debt financing from Silicon Valley Bank. The company has raised a total of $40M. The most recent funding before this announcement was $14M in Series B in January, 2014. It has 6000 subscribers who… Read More

Powered by WordPress | Theme: Aeros 2.0 by TheBuckmaker.com