sql >> データベース >  >> RDS >> MariaDB

MariaDBの新しいDBaaSの概要-SkySQL

    MariaDBは最近、新しいDBaaSオファリングであるSkySQLをリリースしました。一部の人にとっては驚きかもしれませんが、MariaDBは過去数年間、エンタープライズサービス向けに最先端の製品を積極的に推進しており、大手市場のベンダーと積極的に競争しているため、これは予想される動きです。

    >

    SkySQLのリリース前は、MariaDBは2018年までコンテナとヘルムチャートに取り組んできました。SkySQLは、データベースインスタンスをセットアップして起動するときに、複数のリージョンでデータベースの可用性を提供します。

    MariaDB SkySQLとは何ですか?

    MariaDB SkySQLはDBaaSオファリングです。つまり、フルマネージドデータベースサービスであり、Google Cloud Platform(GCP)を使用してクラウドサービス上で管理されます。 MariaDBが提供するデータベースはコミュニティエディションではないことに注意してください。実際、これは、MariaDB ColumnStore(またはその両方)と並んでいるMariaDBEnterpriseServerです。

    このオファリングとAmazonRDSまたはMicrosoftAzureDatabaseのMariaDBサービスオファリングを使用する利点は、バージョン管理(SkySQLにより、ユーザーが最新の製品リリースを使用できるようにする)と、分析およびトランザクションサポートが得られることです。

    DBaaSと統合されているのは、構成マネージャーであり、リアルタイムのメトリックとグラフで監視し、ワークロード分析を使用して、プロアクティブなリソーススケーリングとサービスの一貫性のためにワークロードパターンの変化を特定する機械学習サービスを紹介します。これは、MariaDBエンタープライズ製品のより熱心なユーザーがMariaDBSkySQLを使用するための魅力的な製品です。

    MariaDBSkySQLの機能

    MariaDB SkySQLは、トランザクション(OLTPの一般的なセットアップ)、分析、データウェアハウジング(OLAP)、またはハイブリッドセットアップ(トランザクションおよび分析データベース)。以下に、これらの注目のデータベースサービスプラットフォームの簡単な定義を示します。

    トランザクション

    永続的なブロックストレージでの高速トランザクション処理に最適化–読み取り/書き込み分割と自動フェイルオーバーが構成され、すぐに使用できるようになっているため、透過的な負荷分散と高可用性が実現します。

    分析

    インデックスなしで数十億行に対してアドホッククエリを実行するように最適化され、低コストのオブジェクトストレージ上の列データとマルチスレッドクエリ処理を組み合わせて、クラウドデータのウェアハウジング/分析に最適です。

    ハイブリッドまたは両方

    クラウドでのスマートトランザクション処理に最適化され、データを永続ブロックストレージの行とオブジェクトストレージの列の両方に保存します。リアルタイム分析でトランザクションを強化することで、最新のアプリケーションを作成します。

    MariaDB SkySQLには、データベースインスタンスを登録して起動すると、価格設定(標準サポート)に含まれるワールドクラスのサポートを誇る機能も備わっています。エンタープライズレベルのセットアップをしている場合は、他にも検討できるオプションがあります。エンタープライズおよびプラチナタイプのサポートをオプトインできます。詳細については、価格ページをご覧ください。

    これらの機能とは別に、データベースサービスのステータスと一般的な状態をチェックするための監視機能も提供します。この記事の執筆時点では、現在テクニカルプレビュー中ですが、すでにサービスを使用して、データベースインスタンスのより詳細でリアルタイムのチェックのためのメトリックを収集できます。

    可用性スタック

    このSkySQLプラットフォームは、サービスの信頼性を備えて構築されており、顧客と消費者にワールドクラスのサービスを提供します。プラットフォームがどれほど安定しているかに関係なく、製品の復元力と、停止が発生した場合にどれだけ速く利用できるかを判断し、RPO(目標復旧時点)を減らすために、プラットフォームは常に失敗する必要があります。

    インフラストラクチャの場合、Google Cloud Platform(GCP)を使用し、サービスはGCPのコンポーネントであるGoogle Kubernetes Engine(GKE)に大きく依存しています。これは、MariaDB SkySQLのサービスがKubernetesを搭載したコンテナーで実行されるため、プラットフォーム自体に多くのメリットがあることを意味します。リージョン内の複数のアベイラビリティーゾーンを含むリージョナルGKEクラスターの復元力を提供する機能があります。 Kubernetesから自動修復機能を取得し、99.5%の稼働率でGCPの高いSLAエスカレーションも取得します。

    GKEに依存していますが、これは、Kubernetesの性質を継承して、障害が発生したコンテナを再起動できないことを意味し、障害が検出された場合に自動的に強制終了される異常なコンテナをフェンシングします。また、死んだコンテナは自動的に交換され、バックグラウンドで発生します。これは、顧客の視点では肉眼では気付かれません。

    マルチゾーンは、トランザクションサービスデータベースのセットアップであるプライマリ/レプリカのセットアップに実装されます。レプリケーションレプリカとは別のリージョン内のゾーンでレプリケーションプライマリをプロビジョニングします。

    MaxScaleは、自動フェイルオーバーを処理しながら、OLTPやトランザクションサービスなどのトランザクションタイプの環境(プライマリ/レプリカ)でトップに機能します。トランザクションとハイブリッドサービスをカバーします。 MaxScaleは、プライマリとレプリカのステータスを監視およびチェックします。失敗した場合、MaxScaleは最新のレプリカをプロモートし、それを新しいプライマリとして作成する役割を果たします。次に、残りのレプリカが更新され、新しいプライマリを指します。 TransactionsとHybridサービスはどちらも、MaxScaleインスタンスの自己修復をカバーしています。つまり、MaxScaleインスタンスに障害が発生した場合、問題の状態に応じて再起動または置換されます。

    すべてのタイプのMariaDBSkySQLサービスは自己修復を行うため、常に高可用性を使用できます。つまり、MariaDB Enterprise Server、MaxScaleインスタンス、Kubernetesインスタンスのいずれであっても、特定のインスタンスに障害が発生した場合、Kubernetesの復元力が常に適応されます。

    MariaDBSkySQLの使用

    必要なのは、SkySQLメインページから登録することだけです。アカウントをお持ちの場合は、ログインできます。クレジット/デビットカードなどの支払い方法を設定する必要がありますが、詳細については連絡する場合があります。

    サービスを開始すると、3つのオプションから選択できます。以下を参照してください:

    プラットフォームをテストし、トランザクションサービスをセットアップしました。これは、このアクションの前に、請求または支払い方法をすでに設定していることを意味します。

    セットアップ中に、サービスを展開するリージョンを選択できます。また、選択するインスタンスのタイプのコストの概要も示されています。以下を参照してください:

    レプリカの数とそのトランザクションストレージサイズを指定し、最後に以下のようなサービス名:

    GCPを使用してクラウド内で実行されるため、基本的にリソースを使用していますGoogleCloudから利用できるブロックストレージとそのパフォーマンスなど。

    データベースサービスの起動には、使用できるようになるまでに時間がかかる場合があります。結局、10分ほどかかったので、最初にコーヒーブレイクを取り、本番環境で使用する準備ができたら、元に戻す必要があるかもしれません。起動すると、ダッシュボードでは次のようになります。

    新しく起動したサービスをクリックすると、データベースを管理するためのより多くのオプションが表示されます。これは大まかにシンプルで非常に単純で、派手なUIはありません。

    必要なのは、必要なIPアドレスのタイプを指定することだけです。データベースサーバーにアクセスまたはインターフェイスします。 [資格情報の表示]ボタンをクリックすると、ユーザー名とパスワードに関する情報が表示され、認証局チェーンがダウンロードされ、接続してパスワードを変更できます。

    ちなみに、上記の情報はすでにスクラップになって削除されているため、公開されていますセキュリティ上の懸念はありません。

    基本的に、これをテストすることができ、ホワイトリストに登録する必要のあるIPアドレスをすでに提供しています。したがって、クライアントを介して接続すると、TLS/SSLレイヤーを介してチャネルするより安全な接続が示されます。

    [[email protected] ~]$ mysql --host sky0001841.mdb0001721.db.skysql.net --port 5001 --user DB00002448 -p --ssl-ca ~/skysql_chain.pem
    
    Enter password:
    
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    
    Your MySQL connection id is 32
    
    Server version: 5.5.5-10.4.12-6-MariaDB-enterprise-log MariaDB Enterprise Server
    
    
    
    Copyright (c) 2009-2020 Percona LLC and/or its affiliates
    
    Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
    
    
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    
    affiliates. Other names may be trademarks of their respective
    
    owners.
    
    
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    
    
    mysql> select @@hostname;
    
    +-------------------+
    
    | @@hostname        |
    
    +-------------------+
    
    | paultest-mdb-ms-0 |
    
    +-------------------+
    
    1 row in set (0.25 sec)
    
    
    
    mysql> show schemas;
    
    +--------------------+
    
    | Database           |
    
    +--------------------+
    
    | information_schema |
    
    | mysql              |
    
    | performance_schema |
    
    +--------------------+
    
    3 rows in set (0.25 sec)
    
    
    
    mysql> \s
    
    --------------
    
    mysql  Ver 14.14 Distrib 5.6.48-88.0, for Linux (x86_64) using  6.2
    
    
    
    Connection id: 32
    
    Current database:
    
    Current user: [email protected]
    
    SSL: Cipher in use is ECDHE-RSA-AES128-GCM-SHA256
    
    Current pager: stdout
    
    Using outfile: ''
    
    Using delimiter: ;
    
    Server version: 5.5.5-10.4.12-6-MariaDB-enterprise-log MariaDB Enterprise Server
    
    Protocol version: 10
    
    Connection: sky0001841.mdb0001721.db.skysql.net via TCP/IP
    
    Server characterset: utf8mb4
    
    Db     characterset: utf8mb4
    
    Client characterset: utf8
    
    Conn.  characterset: utf8
    
    TCP port: 5001
    
    Uptime: 10 min 17 sec
    
    
    
    Threads: 12  Questions: 2108  Slow queries: 715  Opens: 26  Flush tables: 1  Open tables: 20  Queries per second avg: 3.416
    
    --------------
    構成マネージャー

    MariaDB SkySQLには、変更を適用したり、独自の構成更新をバージョン管理したり、既存の構成を複製したりして、MariaDBSkySQLアカウントにあるいくつかのサービスに適用できる構成マネージャーも装備されています。 。どういうわけか、構成を処理するいくつかのアプローチを構成ファイル管理と共有しています。たとえば、

    そして、それを使って実行できる次のアクションを提供します

    >

    以前のバージョンの構成は引き続き表示できるため、管理の際により便利です。データベースと構成の変更管理。

    ワークロードの分析と監視

    この記事の執筆時点では、ワークロード分析と監視の両方の機能が現在TechPreviewにあります。ただし、ワークロード分析はまだ使用する準備ができていませんが、監視ではデータベースインスタンスから収集されたデータがすでに表示されています。この例を以下に示します

    実際には、メトリックとグラフの表示にGrafanaを使用しています。データベース、クエリ、ラグ、およびシステムの状態を調査できる他のビューを提供します。以下を参照してください

    ここでワークロード分析をチェックして、どのように機能するかを確認できます。

    結論

    MariaDB SkySQLはまったく新しいサービスですが、このサービスの改善はすぐに実現することが期待できます。これはMariaDBからの大きな動きです。ユーザーはコミュニティで利用可能なプラットフォームに限定されるだけでなく、エンタープライズレベルをリーズナブルな価格で使用できるようになりました


    1. @@ ROWCOUNT –SQLServerの最後のステートメントの影響を受ける行数を取得する

    2. SQLiteQueryBuilderのselectionArgsは、列の整数値では機能しません

    3. Postgresqlで大文字と小文字を区別しないクエリを作成するにはどうすればよいですか?

    4. 非LOB列を更新する必要があるかどうかの確認