プリンキピア

第8章データ管理

Thought Provokers考えてみよう

Exercises 1–5練習問題 1–5
1. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it can best use data management knowledge to create products or services that can generate business. Give precise examples and explain how the start-up would be able to scale the resulting business (i.e., keep sustaining the cost of doing business while increasing its number of customers).
1. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。データ管理の知識を最も効果的に使い、商機を生む製品やサービスを作る方法を説明してほしい。具体例を挙げ、出来上がった事業をどう拡大できるか、つまり顧客数を増やしながら、事業に必要な費用を継続的に賄う方法を説明しよう。
2. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it could leverage a database system to support a new social media application that makes it possible to gather various types of data from various data sources including sensors located at the edge of the network. Give some precise examples and explain how the start-up would be able to scale this approach.
2. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。ネットワークの端に置いたセンサーを含め、さまざまな情報源から多様なデータを集められる新しいソーシャルメディアアプリケーションを、データベースシステムでどう支えるか説明してほしい。具体例を挙げ、この取り組みをどう拡大できるか説明しよう。
3. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it could use a “universal” approach to apply a RDBMS to all possible data management situations. In particular, can you tell if such a solution already exists and if so, give precise examples. What are or would be the limitations of such a solution and is it even possible?
3. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。考えられるすべてのデータ管理の状況へRDBMSを適用する「汎用的」な方法を、どう使えるか説明してほしい。特に、そのようなソリューションがすでにあるか考え、あれば具体例を挙げる。どのような限界がある、あるいはあるだろうか。そもそも実現可能なのか。
4. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it could use a Hibernate to access many different types of database management systems. Are there specific DBMSs that would not be covered by this solution? Would it be a good idea to extend Hibernate to do so, if there is such a solution already in place? If not, what are or would be the limitations of doing so and is it even possible?
4. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。Hibernateを使い、さまざまな種類のデータベース管理システムにアクセスする方法を説明してほしい。このソリューションで扱えないDBMSはあるか。そのようなソリューションがすでにあるなら、Hibernateを拡張して扱えるようにするのはよい考えだろうか。なければ、その実現にはどのような限界があり、そもそも可能なのか。
5. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it can use data lakes as an umbrella for many existing data warehouses and add to them. Is there such a solution already in place? Elaborate on the benefits and drawbacks of this approach and explain how the start-up would be able to scale this approach.
5. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。データレイクを、多数の既存データウェアハウスを包み込み、さらに補うものとして使う方法を説明してほしい。そのようなソリューションはすでにあるか。この方法の長所と短所を詳しく述べ、取り組みをどう拡大できるか説明しよう。
Exercises 6–7練習問題 6–7
6. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it can use machine learning to create software solutions that can operate autonomously. Are there any such solutions available today? Give some precise examples and explain how the start-up would be able to scale this approach.
6. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。機械学習を使い、自律的に動くソフトウェアソリューションを作る方法を説明してほしい。現在、そのようなものは利用できるか。具体例を挙げ、この取り組みをどう拡大できるか説明しよう。
7. Consider our start-up company that is 100% committed to leveraging innovative technologies as a business growth facilitator. Describe how it could put together a generic framework to support informatics applications in any domain. Does such a solution exist already? Either way, how would the start-up be able to scale this approach?
7. 革新的な技術を事業成長の促進手段として使うことに、全面的に取り組む私たちの新興企業を考えよう。あらゆる分野の情報学アプリケーションを支える、汎用の枠組みを作る方法を説明してほしい。そのようなソリューションはすでにあるか。どちらの場合も、この取り組みをどう拡大できるだろうか。

Labs実習

