data management

Facebookが世界各地に分散したデータセンターのログを保存するツールLogDeviceをオープンソース化

Facebookは、複数箇所に分散しているデータセンターのログを保存するための自家製のソリューションLogDeviceを、オープンソースにすることを計画している。その発表は、同社のScaleカンファレンスで行われた。

それらのログは、データベースのイベントを調べるために利用されている。何かの理由でサーバーがダウンしたときには、デバッグする方法が必要だし、セキュリティのための監査を行って、サーバー間の整合性を確保しなければならない。大量のユーザーデータが世界中の大きなデータセンターに分散しているFacebookでは、このことがとくに重要だ。

LogDeviceは、ハードウェアやネットワークに問題があってもデータを記録できる。何かの不具合が生じたらログ収集のタスクを他のデータセンターにお願いする。そして回復したら、問題のあったデータセンターのレコードを毎秒5〜10ギガバイトのスピードでリストアする。

Facebookのデータセンターはもうすぐ10箇所になるが、各センターのレコードは確実に同じページに載ってほしい。しかしそこには、バックアップという複雑な問題があるので、データの扱いは一層難しくなる。LogDeviceは、これらの、各所に分散したデータセンターのデータを複製する作業を支援する〔上記のような場合も含め〕。

高価なサーバーをどうしても故障引退させなければならないときでも、LogDeviceは失われたレコードを正しく教えてくれる。レコードのシーケンスとサーバーのストレージを最初から分離し、レコードをさまざまな場所のストレージにランダムに割り当てるので、データセンター全体の自己回復力が強化される。

LogDeviceをいつからオープンソースにするのか、そのスケジュールは公表されていないが、今年のおそい時期に、とは言っている。

[原文へ] (翻訳:iwatani(a.k.a. hiwa))

SalesforceがAIを利用して自然言語の質問をSQLに翻訳、事務系社員でもデータベースを利用できる

SQLはプログラミングの世界ではやさしい方だが、ふつうの人たちがリレーショナル・データベースを対話的に利用したいと思ったときには、やはりその学習曲線は急峻だ。そこでSalesforceのAIチームは、SQLを駆使できない人でもデータベースを使えるために、機械学習を利用できないか、と考えた。

彼らの最近のペーパー、Seq2SQL: Generating Structured Queries from Natural Language using Reinforcement Learning(強化学習を使って自然言語からSQLを生成する)は、機械学習でよく使われるシーケンス変換モデルを利用している。強化学習の要素を加えたことによりチームは、自然言語によるデータベースへのクェリをSQLに翻訳するという課題に対し、かなり有望と思われる結果を得た。

すなわちミシガン大学のデータベースに対し、データベースにフットボールの優勝チームを尋ねるクェリで、正しい結果が得られた。

このプロジェクトに関わった研究員の一人、SalesforceのVictor Zhongは、こう語った: “クェリの正しい書き方は一つではない。自然言語で言われた質問*に対し、それを表すSQLのクェリは二つも三つもあるだろう。われわれは強化学習を利用して、同じ結果が得られるクェリを使うよう、学習を誘導した”。〔*: 自然言語は、語形はまったく同じでも、話者の込めた含意がさまざまに異なることが多い。〕

どなたもご想像できると思うが、ボキャブラリーがとても大きいと、機械翻訳という問題はたちまち複雑困難になる。しかし、翻訳の可能性の多様性を野放しにせずに、どの語に関しても少数に限定してやると、問題はよりシンプルになる。そのためにSalesforceにチームは、ボキャブラリーを、データベースのラベルに実際に使われている語に限定した。つまりそれらの語は、SQLのクェリに実際に登場する語だ。

SQLの民主化は、これまでにもいろいろ試みられている。たとえば最近Tableauに買収されたClearGraphは、データをSQLでなく英語で調べることを、自分たちのビジネスにしている。

“データベース本体の上で実行されるようなモデルもある”、とZhongは付言する。“しかし、社会保障番号を調べるような場合は、プライバシーの懸念が生じる”。

ペーパー以外でSalesforceの最大の貢献は、モデルの構築に利用したデータセットWikiSQLだ。最初に、HTMLのテーブルをWikipediaから集める。これらのテーブルが、ランダムに生成されるSQLクェリのベースになる。これらのクェリを使って質問を形成するが、それらの質問はAmazon Mechanical Turkで人間に渡されてパラフレーズ(語形変化)される。それぞれのパラフレーズは二度検査され、人間によるガイダンスが付く。そうやって得られたデータセットは、このようなデータセットとしてはこれまでで最大のものだ。

[原文へ] (翻訳:iwatani(a.k.a. hiwa))