データ分析のための技術プラットフォームを構築するためのオープンソースソフトウェアの使用に

個人ブログのナビゲーションページ(クリック、右側にリンク個人のブログを開くために):ダニエルは、テクノロジ・スタックにあなたを取ります 

アーキテクチャ

古いルールは、第1の組成物が追加されました:

ボックスデータ分析プラットフォームを簡単にアウトを構築するために、私は次のテクノロジ・スタックを使用します。

サーバー側:

  • sanic  ベースのWebサーバーのpython3
  • パンダ  Pythonの最も人気のあるデータ解析ライブラリに
  • 自動sklearn  ベースsklearn自動機械学習ライブラリ
  • 預言者  Feisibukeオープンソースライブラリ時系列分析
  • pandassqlは  、データフレームパンダにSQLライブラリを実行することができます
  • gunicornの  PythonベースのWSGI HTTPサーバ

クライアント:

  • 反応  フロントエンドフレームを
  • AntのデザインProの  エンタープライズアプリケーションスイートのAntのオープンソースのフレームワーク
  • BizCharts  G2に基づいており、可視化ライブラリに反応
    • G2  JavaScriptでグラフィックスの文法

 

機能

Dataplay3は、可能なユーザデータ解析の複雑さを簡素化することを期待して、データ分析の基本的な機能を提供します。

  1. データセット管理パンダに基づいて、
  2. SQLベースのクエリとPands
  3. グラフィックスの文法ベースの可視化
  4. シンプルなダッシュボード
  5. 自動化された機械学習、値に基づいて細分化データモデリングと予測を提供
  6. 時系列分析

具体的には特徴にここでは、いくつかの機能のスクリーンショットは、参照してください  https://gangtao.github.io/dataplay3/features

 

それともこれを参照動画紹介

アーキテクチャおよび機能上の反省

フロント

間違いなくヴュー同様に良い、非常に人気が反応しません。私はここで議論して比較する必要はありません。

スタックの先端に反応し、開発ツールのプロセスは、現在、非常に成熟してきました。管理フロントエンドの状態管理の主要な問題を解決するための状態に基づいてReduxの。しかし、そうであっても、製品の開発は、それは時間やそれにかかるコードの量であるかどうか、フロントエンドの作業は、開発の大部分を占有しています。フロントエンドの開発者として、あなたは知っておく必要があります。

それが簡単に始めるために作るために、私は、フレームワークの利点と、AntのオープンソースAntのデザインプロを使用することを選択した、あなたは、あまりにも多くの梱包、いくつかの機能のフレームワークであるという欠点、のように輝くとの基本モデルを設計の多くを必要としないということですあなたは、彼らはそれが気に比べて、それがより困難にする機能の一部を実装します。あなたがコードを制御する方法に応じて、フレームなしで使用するようにします。

プロアントデザインは上に構築されています:

