Showing entries 11 to 20 of 85
« 10 Newer Entries | 10 Older Entries »
Displaying posts with tag: ndb (reset)
Cluster Installation On Physical Hosts:

In this post, we will see how easily we can install MySQL Cluster on different physical hosts. One can install MySQL Cluster on a single host too. If you are wondering what MySQL Cluster is then please look into my previous post.
MySQL Cluster Installation:

Lets create a MySQL Cluster with the following environment:


  • MySQL Cluster 8.0.22 version

  • 2 Management servers

  • 4 Data nodes servers

  • 2 Mysqld servers

  • 4 API nodes

  • OS: Ubuntu 20.04 LTS



Hostname and IP address of all the nodes in the MySQL Cluster:
Management Node1 (mgmt1):        Hostname: …

[Read more]
MySQL Cluster a 5 9s (99.999%) Database

MySQL Cluster: MySQL Cluster is a real time, ACID-compliant transactional database. It is a combination of MySQL server and the NDB storage engine. Data is cached in memory and durably stored on disk. Indexed columns are always kept in memory while non-indexed columns can be kept in memory or disk. It was mainly designed for telecom databases with 99.999% availability and high performance. Unlike simpler sharded systems, MySQL Cluster transactions can transparently query and update all data in the system.


Key features of MySQL Cluster:

  • MySQL Cluster is designed using a shared nothing architecture
    
  • Support for large database sizes
    
    • With all columns kept in memory, can store upto few terabytes
      
    • With some columns kept on disk, can store upto few petabytes
      
[Read more]
Geo-Redundancy for MySQL InnoDB And NDB Clusters

MySQL highly available solutions, InnoDB Cluster (it uses InnoDB storage engine and is based on Group Replication plugin) and NDB Cluster (NDB storage engine), offer high scalability and redundant topologies.

  • InnoDB Cluster can be configured with up to 9 replicas, in single primary configuration or multi-primary.
  • NDB Cluster instead, while being a much different solution, offers the chance to have …
[Read more]
Install MySQL Cluster Manager "MCM" using Systemd

For more information on how to create a service look at man systemd.serviceInstallDirectory for MCM installation is /opt Download latest tar package of MCM from edelivery.oracle.com or support.oracle.com (today this is package: MySQL Cluster Manager 1.4.8 TAR for Generic Linux x86 (64bit))Run commands below once you have downloaded the MCM package:

sudo su -
cd /opt
tar xzf /tmp/mcm-1.4.8-linux-glibc2.12-x86-64bit.tar.gz
mv mcm-1.4.8-linux-glibc2.12-x86-64bit mcm
cp /opt/mcm/mcm1.4.8/etc/mcmd.ini /opt/mcm/
mkdir /opt/mcm/mcm_data

Set manager-directory to folder /opt/mcm/mcm_data in configuration file:

cat /opt/mcm/mcmd.ini | sed 's/^##manager-directory.*/manager-directory = \/opt\/mcm\/mcm_data/' >> /opt/mcm/mcmd.ini

[Read more]
preFOSDEM MySQL Days: summary and slides

What a great event ! I got very positive feedback for this extended preFOSDEM MySQL Day 2020.

Before my summary, I wanted to thank again all speakers and attendees. Without you this event won’t even exist. And thank you to ICAB for hosting us yet another time !

As you may know, we had 2 parallel tracks for 2 consecutive days. We had very valuable technical content from the MySQL developers and also from the external community members who talked about their favorite database.

There was a large interest in MySQL NDB Cluster and it was obvious that the nice presentations we had, encouraged people to try the worlds highest performance open source in-memory database (and they can even test it on their laptop with DBDeployer). The NDB users were also happy with the new stuff and impressive numbers that Bernd

[Read more]
preFOSDEM 2020 MySQL Days: the schedule

The schedule of the preFOSDEM Day is now available !

We had a lot of proposals to deal with. Also this is a MySQL event where we, the MySQL Team has the possibility to show to you, our Community, all what we have working on to improve MySQL but also new stuff. We also invite some of our friends from the MySQL Community to talk about their experience.

I think we did a good selection and propose you new content. We are extremely happy to have Saverio Miroddi from TicketSolve talking about MySQL 8.0, Uber talking about InnoDB Cluster, and Facebook about Binlog.

As you can see, we will have 2 rooms, where one will be dedicated mostly to SQL and Optimizer topics but also tutorials.

You can also see that this year we also want to put some spot lights to MySQL NDB Cluster. You will see what is it, how is it used and what’s new. We will also have 2 community speakers sharing their MySQL NDB knowledge: Giuseppe Maxia, …

[Read more]
NDB Parallel Query, part 5

In this part we are going to analyze a bit more complex query than before.
This query is a 6-way join.

The query is:
SELECT
        supp_nation,
        cust_nation,
        l_year,
        SUM(volume) AS revenue
FROM
        (
                SELECT
                        n1.n_name AS supp_nation,
                        n2.n_name AS cust_nation,
                        extract(year FROM l_shipdate) as l_year,
                        l_extendedprice * (1 - l_discount) AS …

[Read more]
NDB Parallel Query, part 4

In this part we will discuss how NDB batch handling works. Query execution of
complex SQL queries means that more rows can be delivered than the receiver is
capable of receiving. This means that we need to create a data flow from the
producer where the data resides and the query executor in the MySQL Server.

The MySQL Server uses a record where the storage engine have to copy the result
row into the record. This means that the storage of batches of rows is taken
care of by the storage engine.

When NDB performs a range scan it will decide on the possible parallelism before
the scan is started. The NDB API have to allocate enough memory to ensure that
we have memory prepared to receive the rows as they arrive in a flow of result
rows from the data nodes. It is possible to set batch size of hundreds and even
thousands of rows for a query.

The …

[Read more]
NDB Parallel Query, part 3

In the previous part we showed how NDB will parallelise a simple
2-way join query from TPC-H. In this part we will describe how
the pushdown of joins to a storage engine works in the MySQL Server.

First a quick introduction to how a SQL engine handles a query.
The query normally goes through 5 different phases:
1) Receive query on the client connection
2) Query parsing
3) Query optimisation
4) Query execution
5) Send result of query on client connection

The result of 1) is a text string that contains the SQL query to
execute. In this simplistic view of the SQL engine we will ignore
any such things as prepared statements and other things making the
model more complex.

The text string is parsed by 2) into a data structure that represents
the query in objects that match concepts in the SQL engine.

Query …

[Read more]
Addressing common challenges when scaling out MySQL horizontally

When we explore strategies to scale our MySQL-based database layer, we realize that there are many different options. As opposed to proprietary solutions, open-source products nourish themselves from their communities and novel architectures or enhanced versions are generated, often incorporating other open source technologies. MySQL is not an exception.

Other players build completely different engines aiming to mitigate some of MySQL well-known weaknesses, but still support its wire protocol, with the challenge of sacrificing as little compatibility as possible.

In this white paper, we briefly discuss the scale-up vs scale-out dilemma, to then review the different scale-out strategies. We are also going to go over some of the most common MySQL architectures and products with horizontal scaling in mind.

Finally, we will share some guidelines to …

[Read more]
Showing entries 11 to 20 of 85
« 10 Newer Entries | 10 Older Entries »