Tag Info

Hot answers tagged

6

These 3 things have nothing to do one with each other. I will give you an introduction and you can search or ask for more specifics separately: MySQL Cluster is the marketing name of what many of us call, to avoid confusions like the one you are currently suffering from, "NDB Cluster" or "MySQL NDB Cluster". It is a synchronous mostly memory-only key-value ...


3

First 2500*50kB ~= 128MB. Then if you will check CREATE TABLESPACE syntax default INITIAL_SIZE for the datafile is 128MB! So if you want to store more data you can either specify INITIAL_SIZE you need while creating tablespace or you can ALTER TABLESPACE ADD DATAFILE. By specifying STORAGE DISK in CREATE TABLE statement you stated that you want on disk ...


3

Each data node's redo log has a number of 'parts' - currently 4 by default. Each redo log part is like a mini redo log, with 1 / Num_parts of the capacity defined for 'Redo log'. This design increases file system and lower layers parallelism when writing the redo log, but requires balance across the parts to be reasonable. When a table is created, table ...


3

Forgive me for sounding somewhat biased, but you can learn about setting up Master/Slave and Master/Master Replication right here in the DBA StackExchange. Here are some of my posts May 26, 2012 : Trying to understand SHOW SLAVE STATUS\G Jan 05, 2012 : MySQL Replication Error Dec 23, 2011 : How to make MySQL replication reliable? Dec 19, 2011 : Best way ...


3

For single machine setups, you can also check out the Cluster Sandbox: http://www.severalnines.com/resources/mysql-cluster-sandbox-pre-defined-packages Good luck! Vinay http://www.severalnines.com/ Edit By RolandoMySQLDBA 2012-05-15 13:34 EDT Check out the Training Slides : http://severalnines.com/mysql-cluster-training IMHO it would be a fine ...


3

In the latest Percona XtraDB cluster version it is possible to make WAN segments so that there is more efficient communication between nodes. If you didn't do that, all nodes would try to replicate to all nodes, which is highly inefficient for Galera. With Galera 3/PXC 5.6, you can establish those so that only one node at a time will replicate to the other ...


2

The biggest difference will come from networking - Mikael's tests were run over Infiniband whereas most hosting or cloud providers will not give you that type of dedicated bandwidth. As a distributed database, MySQL Cluster needs high network bandwidth to support message passing between the nodes, so the higher the network latency, the lower the read or ...


2

You may want to consider if you really need the MySQL Cluster, it may be overkill for your purposes and may not justify the complexity. A pair of MySQL Master-Master or Master-Slave instances with replication are good enough for many shops and will deliver better performance in this scenario. If you have to stay with your current architecture, you can add ...


2

currently the maximum data set size is around 3TB, if you are using all in-memory data. You can increase that if you use disk-based tables MySQL Cluster also has very flexible replication to external storage engines, ie to InnoDB, so many users manage their "hot" data in cluster, then replicate "colder / aged" data to innodb. There is a blog describing how ...


2