1. Search online to learn what a virtual machine is. You are setting up a virtual machine (VM) on Microsoft Azure and would like to perform data science experiments. Research the best way to gain access to all the tooling you need without having to research and install the individual tools on your own.
1. オンラインで調べ、仮想マシンとは何かを学ぼう。Microsoft Azureに仮想マシン(VM)を設置し、データ科学の実験を行いたいとする。個々の道具を自分で調べてインストールせずに、必要な道具をすべて利用できるようにする最良の方法を調べよう。
2. Select three examples of commercial or open-source DBMSs that use different data models. Install the trial versions of each one of these DBMSs and illustrate their use via a simple tutorial example. Document your work and evaluate the benefits and drawbacks of each system based on your experience.
2. 異なるデータモデルを使う商用またはオープンソースのDBMSを、3つ選ぼう。それぞれの試用版をインストールし、単純なチュートリアルの例で使い方を示す。作業を記録し、経験に基づいて各システムの長所と短所を評価しよう。
3. Explore MySQL and experiment with MySQL Workbench to build a simple website using Django. Refer to the instructions and tutorial (https://openstax.org/r/76DjangoProject) for more information.
3. MySQLを調べ、MySQL Workbenchを試しながら、Djangoで単純なウェブサイトを作ろう。詳しくは手順とチュートリアル(https://openstax.org/r/76DjangoProject)を参照する。
4. Build a simple Django application that implements a social media website and uses a cloud-based data management service for data management. (Hint: You can use this article from Medium (https://openstax.org/r/76BuildDjango) that contains some guidance.)
4. ソーシャルメディアのウェブサイトを実装し、データ管理にはクラウドのデータ管理サービスを使う、単純なDjangoアプリケーションを作ろう。(ヒント:手引きを含むMediumの記事(https://openstax.org/r/76BuildDjango)を利用できる。)
5. Explore how to use AWS service areas when solutioning use cases for a data lake. Data are stored in a raw state initially, and some use cases will use raw data as is. More often, solutions require varying degrees of data preparedness based on a collection of query usage profiles that correlate to actual use cases. Based on the solution, data may be refined and staged with the intent to promote modularity and reuse. The goal is to not overprocess the dataset because it is intended for multiple purposes downstream, such as AWS RedShift for relational analytics, AWS Elasticsearch for text search, or an optimized distributed file system for low-cost active archive storage, which can be queried with an MPP SQL engine.
5. データレイクのユースケースに対応するソリューションを作る際、AWSのサービス領域をどう使えるか調べよう。データは最初、生の状態で保存し、用途によっては、そのまま使う。多くの場合、実際のユースケースに対応するクエリー利用の特徴に応じ、さまざまな程度のデータ準備が必要になる。ソリューションに応じて、モジュール化と再利用を促すため、データを精製し、一時的に格納することもある。目標はデータセットを過度に処理しないことである。後段で、関係分析用のAWS RedShift、テキスト検索用のAWS Elasticsearch、あるいはMPP SQLエンジンで問い合わせできる低費用のアクティブアーカイブ用に最適化した分散ファイルシステムなど、複数の目的に使うからである。
6. Investigate how to put together an end-to-end data management infrastructure for a recommender application being built by a start-up. The application is expected to collect hundreds of gigabytes of both structured (customer profiles, temperatures, prices, and transaction records) and unstructured (customers’ posts/comments and image files) data from users daily. Predictive models will need to be retrained with new data weekly and make recommendations instantaneously on demand. Data collection, storage, and analytics capacity would have to be extremely scalable. The questions at hand are: How can you design a scalable data science process and productionize the models? What are the tools needed to get the job done? You will need to explain how to set up a data pipeline,
6. 新興企業が作る推薦アプリケーションのため、端から端までを支えるデータ管理基盤の構築方法を調べよう。このアプリケーションは、顧客プロフィール、気温、価格、取引記録などの構造化データと、顧客の投稿・コメント、画像ファイルなどの非構造化データを、利用者から毎日数百ギガバイト集めると想定する。予測モデルは、新しいデータで毎週再学習し、要求があれば即座に推薦を行う必要がある。データの収集・保存・分析の能力には、極めて高い拡張性が求められる。課題は、拡張可能なデータ科学の過程をどう設計し、モデルを本番運用へ移すか、仕事を進めるにはどの道具が必要か、という点である。データパイプラインの設置方法を説明する必要がある。
7. Leverage the types of choices suggested in the associated diagram, decide between on-premises and cloud services, choose a cloud service provider if applicable (in particular, investigate the cloud service provider’s ML/DL capabilities and build your solution to avoid cloud vendor lock-in), and develop robust cloud management practices.
7. 関連する図が示す選択肢を活用し、オンプレミスとクラウドサービスのどちらを使うか決め、必要ならクラウド事業者を選ぼう。特に、事業者の機械学習・深層学習の機能を調べ、特定の事業者に縛られないようにソリューションを作り、堅牢なクラウド管理の実務を整える。
8. Search the Internet for available informatics platforms and experiment with any of the ones you find.
8. 利用できる情報学のプラットフォームをインターネットで探し、見つけたもののいずれかを試そう。