私は個人的にはAntのデザインProの機能のように、これは非常に便利である、モックサーバー、先進前端と後端から要求されたこの1つは、分離することができ、テストすることです。実質的には以下のプロセス開発休憩APIのフロントエンドに基づきます:

  1. REST APIが定義され
  2. (使用して先端で非同期REST API呼び出し要求、Axios HTTPリクエストを
  3. 遠位端のインタフェースを実装MOCK
  4. カスタムページ対応機種モデル、および状態を管理します
  5. 達成するためのページへの結合モデル、ページの機能

可視化

Dataplay2使用echartアリ使用して視覚的なライブラリ、Dataplay3としてG2は、私のブログの記事の前に私が述べました:

Baiduのechartは非常に良い可視化ライブラリですが、データ探索ではなく、良い十分に使用した場合。Ggplot希望が使用される同様のフロントエンドの可視化ライブラリを持っています。

幸い、これはアリのG2であり、既にフロントエンド可視化ライブラリをggplotと同様です。ここで私は私のBUPT同窓会賞賛したいレイモンドもechartの著者です、。彼のチームは、世界有数の可視化ライブラリを開発し、G2は、そのうちの一つです。私は、彼らが良くなることを願って、それはG2のechartを超えてしまったと思います!

文法主導型グラフィックスとして、利用者の使用するための課題である、そう、Dataplay3にはアイコンベースのタイプの同時可視化を提供します。

次のようにパターンの文法により、新しいグラフの種類は、設定項目に拡張することができ、例えば、エリアのグラフです。

const areaChart = {
  name: 'area',
  icon: 'area-chart',
  feeds: [
    {
      name: 'x',
      min: 1,
      max: 1,
    },
    {
      name: 'y',
      min: 1,
      max: 1,
    },
  ],
  build(feeds) {
    const grammar = {};
    grammar.facat = null;
    grammar.coordination = 'rect';
    grammar.geom = {};
    const geom = {};
    geom.geometry = 'area';
    if (feeds.x && feeds.y) {
      geom.position = [feeds.x, feeds.y];
    }
    grammar.geom.Geom1 = geom;
    return grammar;
  },
};

今Dataplay3は、グラフィックスが戻って、私はより多くの種類を追加するかもしれませんが、多くの種ではありませんサポートされています。

バックエンド

バックエンドのPythonアプリケーションでは、のpython3は不可避な選択である受け入れます。Webサービスの場合は、Sanicは良い選択である、それはすべての利点フラスコの基本を継承しますが、サポート非同期は、良いサービスのパフォーマンスは、当然のことながら、リスクが必ずしも新しいフレームワークを選択することができます提供することができます提供します。記事を参照してくださいTucao Sanicの数

Dataplay3はまだ最新の人気Graphqlを使用せずにREST APIを使用して、この選択のために、私たちは自分の用途に応じて決定を下すことができます。あなたは、参照することができますREST対GraphQLを

機械学習

これはまた、データ分析ツールを使用することができます白の希望があるので、私はできるだけ簡単に提供する機能を予測したい、の使用自動SKlearnは、モデリングプロセスは、我々は機械学習が非常に簡単になる置きます。ユーザーは、機能やオブジェクトのような、データモデリングのために選択する必要があります。データパイプラインを構築した場合、ユーザーは、データがensembモデルの前処理、および場合どのように、アルゴリズムのアプリケーションの種類を選択する必要はありません。唯一の考慮事項は、モデルを構築するためにリソースの量(時間、CPU、メモリ)を支払う能力があります。

オートSklearn主な機能は以下のとおりです。

  • パイプラインを選択するためのメタ学習アルゴリズムの使用
  • ベイジアン最適化パラメータが選択されています
  • アンサンブルを使用して複雑なモデルを構築します。

時系列データ解析の別の一般的なタイプのために、私はFacebookのオープンソース預言者を選んだ、(に基づいてpystan建物)

Dataplay3は機能モデルの展開を実施していない、それは考えることができます。

フルスタックエンジニアからエンジニアライフサイクルへ

より多くのアプリケーションがクラウドに移行されたか、クラウドへの移行の過程では、ソフトウェアエンジニアのために、スタック全体が何を今必要なのは、完全なライフサイクルのエンジニアであるの要件を満たすには不十分であったため、エンジニアは前端と後端とコードの実装をカバーするだけでなく、テストするだけでなく、ソフトウェアのライフサイクルのすべての部分、特にDevOpsチームに参加します。

Dataplay3例に、私は、実行する必要があります。

  • 「製品定義 - 私はどのようなユーザーのために、考えることは何の問題を解決したいです
  • デザインソフトウェアアーキテクチャ - 「アーキテクチャ相
  • コード設計の前端と後端、選択 - 「設計フェーズ
  • 実現及び前後端の試験 - 「実施段階
  • 継続的インテグレーションと展開 - 「CICD
  • 運用と展開後のモニタリング、製品マーケティング(例えば、私がこの記事を書いている) - 「運用フェーズ

ここでは、私は主にCICDについて話しています。DevOpsチームとCICDは現在、ソフトウェアのライフサイクルが何であるかに非常に重要な位置を占めています。この記事では、 CICDのプロジェクトの多くを提供します。

Dataplay3では、私が使用し

  • CICD  codeship
  • 自動化されたコードレビュー&コード分析、  codeacy
  • 自動化されたコードレビュー&コード分析、  エバート

多くのCICDサービス、最も人気のあるオープンソースのプロジェクトであってもよいトラヴィスCI追加でgitlab非常に良いCICD機能となりました。codeshipコンテナ彼らは良い機能だけでなく、非常に良い選択を持っているので。今codeshipの基本的な機能のCIの使用のdataplay3。あなたは、ビルドより強力なCICDをcodeship Proの機能を利用することができます。いくつかの開発密度がプロジェクトの多くは十分なはずではないため、自由なサービスを構築月額100を提供するオープンソースプロジェクトのためのcodeship。

codacyとエバートは、コード分析ツールを自動化されて、あなただけのgithubのプロジェクトへの接続、プロジェクトを作成する必要があり、これは一般的にCIに達成することができ、PRの提出コードまたは合併時にコード分析を自動化することができます、あなたはあなたのコードの変更の品質を理解し、より簡単にこれらのサービスを利用することができます。

 

概要

場合はデータプレイは、単にいくつかの非常にオリジナルのアイデア、dataplay2アッププロトタイプなるように、それはかろうじて使えるツールかなりdataplay3する必要があり、もちろん、それは多くのバグや問題点があるかもしれない、今非常に簡単です、と私はゆっくりしたいと考えています改善されました。

付属のJava / C / C ++ /機械学習/アルゴリズムとデータ構造/フロントエンド/アンドロイド/パイソン/プログラマ読み/シングル書籍図書Daquanは:

(乾燥した個人ブログでそこ開くには、右クリックしてください):技術的なドライ開花を
===== >> ①[Javaのダニエルは、高度なへの道であなたを取る] << ====
===== >> ②[+ ACMアルゴリズムデータ構造ダニエルは、高度なへの道であなたを取る] << ===
===== >> ③[データベースダニエルは高度への道であなたを取る] << == ===
===== >> ④[ダニエルWebフロントエンドの高度への道であなたを取るために] << ====
===== >> ⑤[機械学習のPythonとダニエルあなたにエントリを取ります高度なロード] << ====
===== >> ⑥[建築家ダニエルは高度への道であなたを取る] << =====
===== >> ⑦[C ++ダニエルは、道路上をお連れに進ん] << ====
===== >> ⑧[ダニエルは高度への道であなたを取るのiOS] << ====
=====> > ⑨[ウェブセキュリティダニエルは、高度なへの道であなたを取る] ===== <<
===== >> ⑩[Linuxオペレーティングシステムを、ダニエルは高度への道であなたを取る] = << ====

何の未収果物はありません、あなたの若い友人は、友人がテクニックを学びたい願って、道路の方法ですべての障害を克服することは、技術に結びつける本を理解して、コードをノック、原理を理解し、実践を行くことになります決定しましたそれはあなたの将来、あなたの夢を生活、あなたの仕事をもたらすでしょう。

公開された47元の記事 ウォンの賞賛0 ビュー293

おすすめ

転載: blog.csdn.net/weixin_41663412/article/details/104844561
おすすめ