Ah ha. This seems to be the error you get when you try to replicate from a server that uses statement binlogs. I initially overlooked that this scenario was not supported. I was able to work around this by adding an intermediate mysqld that just converts the statement replication binlogs into mixed replication binlogs (using log-slave-updates and ...


2

A few db's that come close: 1: Postgres-XC, meets most areas except that sharding takes some design effort 2: VoltDB, meets most areas except for data larger than memory The key question though is why do you need the autosharding? Anything automatic adds complexity and if you are big enough to require sharding, you can probably afford to have the ...


2

You're correct that the on-line repartitioning of data temporarily uses extra memory on the data nodes. In most cases the application data is split over many tables and so relatively little memory is needed when repartitioning each table. If the data is in one big table and you don't have the available RAM then there are a number of options... Perform the ...


2

From the downloads page: It is available as both open source and commercial editions. The Community (OSS) Edition is available under the free software/opensource GNU General Public License (commonly known as the "GPL"). If GPL is ok for you, then you're fine. The Carrier Grade Edition is a commercial offering though. You'll need to contact Oracle to ...


2

You can try and set [NDBD DEFAULT] ... NoOfFragmentLogParts=12 ... http://dev.mysql.com/doc/refman/5.5/en/mysql-cluster-ndbd-definition.html#ndbparam-ndbmtd-nooffragmentlogparts Then restart all nodes with --initial Best regards Johan Andersson Severalnines AB


2

The primary purpose of MySQL Cluster is not performance -- it's high availability. By making sure every component has a possibility of failover (though not in your case), you ensure that you can remain operating without interruption even through emergencies and crashes. Unless your whole data center goes down, of course. Though MySQL Cluster also tends to ...


2

By reading some forums, the variables that avoids this issue are: MaxBufferedEpochs TimeBetweenEpochsTimeout This must be configured in MGMT Node /var/lib/mysql-cluster/config.ini As we can see in MySQL Documentation, the default for MaxBufferedEpochs is 100, the default for TimeBetweenEpochsTimeout is 4000, change this for the needed value.


2

I think you are mixing concepts here: Mysql Cluster (assuming you are referring to MySQL NDB Cluster) requires the NDB engine for tables that are part of the cluster. In other words, NDB is the cluster, and MySQL Server, on the SQL layer, requires to use the NDB Cluster storage engine in order to access the data on the cluster. TokuDB is an on-disk ...


1

DISCLAIMER : Not SCMCDBA Certified If you plan to hold data in memory, you need to increase RAM on all data nodes to 16GB increase the DataMemory to 6GB increase the number of SQL nodes to 3 (Makes SQLNodes to DataNodes 1:1) If you cannot make these changes, then you should offload data to local storage MySQL Cluster -- Storing table data on data ...


1

It seems that for solving your problem you chose the wrong tool. MySQL Cluster is good when you do mostly key based lookups from multiple threads from memory based tables. Disk based tables may be useful when you have rarely read data. Or your work dataset is small portion of the table which should fit into memory cache whose size is defined by ...


1

From mysql.com: With strict mode disabled, invalid dates such as '2004-04-31' are converted to '0000-00-00' and a warning is generated. With strict mode enabled, invalid dates generate an error. To permit such dates, enable ALLOW_INVALID_DATES. To disable it you have 2 options. Via SQL: execute SET @@global.sql_mode = ''; query. Via my.cnf: ...


1

CREATE LOGFILE GROUP and CREATE TABLESPACE accept only bytes as unit. http://bugs.mysql.com/bug.php?id=62858 With MB converted to bytes logfile group was created successfully for me.


1

Pushdown basically means that some part of the job is "pushed down" to data nodes. So performance gain is because: data nodes can filter and process data in much more efficient way than SQL nodes. They "know" more about the physical details of the data we save on SQL node - data node traffic. And latency between those two nodes is relatively high because ...


1

After reading deeper the manual, storing the model in an InnoDB engine and running ndb_size.pl I have been able to find that these parameters (which had their default values) were in fact too low: MaxNoOfOrderedIndexes MaxNoOfUniqueHashIndexes MaxNoOfAttributes


1

You can have a bigger dataset than you have physical RAM by identifying table data to be stored on disk. Non-indexed attributes can selectively be made to reside on disk but indexed attributes are always in memory. The larger the database and the more indexes you have on the tables, the more likely it is that you will need more memory or hosts. Similar ...


1

MySQL Cluster FAQ states that it is possible to have a database bigger than available memory, but the documentation referenced from the FAQ entry states that only non-indexed columns of NDB tables can be stored on disk.


1

Disclosure: I work with the MySQL replication and MySQL Cluster teams The best resources to get started for Replication are the Intro and Tutorial whitepapers posted here: http://www.mysql.com/why-mysql/#en-0-38 For MySQL Cluster, the evaluation guide provides insight into Cluster use cases and best practices for building a PoC: ...


1

A great place to start is an Internet search, using your browser. For instance, https://duckduckgo.com/?q=mysql+clustering turns up a huge amount of relative and timely pages for your perusal. For starters, I would read https://www.mysql.com/cluster which is literally the book on clustering. Here's another great one: ...


1

Would recommend completing the inquiry form here and one of the advisors can come back to you with the best advise: http://www.mysql.com/about/contact/


1

MySQL Cluster checkpoints and logs in-memory data to disk (assuming you leave the default of checkpointing on). As these are streaming writes, fast HDDs are very efficient to handle this activity. Also, all updates are synchronously replicated between data nodes in a node group, and these can be split across data centers using multi-site clustering: ...


1

Clustrix, ScaleDB, etc., have solutions for $$$. But wait... Do you really need Sharding? Or do you just need Replication, and have a load balancer in front of a few readonly Slaves? Slaves solve read-scaling. Sharding solves write-scaling. Replication is available out-of-the-box.



Only top voted, non community-wiki answers of a minimum length are eligible