From 9b1a924eb63b1e54d5f830ddf5f7a982b274d79f Mon Sep 17 00:00:00 2001 From: estomm Date: Sat, 24 Apr 2021 10:28:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=B5=81=E6=B0=B4=E7=BA=BF?= =?UTF-8?q?=E6=8A=80=E6=9C=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 3 +- C++/面试/19 内存对齐.md | 2 - Tensorflow/TensorFlow2.0/11 联邦学习.ipynb | 125 +++++++ Tensorflow/TensorFlow2.0/5 数据流水线.ipynb | 311 ++++++++++++++++++ .../TensorFlow2.0/5.2 加载generator数据.ipynb | 90 +++++ .../TensorFlow2.0/5.4 加载tf.Record数据.ipynb | 228 +++++++++++++ .../5.5 加载tf.TextLineReader数据.ipynb | 171 ++++++++++ 工作日志/2021年4月21日-今日计划.md | 2 +- 工作日志/2021年4月8日-简历投递记录.md | 4 +- .../MySQL/{系列0-原理.md => 0 MySQL概述.md} | 0 数据库/MySQL/{系列1.md => 1 创建数据库.md} | 2 +- 数据库/MySQL/{系列10.md => 10 正则表查询.md} | 5 +- 数据库/MySQL/{系列11.md => 11 数学函数.md} | 6 + 数据库/MySQL/{系列12.md => 12 索引.md} | 3 + 数据库/MySQL/{系列2.md => 2 创建数据表.md} | 2 +- 数据库/MySQL/{系列3.md => 3 完整性约束.md} | 8 +- 数据库/MySQL/{系列4.md => 4 修改表结构.md} | 7 +- 数据库/MySQL/{系列5.md => 5 修改表数据.md} | 5 +- 数据库/MySQL/{系列6.md => 6 查询表数据.md} | 7 +- 数据库/MySQL/{系列7.md => 7 高级表查询.md} | 7 +- 数据库/MySQL/{系列8.md => 8 连接表查询.md} | 5 +- 数据库/MySQL/{系列9.md => 9 外键与查询.md} | 5 +- 数据库/MySQL/image/2021-04-23-12-41-46.png | Bin 0 -> 134213 bytes 数据库/MySQL/image/2021-04-23-12-46-47.png | Bin 0 -> 166163 bytes 数据库/MySQL/附录1 MySQL存储引擎.md | 163 +++++++++ 数据库/MySQL/附录2 MySql性能优化.md | 264 +++++++++++++++ 数据库/Redis/{README.md => 0 README.md} | 0 .../Redis/{Redis概述.md => 附录1 Redis概述.md} | 0 .../{Redis持久化.md => 附录2 Redis持久化.md} | 0 数据库/Redis/附录3 Redis数据结构.md | 1 + 数据库/y面试问题整理.md | 18 +- 数据库/基础篇——4.SQL.md | 10 +- 32 files changed, 1432 insertions(+), 22 deletions(-) rename 数据库/MySQL/{系列0-原理.md => 0 MySQL概述.md} (100%) rename 数据库/MySQL/{系列1.md => 1 创建数据库.md} (97%) rename 数据库/MySQL/{系列10.md => 10 正则表查询.md} (95%) rename 数据库/MySQL/{系列11.md => 11 数学函数.md} (97%) rename 数据库/MySQL/{系列12.md => 12 索引.md} (97%) rename 数据库/MySQL/{系列2.md => 2 创建数据表.md} (98%) rename 数据库/MySQL/{系列3.md => 3 完整性约束.md} (94%) rename 数据库/MySQL/{系列4.md => 4 修改表结构.md} (96%) rename 数据库/MySQL/{系列5.md => 5 修改表数据.md} (96%) rename 数据库/MySQL/{系列6.md => 6 查询表数据.md} (95%) rename 数据库/MySQL/{系列7.md => 7 高级表查询.md} (94%) rename 数据库/MySQL/{系列8.md => 8 连接表查询.md} (94%) rename 数据库/MySQL/{系列9.md => 9 外键与查询.md} (97%) create mode 100644 数据库/MySQL/image/2021-04-23-12-41-46.png create mode 100644 数据库/MySQL/image/2021-04-23-12-46-47.png create mode 100644 数据库/MySQL/附录1 MySQL存储引擎.md create mode 100644 数据库/MySQL/附录2 MySql性能优化.md rename 数据库/Redis/{README.md => 0 README.md} (100%) rename 数据库/Redis/{Redis概述.md => 附录1 Redis概述.md} (100%) rename 数据库/Redis/{Redis持久化.md => 附录2 Redis持久化.md} (100%) create mode 100644 数据库/Redis/附录3 Redis数据结构.md diff --git a/.vscode/settings.json b/.vscode/settings.json index 86c44650..1710b354 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -78,6 +78,5 @@ "xstddef": "cpp", "xtr1common": "cpp", "xutility": "cpp" - }, - "python.pythonPath": "D:\\anaconda\\envs\\ml\\python.exe" + } } \ No newline at end of file diff --git a/C++/面试/19 内存对齐.md b/C++/面试/19 内存对齐.md index 5e92c4e4..240fad45 100644 --- a/C++/面试/19 内存对齐.md +++ b/C++/面试/19 内存对齐.md @@ -1,5 +1,3 @@ - - ## 概述 ### 概念 diff --git a/Tensorflow/TensorFlow2.0/11 联邦学习.ipynb b/Tensorflow/TensorFlow2.0/11 联邦学习.ipynb index e69de29b..0f4ad8d2 100644 --- a/Tensorflow/TensorFlow2.0/11 联邦学习.ipynb +++ b/Tensorflow/TensorFlow2.0/11 联邦学习.ipynb @@ -0,0 +1,125 @@ +{ + "metadata": { + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8-final" + }, + "orig_nbformat": 2, + "kernelspec": { + "name": "python388jvsc74a57bd05ef0042cb263260037aa2928643ae94e240dd3afaec7872ebebe4f07619ddd0c", + "display_name": "Python 3.8.8 64-bit ('ml': conda)" + } + }, + "nbformat": 4, + "nbformat_minor": 2, + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Downloading data from https://storage.googleapis.com/tff-datasets-public/fed_emnist_digitsonly.tar.bz2\n", + "97402880/97398400 [==============================] - 6s 0us/step\n", + "WARNING:tensorflow:AutoGraph could not transform . at 0x0000016F610DF820> and will run it as-is.\n", + "Please report this to the TensorFlow team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output.\n", + "Cause: module 'gast' has no attribute 'Index'\n", + "To silence this warning, decorate the function with @tf.autograph.experimental.do_not_convert\n", + "WARNING: AutoGraph could not transform . at 0x0000016F610DF820> and will run it as-is.\n", + "Please report this to the TensorFlow team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output.\n", + "Cause: module 'gast' has no attribute 'Index'\n", + "To silence this warning, decorate the function with @tf.autograph.experimental.do_not_convert\n", + "WARNING:tensorflow:AutoGraph could not transform . at 0x0000016F610DD940> and will run it as-is.\n", + "Please report this to the TensorFlow team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output.\n", + "Cause: module 'gast' has no attribute 'Index'\n", + "To silence this warning, decorate the function with @tf.autograph.experimental.do_not_convert\n", + "WARNING: AutoGraph could not transform . at 0x0000016F610DD940> and will run it as-is.\n", + "Please report this to the TensorFlow team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output.\n", + "Cause: module 'gast' has no attribute 'Index'\n", + "To silence this warning, decorate the function with @tf.autograph.experimental.do_not_convert\n", + "WARNING:tensorflow:AutoGraph could not transform . at 0x0000016F6231CB80> and will run it as-is.\n", + "Please report this to the TensorFlow team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output.\n", + "Cause: module 'gast' has no attribute 'Index'\n", + "To silence this warning, decorate the function with @tf.autograph.experimental.do_not_convert\n", + "WARNING: AutoGraph could not transform . at 0x0000016F6231CB80> and will run it as-is.\n", + "Please report this to the TensorFlow team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output.\n", + "Cause: module 'gast' has no attribute 'Index'\n", + "To silence this warning, decorate the function with @tf.autograph.experimental.do_not_convert\n" + ] + }, + { + "output_type": "error", + "ename": "TypeError", + "evalue": "from_keras_model() got an unexpected keyword argument 'dummy_batch'", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 29\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 30\u001b[0m \u001b[1;31m# Simulate a few rounds of training with the selected client devices.\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 31\u001b[1;33m trainer = tff.learning.build_federated_averaging_process(\n\u001b[0m\u001b[0;32m 32\u001b[0m \u001b[0mmodel_fn\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 33\u001b[0m client_optimizer_fn=lambda: tf.keras.optimizers.SGD(0.1))\n", + "\u001b[1;32mD:\\anaconda\\envs\\ml\\lib\\site-packages\\tensorflow_federated\\python\\learning\\federated_averaging.py\u001b[0m in \u001b[0;36mbuild_federated_averaging_process\u001b[1;34m(model_fn, client_optimizer_fn, server_optimizer_fn, client_weight_fn, broadcast_process, aggregation_process, model_update_aggregation_factory, use_experimental_simulation_loop)\u001b[0m\n\u001b[0;32m 221\u001b[0m use_experimental_simulation_loop)\n\u001b[0;32m 222\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 223\u001b[1;33m return optimizer_utils.build_model_delta_optimizer_process(\n\u001b[0m\u001b[0;32m 224\u001b[0m \u001b[0mmodel_fn\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 225\u001b[0m \u001b[0mmodel_to_client_delta_fn\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mclient_fed_avg\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mD:\\anaconda\\envs\\ml\\lib\\site-packages\\tensorflow_federated\\python\\learning\\framework\\optimizer_utils.py\u001b[0m in \u001b[0;36mbuild_model_delta_optimizer_process\u001b[1;34m(model_fn, model_to_client_delta_fn, server_optimizer_fn, broadcast_process, aggregation_process, model_update_aggregation_factory)\u001b[0m\n\u001b[0;32m 608\u001b[0m \u001b[0mpy_typecheck\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcheck_callable\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mserver_optimizer_fn\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 609\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 610\u001b[1;33m \u001b[0mmodel_weights_type\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mmodel_utils\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mweights_type_from_model\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmodel_fn\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 611\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 612\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mbroadcast_process\u001b[0m \u001b[1;32mis\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mD:\\anaconda\\envs\\ml\\lib\\site-packages\\tensorflow_federated\\python\\learning\\model_utils.py\u001b[0m in \u001b[0;36mweights_type_from_model\u001b[1;34m(model)\u001b[0m\n\u001b[0;32m 98\u001b[0m \u001b[1;31m# with variables created for this model.\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 99\u001b[0m \u001b[1;32mwith\u001b[0m \u001b[0mtf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mGraph\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mas_default\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 100\u001b[1;33m \u001b[0mmodel\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mmodel\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 101\u001b[0m \u001b[0mpy_typecheck\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcheck_type\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmodel\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mmodel_lib\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mModel\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 102\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mtype_conversions\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtype_from_tensors\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mModelWeights\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfrom_model\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmodel\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32m\u001b[0m in \u001b[0;36mmodel_fn\u001b[1;34m()\u001b[0m\n\u001b[0;32m 22\u001b[0m kernel_initializer='zeros')\n\u001b[0;32m 23\u001b[0m ])\n\u001b[1;32m---> 24\u001b[1;33m return tff.learning.from_keras_model(\n\u001b[0m\u001b[0;32m 25\u001b[0m \u001b[0mmodel\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 26\u001b[0m \u001b[0mdummy_batch\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0msample_batch\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mTypeError\u001b[0m: from_keras_model() got an unexpected keyword argument 'dummy_batch'" + ] + } + ], + "source": [ + "import tensorflow as tf\n", + "import tensorflow_federated as tff\n", + "\n", + "# Load simulation data.\n", + "source, _ = tff.simulation.datasets.emnist.load_data()\n", + "def client_data(n):\n", + " return source.create_tf_dataset_for_client(source.client_ids[n]).map(\n", + " lambda e: (tf.reshape(e['pixels'], [-1]), e['label'])\n", + " ).repeat(10).batch(20)\n", + "\n", + "# Pick a subset of client devices to participate in training.\n", + "train_data = [client_data(n) for n in range(3)]\n", + "\n", + "# Grab a single batch of data so that TFF knows what data looks like.\n", + "sample_batch = tf.nest.map_structure(\n", + " lambda x: x.numpy(), iter(train_data[0]).next())\n", + "\n", + "# Wrap a Keras model for use with TFF.\n", + "def model_fn():\n", + " model = tf.keras.models.Sequential([\n", + " tf.keras.layers.Dense(10, tf.nn.softmax, input_shape=(784,),\n", + " kernel_initializer='zeros')\n", + " ])\n", + " return tff.learning.from_keras_model(\n", + " model,\n", + " dummy_batch=sample_batch,\n", + " loss=tf.keras.losses.SparseCategoricalCrossentropy(),\n", + " metrics=[tf.keras.metrics.SparseCategoricalAccuracy()])\n", + "\n", + "# Simulate a few rounds of training with the selected client devices.\n", + "trainer = tff.learning.build_federated_averaging_process(\n", + " model_fn,\n", + " client_optimizer_fn=lambda: tf.keras.optimizers.SGD(0.1))\n", + "state = trainer.initialize()\n", + "for _ in range(5):\n", + " state, metrics = trainer.next(state, train_data)\n", + " print (metrics.loss)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ] +} \ No newline at end of file diff --git a/Tensorflow/TensorFlow2.0/5 数据流水线.ipynb b/Tensorflow/TensorFlow2.0/5 数据流水线.ipynb index f8730c32..a71b0e2e 100644 --- a/Tensorflow/TensorFlow2.0/5 数据流水线.ipynb +++ b/Tensorflow/TensorFlow2.0/5 数据流水线.ipynb @@ -135,6 +135,17 @@ "cell_type": "markdown", "metadata": {} }, + { + "source": [ + "## 加载多个大CSV的方案\n", + "\n", + "### 1 使用generator生成器。利用pandas或者numpy的方式生成数据。\n", + "### 2 使用record格式。利用TensorFlow对数据预处理,存成record格式。\n", + "### 3 使用text格式。利用TensorFlow直接读取多个csv文件,逐行进行分割。" + ], + "cell_type": "markdown", + "metadata": {} + }, { "source": [ "# 5 tf.data.dataset常用方法说明" @@ -225,6 +236,306 @@ "print(dataset.element_spec)" ] }, + { + "source": [ + "# 6 tf.data.dataset常用方法实例" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "source": [ + "## Dataset.repeat()使用" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "import tensorflow as tf \n", + "titanic_file = tf.keras.utils.get_file(\"train.csv\", \"https://storage.googleapis.com/tf-datasets/titanic/train.csv\")\n", + "titanic_lines = tf.data.TextLineDataset(titanic_file)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt \n", + "def plot_batch_sizes(ds):\n", + " batch_sizes = [batch.shape[0] for batch in ds]\n", + " plt.bar(range(len(batch_sizes)), batch_sizes)\n", + " plt.xlabel('Batch number')\n", + " plt.ylabel('Batch size')" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": "
", + "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n 2021-04-22T23:18:21.879555\r\n image/svg+xml\r\n \r\n \r\n Matplotlib v3.3.4, https://matplotlib.org/\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# 应用Dataset.repeat()不带参数的转换将无限期地重复输入。\n", + "\n", + "# 该Dataset.repeat转换会将其参数没有信号一个时代的结束和下一个时代的开始。因此,Dataset.batch应用后将Dataset.repeat产生跨越历元边界的批处理:\n", + "titanic_batches = titanic_lines.repeat(3).batch(128)\n", + "plot_batch_sizes(titanic_batches)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": "
", + "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n 2021-04-22T23:18:26.240985\r\n image/svg+xml\r\n \r\n \r\n Matplotlib v3.3.4, https://matplotlib.org/\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "# 如果您需要清晰的时间间隔,请Dataset.batch在重复之前:\n", + "\n", + "titanic_batches = titanic_lines.batch(128).repeat(3)\n", + "plot_batch_sizes(titanic_batches)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 如果您想在每个时期结束时执行自定义计算(例如收集统计信息),那么最简单的方法是在每个时期重新开始数据集迭代:\n", + "epochs = 3\n", + "dataset = titanic_lines.batch(128)\n", + "\n", + "for epoch in range(epochs):\n", + " for batch in dataset:\n", + " print(batch.shape)\n", + " print(\"End of epoch: \", epoch)" + ] + }, + { + "source": [ + "## Dataset.shuffle()" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "" + ] + }, + "metadata": {}, + "execution_count": 9 + } + ], + "source": [ + "lines = tf.data.TextLineDataset(titanic_file)\n", + "counter = tf.data.experimental.Counter()\n", + "\n", + "dataset = tf.data.Dataset.zip((counter, lines))\n", + "dataset = dataset.shuffle(buffer_size=100)\n", + "dataset = dataset.batch(20)\n", + "dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "[ 89 94 70 48 66 32 43 57 104 81 107 61 13 26 63 39 99 6\n 80 1]\n" + ] + } + ], + "source": [ + "n,line_batch = next(iter(dataset))\n", + "print(n.numpy())" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Here are the item ID's near the epoch boundary:\n\n[580 603 315 577 590 515 564 625 472 526]\n[594 543 532 595 614 537 530 531 388 607]\n[557 411 456 519 612 490 615 476]\n[20 58 88 90 69 28 15 60 57 21]\n[ 18 103 30 67 26 36 56 2 112 25]\n" + ] + } + ], + "source": [ + "# Dataset.shuffle直到shuffle缓冲区为空,才通知信号一个纪元的结束。因此,在重复执行之前进行随机播放会显示一个历元的每个元素,然后再移至下一个:\n", + "\n", + "dataset = tf.data.Dataset.zip((counter, lines))\n", + "shuffled = dataset.shuffle(buffer_size=100).batch(10).repeat(2)\n", + "\n", + "print(\"Here are the item ID's near the epoch boundary:\\n\")\n", + "for n, line_batch in shuffled.skip(60).take(5):\n", + " print(n.numpy())" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "" + ] + }, + "metadata": {}, + "execution_count": 12 + }, + { + "output_type": "display_data", + "data": { + "text/plain": "
", + "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n 2021-04-22T23:21:57.100182\r\n image/svg+xml\r\n \r\n \r\n Matplotlib v3.3.4, https://matplotlib.org/\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + } + } + ], + "source": [ + "shuffle_repeat = [n.numpy().mean() for n, line_batch in shuffled]\n", + "plt.plot(shuffle_repeat, label=\"shuffle().repeat()\")\n", + "plt.ylabel(\"Mean item ID\")\n", + "plt.legend()" + ] + }, + { + "source": [ + "## Dataset.map(f)" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "# 该Dataset.map(f)变换通过施加一个给定的函数产生一个新的数据集f的输入数据集的每个元素。它基于 map()函数式编程语言中通常应用于列表(和其他结构)的功能。该函数f接受tf.Tensor表示输入中单个元素的tf.Tensor对象,并返回将表示新数据集中单个元素的对象。它的实现使用标准的TensorFlow操作将一个元素转换为另一个元素。" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "output_type": "error", + "ename": "NameError", + "evalue": "name 'flowers_root' is not defined", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mlist_ds\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mDataset\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mlist_files\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mflowers_root\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;34m'*/*'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mNameError\u001b[0m: name 'flowers_root' is not defined" + ] + } + ], + "source": [ + "list_ds = tf.data.Dataset.list_files(str(flowers_root/'*/*'))" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "# 编写一个操作数据集元素的函数。\n", + "# Reads an image from a file, decodes it into a dense tensor, and resizes it\n", + "# to a fixed shape.\n", + "def parse_image(filename):\n", + " parts = tf.strings.split(filename, os.sep)\n", + " label = parts[-2]\n", + "\n", + " image = tf.io.read_file(filename)\n", + " image = tf.image.decode_jpeg(image)\n", + " image = tf.image.convert_image_dtype(image, tf.float32)\n", + " image = tf.image.resize(image, [128, 128])\n", + " return image, label" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "output_type": "error", + "ename": "NameError", + "evalue": "name 'list_ds' is not defined", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mfile_path\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnext\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0miter\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlist_ds\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 2\u001b[0m \u001b[0mimage\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlabel\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mparse_image\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfile_path\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mshow\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimage\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlabel\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[0mplt\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfigure\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mNameError\u001b[0m: name 'list_ds' is not defined" + ] + } + ], + "source": [ + "file_path = next(iter(list_ds))\n", + "image, label = parse_image(file_path)\n", + "\n", + "def show(image, label):\n", + " plt.figure()\n", + " plt.imshow(image)\n", + " plt.title(label.numpy().decode('utf-8'))\n", + " plt.axis('off')\n", + "\n", + "show(image, label)" + ] + }, { "cell_type": "code", "execution_count": null, diff --git a/Tensorflow/TensorFlow2.0/5.2 加载generator数据.ipynb b/Tensorflow/TensorFlow2.0/5.2 加载generator数据.ipynb index e69de29b..1000e932 100644 --- a/Tensorflow/TensorFlow2.0/5.2 加载generator数据.ipynb +++ b/Tensorflow/TensorFlow2.0/5.2 加载generator数据.ipynb @@ -0,0 +1,90 @@ +{ + "metadata": { + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8-final" + }, + "orig_nbformat": 2, + "kernelspec": { + "name": "python388jvsc74a57bd05ef0042cb263260037aa2928643ae94e240dd3afaec7872ebebe4f07619ddd0c", + "display_name": "Python 3.8.8 64-bit ('ml': conda)" + } + }, + "nbformat": 4, + "nbformat_minor": 2, + "cells": [ + { + "source": [ + "# 使用 Python generator 加载数据" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import tensorflow as tf" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "def count(stop):\n", + " i = 0\n", + " while i" + ] + }, + "metadata": {}, + "execution_count": 3 + } + ], + "source": [ + "# 使用TFRecordDataset加载二进制的数据\n", + "dataset = tf.data.TFRecordDataset(filenames = [fsns_test_file])\n", + "dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "bytes_list {\n", + " value: \"Rue Perreyon\"\n", + "}" + ] + }, + "metadata": {}, + "execution_count": 4 + } + ], + "source": [ + "raw_example = next(iter(dataset))\n", + "parsed = tf.train.Example.FromString(raw_example.numpy())\n", + "\n", + "parsed.features.feature['image/text']" + ] + }, + { + "source": [ + "# 2 写入tf example消息格式\n", + "第二种加载大数据的方法\n", + "\n", + "将原来的数据处理成tfrecord格式进行加载。\n", + "\n", + "## 数据类型\n", + "### tf.train.BytesList(可强制转换自以下类型)\n", + "* string\n", + "* byte\n", + "### tf.train.FloatList(可强制转换自以下类型)\n", + "* float (float32)\n", + "* double (float64)\n", + "### tf.train.Int64List(可强制转换自以下类型)\n", + "* bool\n", + "* enum\n", + "* int32\n", + "* uint32\n", + "* int64\n", + "* uint64" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "import tensorflow as tf\n", + "\n", + "import numpy as np\n", + "import IPython.display as display" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "# The following functions can be used to convert a value to a type compatible\n", + "# with tf.Example.\n", + "# 定义一系列格式转换函数\n", + "\n", + "def _bytes_feature(value):\n", + " \"\"\"Returns a bytes_list from a string / byte.\"\"\"\n", + " if isinstance(value, type(tf.constant(0))):\n", + " value = value.numpy() # BytesList won't unpack a string from an EagerTensor.\n", + " return tf.train.Feature(bytes_list=tf.train.BytesList(value=[value]))\n", + "\n", + "def _float_feature(value):\n", + " \"\"\"Returns a float_list from a float / double.\"\"\"\n", + " return tf.train.Feature(float_list=tf.train.FloatList(value=[value]))\n", + "\n", + "def _int64_feature(value):\n", + " \"\"\"Returns an int64_list from a bool / enum / int / uint.\"\"\"\n", + " return tf.train.Feature(int64_list=tf.train.Int64List(value=[value]))" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "bytes_list {\n value: \"test_string\"\n}\n\nbytes_list {\n value: \"test_bytes\"\n}\n\nfloat_list {\n value: 2.7182817\n}\n\nint64_list {\n value: 1\n}\n\nint64_list {\n value: 1\n}\n\n" + ] + } + ], + "source": [ + "print(_bytes_feature(b'test_string'))\n", + "print(_bytes_feature(u'test_bytes'.encode('utf-8')))\n", + "\n", + "print(_float_feature(np.exp(1)))\n", + "\n", + "print(_int64_feature(True))\n", + "print(_int64_feature(1))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "b'\\x12\\x06\\n\\x04T\\xf8-@'" + ] + }, + "metadata": {}, + "execution_count": 9 + } + ], + "source": [ + "# serializetostring()格式化为二进制字符串\n", + "feature = _float_feature(np.exp(1))\n", + "\n", + "feature.SerializeToString()" + ] + }, + { + "source": [ + "# 3 读取tf example 消息格式" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ] +} \ No newline at end of file diff --git a/Tensorflow/TensorFlow2.0/5.5 加载tf.TextLineReader数据.ipynb b/Tensorflow/TensorFlow2.0/5.5 加载tf.TextLineReader数据.ipynb index e69de29b..30149cb2 100644 --- a/Tensorflow/TensorFlow2.0/5.5 加载tf.TextLineReader数据.ipynb +++ b/Tensorflow/TensorFlow2.0/5.5 加载tf.TextLineReader数据.ipynb @@ -0,0 +1,171 @@ +{ + "metadata": { + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8-final" + }, + "orig_nbformat": 2, + "kernelspec": { + "name": "python388jvsc74a57bd05ef0042cb263260037aa2928643ae94e240dd3afaec7872ebebe4f07619ddd0c", + "display_name": "Python 3.8.8 64-bit ('ml': conda)" + } + }, + "nbformat": 4, + "nbformat_minor": 2, + "cells": [ + { + "source": [ + "# 1使用tf.TextLineReader" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "import tensorflow as tf " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "directory_url = 'https://storage.googleapis.com/download.tensorflow.org/data/illiad/'\n", + "file_names = ['cowper.txt', 'derby.txt', 'butler.txt']\n", + "\n", + "file_paths = [\n", + " tf.keras.utils.get_file(file_name, directory_url + file_name)\n", + " for file_name in file_names\n", + "]" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "b\"\\xef\\xbb\\xbfAchilles sing, O Goddess! Peleus' son;\"\nb'His wrath pernicious, who ten thousand woes'\nb\"Caused to Achaia's host, sent many a soul\"\nb'Illustrious into Ades premature,'\nb'And Heroes gave (so stood the will of Jove)'\n" + ] + } + ], + "source": [ + "# 使用textlinedataset一次读取某个文件中的一行\n", + "dataset = tf.data.TextLineDataset(file_paths)\n", + "for line in dataset.take(5):\n", + " print(line.numpy())" + ] + }, + { + "source": [ + "# 2 使用interleave进行读取?" + ], + "cell_type": "markdown", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "\nb\"\\xef\\xbb\\xbfAchilles sing, O Goddess! Peleus' son;\"\nb\"\\xef\\xbb\\xbfOf Peleus' son, Achilles, sing, O Muse,\"\nb'\\xef\\xbb\\xbfSing, O goddess, the anger of Achilles son of Peleus, that brought'\n\nb'His wrath pernicious, who ten thousand woes'\nb'The vengeance, deep and deadly; whence to Greece'\nb'countless ills upon the Achaeans. Many a brave soul did it send'\n\nb\"Caused to Achaia's host, sent many a soul\"\nb'Unnumbered ills arose; which many a soul'\nb'hurrying down to Hades, and many a hero did it yield a prey to dogs and'\n" + ] + } + ], + "source": [ + "# 要在文件之间替换,请使用Dataset.interleave。这样可以更轻松地将文件混在一起。这是每种翻译的第一,第二和第三行:\n", + "# 这种方法可以一次读取多个文件的数据,并混合起来诶!!!666\n", + "files_ds = tf.data.Dataset.from_tensor_slices(file_paths)\n", + "lines_ds = files_ds.interleave(tf.data.TextLineDataset, cycle_length=3)\n", + "\n", + "for i, line in enumerate(lines_ds.take(9)):\n", + " if i % 3 == 0:\n", + " print()\n", + " print(line.numpy())" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Downloading data from https://storage.googleapis.com/tf-datasets/titanic/train.csv\n", + "32768/30874 [===============================] - 0s 10us/step\n", + "b'survived,sex,age,n_siblings_spouses,parch,fare,class,deck,embark_town,alone'\n", + "b'0,male,22.0,1,0,7.25,Third,unknown,Southampton,n'\n", + "b'1,female,38.0,1,0,71.2833,First,C,Cherbourg,n'\n", + "b'1,female,26.0,0,0,7.925,Third,unknown,Southampton,y'\n", + "b'1,female,35.0,1,0,53.1,First,C,Southampton,n'\n", + "b'0,male,28.0,0,0,8.4583,Third,unknown,Queenstown,y'\n", + "b'0,male,2.0,3,1,21.075,Third,unknown,Southampton,n'\n", + "b'1,female,27.0,0,2,11.1333,Third,unknown,Southampton,n'\n", + "b'1,female,14.0,1,0,30.0708,Second,unknown,Cherbourg,n'\n", + "b'1,female,4.0,1,1,16.7,Third,G,Southampton,n'\n" + ] + } + ], + "source": [ + "# TextLineDataset产生每个文件的每一行,这可能是不希望的,例如,如果文件以标题行开头或包含注释。可以使用Dataset.skip()或 Dataset.filter()转换删除这些行。在这里,您跳过第一行,然后过滤以仅查找幸存者。\n", + "titanic_file = tf.keras.utils.get_file(\"train.csv\", \"https://storage.googleapis.com/tf-datasets/titanic/train.csv\")\n", + "titanic_lines = tf.data.TextLineDataset(titanic_file)\n", + "\n", + "for line in titanic_lines.take(10):\n", + " print(line.numpy())" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "b'1,female,38.0,1,0,71.2833,First,C,Cherbourg,n'\nb'1,female,26.0,0,0,7.925,Third,unknown,Southampton,y'\nb'1,female,35.0,1,0,53.1,First,C,Southampton,n'\nb'1,female,27.0,0,2,11.1333,Third,unknown,Southampton,n'\nb'1,female,14.0,1,0,30.0708,Second,unknown,Cherbourg,n'\nb'1,female,4.0,1,1,16.7,Third,G,Southampton,n'\nb'1,male,28.0,0,0,13.0,Second,unknown,Southampton,y'\nb'1,female,28.0,0,0,7.225,Third,unknown,Cherbourg,y'\nb'1,male,28.0,0,0,35.5,First,A,Southampton,y'\nb'1,female,38.0,1,5,31.3875,Third,unknown,Southampton,n'\n" + ] + } + ], + "source": [ + "def survived(line):\n", + " return tf.not_equal(tf.strings.substr(line, 0, 1), \"0\")\n", + "\n", + "survivors = titanic_lines.skip(1).filter(survived)\n", + "\n", + "for line in survivors.take(10):\n", + " print(line.numpy())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ] +} \ No newline at end of file diff --git a/工作日志/2021年4月21日-今日计划.md b/工作日志/2021年4月21日-今日计划.md index 29ed7892..3f591b18 100644 --- a/工作日志/2021年4月21日-今日计划.md +++ b/工作日志/2021年4月21日-今日计划.md @@ -19,7 +19,7 @@ ### TensorFlow - [x] 复习教程(包括tutorial、API、code) -- [ ] TensorFlow 数据流水线技术 +- [x] TensorFlow 数据流水线技术 - [ ] 学习TensorFlow框架并应用 - [ ] 学习TensorFlow federated框架并应用 diff --git a/工作日志/2021年4月8日-简历投递记录.md b/工作日志/2021年4月8日-简历投递记录.md index 68b23286..beee7275 100644 --- a/工作日志/2021年4月8日-简历投递记录.md +++ b/工作日志/2021年4月8日-简历投递记录.md @@ -1,7 +1,7 @@ > 一期简历 -## 腾讯实习 +## ~~腾讯实习~~ * 岗位:后端开发——微信事业群 * 技术要求: @@ -60,6 +60,7 @@ - [x] 简历投递https://jobs.bytedance.com/campus/position/application - [x] 2021-04-11 15:00 1面。北京字节跳动。 - [x] 2021-04-14 11:00 3面。 + - [ ] 结果未知,生死未卜 ## 阿里巴巴 * 岗位:研发工程师C++ @@ -74,6 +75,7 @@ - [x] 素质测评 - [x] 2021年04月09日 19:00 - 2021年04月09日 20:00。完球了没人捞我的专利,待会问问师兄。 - [x] 2021年4月19日 16:00 一面。终于还是来了。还是要好好准备的。把所有的问题复习一遍。估计很难进。 + - [ ] 2021年4月23日 15:00 三面。 > 二期简历 diff --git a/数据库/MySQL/系列0-原理.md b/数据库/MySQL/0 MySQL概述.md similarity index 100% rename from 数据库/MySQL/系列0-原理.md rename to 数据库/MySQL/0 MySQL概述.md diff --git a/数据库/MySQL/系列1.md b/数据库/MySQL/1 创建数据库.md similarity index 97% rename from 数据库/MySQL/系列1.md rename to 数据库/MySQL/1 创建数据库.md index 015daf4c..20ffaef5 100644 --- a/数据库/MySQL/系列1.md +++ b/数据库/MySQL/1 创建数据库.md @@ -1,4 +1,4 @@ -系列一数据库数据表的创建等基本操作 +# 系列一 数据库数据表的创建等基本操作 ```sql #注释内容(与python很像) -- 也为注释内容 diff --git a/数据库/MySQL/系列10.md b/数据库/MySQL/10 正则表查询.md similarity index 95% rename from 数据库/MySQL/系列10.md rename to 数据库/MySQL/10 正则表查询.md index 9deb02f7..2112b18d 100644 --- a/数据库/MySQL/系列10.md +++ b/数据库/MySQL/10 正则表查询.md @@ -1,4 +1,7 @@ -系列十子查询 &正则表达式查询 &运算符的使用 +# 系列十 子查询 &正则表达式查询 &运算符的使用 +> * 子查询 +> * 正则表达式查询 +> * 运算符的使用 ```sql #第四十二课时 --子查询的使用 diff --git a/数据库/MySQL/系列11.md b/数据库/MySQL/11 数学函数.md similarity index 97% rename from 数据库/MySQL/系列11.md rename to 数据库/MySQL/11 数学函数.md index 257b9790..b7b9ec42 100644 --- a/数据库/MySQL/系列11.md +++ b/数据库/MySQL/11 数学函数.md @@ -1,4 +1,10 @@ 系列十一函数与表达式的应用 + +> * 数学函数 +> * 字符串函数 +> * 日期时间函数 +> * 条件判断函数和系统函数 + ```sql #第四十六课时 --数学函数库中的函数 diff --git a/数据库/MySQL/系列12.md b/数据库/MySQL/12 索引.md similarity index 97% rename from 数据库/MySQL/系列12.md rename to 数据库/MySQL/12 索引.md index 96769bae..90daddd5 100644 --- a/数据库/MySQL/系列12.md +++ b/数据库/MySQL/12 索引.md @@ -1,4 +1,7 @@ 系列十二索引的使用和数据库的管理 + +> * 索引的使用 +> * 管理数据库 ```sql #第五十一课时 --索引的使用 diff --git a/数据库/MySQL/系列2.md b/数据库/MySQL/2 创建数据表.md similarity index 98% rename from 数据库/MySQL/系列2.md rename to 数据库/MySQL/2 创建数据表.md index 07ddfd47..6424cf41 100644 --- a/数据库/MySQL/系列2.md +++ b/数据库/MySQL/2 创建数据表.md @@ -1,4 +1,4 @@ -数据类型的测试 +# 系列二 数据类型的测试 ```sql # 第八课时数据测试 diff --git a/数据库/MySQL/系列3.md b/数据库/MySQL/3 完整性约束.md similarity index 94% rename from 数据库/MySQL/系列3.md rename to 数据库/MySQL/3 完整性约束.md index be099cf7..3a4c27ce 100644 --- a/数据库/MySQL/系列3.md +++ b/数据库/MySQL/3 完整性约束.md @@ -1,4 +1,10 @@ -系列三完整性约束条件 +# 3 系列三 完整性约束条件 + +> * 主键约束 +> * 自增长 +> * 默认值和非空约束 +> * 唯一约束 + ```sql #第十二课时测试主键长度 diff --git a/数据库/MySQL/系列4.md b/数据库/MySQL/4 修改表结构.md similarity index 96% rename from 数据库/MySQL/系列4.md rename to 数据库/MySQL/4 修改表结构.md index c9f1e8ff..7b0692e9 100644 --- a/数据库/MySQL/系列4.md +++ b/数据库/MySQL/4 修改表结构.md @@ -1,4 +1,9 @@ -系列四数据表结构的相关操作 +# 系类四 数据表结构的相关操作 +> * 修改表名称 +> * 添加删除字段 +> * 修改字段和完整性约束条件 + + ```sql #第十七课时修改表名称 diff --git a/数据库/MySQL/系列5.md b/数据库/MySQL/5 修改表数据.md similarity index 96% rename from 数据库/MySQL/系列5.md rename to 数据库/MySQL/5 修改表数据.md index 08a7011e..b7d24cbf 100644 --- a/数据库/MySQL/系列5.md +++ b/数据库/MySQL/5 修改表数据.md @@ -1,4 +1,7 @@ -系列五 对表中数据的操作 +# 系列五 对表中数据的操作 + +> * 插入记录 +> * 更新和删除记录 ```sql #第二十四课时插入记录 --插入记录的操作 diff --git a/数据库/MySQL/系列6.md b/数据库/MySQL/6 查询表数据.md similarity index 95% rename from 数据库/MySQL/系列6.md rename to 数据库/MySQL/6 查询表数据.md index b9600e1d..5396ce94 100644 --- a/数据库/MySQL/系列6.md +++ b/数据库/MySQL/6 查询表数据.md @@ -1,4 +1,9 @@ -系列六表达式与查询 +# 系列六 表达式与查询 +> * 查询表达式 +> * 带条件的查询 +> * 范围查询 +> * 模糊查询 +> * 逻辑运算符查询 ```sql --SELECT 之后表示要查询的字段 --FROM 之后表示要查询的数据库和表的名称 diff --git a/数据库/MySQL/系列7.md b/数据库/MySQL/7 高级表查询.md similarity index 94% rename from 数据库/MySQL/系列7.md rename to 数据库/MySQL/7 高级表查询.md index 3dd62aaa..b8cb7f04 100644 --- a/数据库/MySQL/系列7.md +++ b/数据库/MySQL/7 高级表查询.md @@ -1,4 +1,9 @@ -系列七高级的查询功能 +# 系列七 高级的查询功能 +> * 分组查询group by +> * 聚合函数avg +> * 分组筛选having +> * 结果排序order by +> * 限制数量limit ```sql #第三十一课时 diff --git a/数据库/MySQL/系列8.md b/数据库/MySQL/8 连接表查询.md similarity index 94% rename from 数据库/MySQL/系列8.md rename to 数据库/MySQL/8 连接表查询.md index 0f658b2a..1ec8db03 100644 --- a/数据库/MySQL/系列8.md +++ b/数据库/MySQL/8 连接表查询.md @@ -1,4 +1,7 @@ -系列八条件语句在各个部分的应用更新,插入,删除记录的中的数据 +# 系列八 条件语句在各个部分的应用 +> 更新,插入,删除记录的中的数据 +> * 条件更新、条件删除 +> * 连接查询 ```sql #第三十六课时 --条件更新 diff --git a/数据库/MySQL/系列9.md b/数据库/MySQL/9 外键与查询.md similarity index 97% rename from 数据库/MySQL/系列9.md rename to 数据库/MySQL/9 外键与查询.md index 1a0aabc8..544a88a2 100644 --- a/数据库/MySQL/系列9.md +++ b/数据库/MySQL/9 外键与查询.md @@ -1,4 +1,7 @@ -系列九外键的相关操作 +# 系列九 外键的相关操作 +> * 外键操作 +> * 外键的创建、删除 +> * 联合查询 ```sql #第三十九课时 --外键操作 diff --git a/数据库/MySQL/image/2021-04-23-12-41-46.png b/数据库/MySQL/image/2021-04-23-12-41-46.png new file mode 100644 index 0000000000000000000000000000000000000000..c2838990d042f1041871ba8a91f5ee99246cc070 GIT binary patch literal 134213 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

Zggp8?olK;uMKxVRvu@R=mm#6sam3*Rd_A)Lk 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%0A%TT|_E_ow3;2BaO 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∨Hw>fHy~G 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 literal 0 HcmV?d00001 diff --git a/数据库/MySQL/附录1 MySQL存储引擎.md b/数据库/MySQL/附录1 MySQL存储引擎.md new file mode 100644 index 00000000..617148f9 --- /dev/null +++ b/数据库/MySQL/附录1 MySQL存储引擎.md @@ -0,0 +1,163 @@ +# MySQL存储引擎 + +## 1 概述 +### 存储引擎 + +1. MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。 + +2. 例如,如果你在研究大量的临时数据,你也许需要使用内存MySQL存储引擎。内存存储引擎能够在内存中存储所有的表格数据。又或者,你也许需要一个支持事务处理的数据库(以确保事务处理不成功时数据的回退能力)。 +3. 这些不同的技术以及配套的相关功能在 MySQL中被称作存储引擎(也称作表类型)。 MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。你可以选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储你的信息、如何检索这些信息以及你需要你的数据结合什么性能和功能的时候为你提供最大的灵活性。 + +### MySQL支持的存储引擎 +![](image/2021-04-23-12-41-46.png) + + +### 存储引擎对比 + +| 功  能 | MYISAM | Memory | InnoDB | Archive | +|--------|--------|--------|--------|---------| +| 存储限制 | 256TB | RAM | 64TB | None | +| 支持事物 | No | No | Yes | No | +| 支持全文索引 | Yes | No | No | No | +| 支持数索引 | Yes | Yes | Yes | No | +| 支持哈希索引 | No | Yes | No | No | +| 支持数据缓存 | No | N/A | Yes | No | +| 支持外键 | No | No | Yes | No | + + + +## 2.1 MyISAM + +### 存储引擎的实现 +使用这个存储引擎,每个MyISAM在磁盘上存储成三个文件。 + +1. frm文件:存储表的定义数据 +2. MYD文件:存放表具体记录的数据 +3. MYI文件:存储索引 + +frm和MYI可以存放在不同的目录下。MYI文件用来存储索引,但仅保存记录所在页的指针,索引的结构是B+树结构。下面这张图就是MYI文件保存的机制: + +![](image/2021-04-23-12-46-47.png) + +从这张图可以发现,这个存储引擎通过MYI的B+树结构来查找记录页,再根据记录页查找记录。并且支持全文索引、B树索引和数据压缩。 + +### 支持数据的类型 + +1. 静态固定长度表。这种方式的优点在于存储速度非常快,容易发生缓存,而且表发生损坏后也容易修复。缺点是占空间。这也是默认的存储格式。 +2. 动态可变长表。优点是节省空间,但是一旦出错恢复起来比较麻烦。 +3. 压缩表。上面说到支持数据压缩,说明肯定也支持这个格式。在数据文件发生错误时候,可以使用check table工具来检查,而且还可以使用repair table工具来恢复。 + +### 存储引擎的特点 +有一个重要的特点那就是不支持事务,但是这也意味着他的存储速度更快,如果你的读写操作允许有错误数据的话,只是追求速度,可以选择这个存储引擎。 + +MyISAM存储引擎 + +MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事物。MyISAM主要特性有: + +1. 大文件(达到63位文件长度)在支持大文件的文件系统和操作系统上被支持 + +2. 当把删除和更新及插入操作混合使用的时候,动态尺寸的行产生更少碎片。这要通过合并相邻被删除的块,以及若下一个块被删除,就扩展到下一块自动完成 + +3. 每个MyISAM表最大索引数是64,这可以通过重新编译来改变。每个索引最大的列数是16 + +4. 最大的键长度是1000字节,这也可以通过编译来改变,对于键长度超过250字节的情况,一个超过1024字节的键将被用上 + +5. BLOB和TEXT列可以被索引 + +6. NULL被允许在索引的列中,这个值占每个键的0~1个字节 + +7. 所有数字键值以高字节优先被存储以允许一个更高的索引压缩 + +8. 每个MyISAM类型的表都有一个AUTO_INCREMENT的内部列,当INSERT和UPDATE操作的时候该列被更新,同时AUTO_INCREMENT列将被刷新。所以说,MyISAM类型表的AUTO_INCREMENT列更新比InnoDB类型的AUTO_INCREMENT更快 + +9. 可以把数据文件和索引文件放在不同目录 + +10. 每个字符列可以有不同的字符集 + +11. 有VARCHAR的表可以固定或动态记录长度 + +12. VARCHAR和CHAR列可以多达64KB + +## 2.2 InnoDB + +### 存储引擎的特点 +InnoDB是默认的数据库存储引擎,他的主要特点有: +> 对于InnoDB来说,最大的特点在于支持事务。但是这是以损失效率来换取的。 +1. 可以通过自动增长列,方法是auto_increment。 +2. 支持事务。默认的事务隔离级别为可重复度,通过MVCC(并发版本控制)来实现的。 +3. 使用的锁粒度为行级锁,可以支持更高的并发; +4. 支持外键约束;外键约束其实降低了表的查询速度,但是增加了表之间的耦合度。 +5. 配合一些热备工具可以支持在线热备份; +6. 在InnoDB中存在着缓冲管理,通过缓冲池,将索引和数据全部缓存起来,加快查询的速度; +7. 对于InnoDB类型的表,其数据的物理组织形式是聚簇表。所有的数据按照主键来组织。数据和索引放在一块,都位于B+数的叶子节点上; + +### 存储引擎的实现 +当然InnoDB的存储表和索引也有下面两种形式: + +1. 使用共享表空间存储:所有的表和索引存放在同一个表空间中。 + +2. 使用多表空间存储:表结构放在frm文件,数据和索引放在IBD文件中。分区表的话,每个分区对应单独的IBD文件,分区表的定义可以查看我的其他文章。使用分区表的好处在于提升查询效率。 + +### InnoDB索引和MyISAM索引的区别: + +一是主索引的区别,InnoDB的数据文件本身就是索引文件。而MyISAM的索引和数据是分开的。 + +二是辅助索引的区别:InnoDB的辅助索引data域存储相应记录主键的值而不是地址。而MyISAM的辅助索引和主索引没有多大区别。 +### 存储引擎的特点2 + +> InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键,上图也看到了,InnoDB是默认的MySQL引擎。InnoDB主要特性有: + +1. InnoDB给MySQL提供了具有提交、回滚和崩溃恢复能力的事物安全(ACID兼容)存储引擎。InnoDB锁定在行级并且也在SELECT语句中提供一个类似Oracle的非锁定读。这些功能增加了多用户部署和性能。在SQL查询中,可以自由地将InnoDB类型的表和其他MySQL的表类型混合起来,甚至在同一个查询中也可以混合 + +2. InnoDB是为处理巨大数据量的最大性能设计。它的CPU效率可能是任何其他基于磁盘的关系型数据库引擎锁不能匹敌的 + +3. InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中缓存数据和索引而维持它自己的缓冲池。InnoDB将它的表和索引在一个逻辑表空间中,表空间可以包含数个文件(或原始磁盘文件)。这与MyISAM表不同,比如在MyISAM表中每个表被存放在分离的文件中。InnoDB表可以是任何尺寸,即使在文件尺寸被限制为2GB的操作系统上 + +4. InnoDB支持外键完整性约束,存储表中的数据时,每张表的存储都按主键顺序存放,如果没有显示在表定义时指定主键,InnoDB会为每一行生成一个6字节的ROWID,并以此作为主键 + +5. InnoDB被用在众多需要高性能的大型数据库站点上。InnoDB不创建目录,使用InnoDB时,MySQL将在MySQL数据目录下创建一个名为ibdata1的10MB大小的自动扩展数据文件,以及两个名为ib_logfile0和ib_logfile1的5MB大小的日志文件 + +## 2.3 Memory + +### 存储引擎的实现 +将数据存在内存,为了提高数据的访问速度,每一个表实际上和一个磁盘文件关联。文件是frm。 + +1. 支持的数据类型有限制,比如:不支持TEXT和BLOB类型,对于字符串类型的数据,只支持固定长度的行,VARCHAR会被自动存储为CHAR类型; +2. 支持的锁粒度为表级锁。所以,在访问量比较大时,表级锁会成为MEMORY存储引擎的瓶颈; +3. 由于数据是存放在内存中,一旦服务器出现故障,数据都会丢失; +4. 查询的时候,如果有用到临时表,而且临时表中有BLOB,TEXT类型的字段,那么这个临时表就会转化为MyISAM类型的表,性能会急剧降低; +5. 默认使用hash索引。 +6. 如果一个内部表很大,会转化为磁盘表。 + + +### 存储引擎的特点 + +MEMORY存储引擎将表中的数据存储到内存中,未查询和引用其他表数据提供快速访问。MEMORY主要特性有: + +1. MEMORY表的每个表可以有多达32个索引,每个索引16列,以及500字节的最大键长度 + +2. MEMORY存储引擎执行HASH和BTREE缩影 + +3. 可以在一个MEMORY表中有非唯一键值 + +4. MEMORY表使用一个固定的记录长度格式 + +5. MEMORY不支持BLOB或TEXT列 + +6. MEMORY支持AUTO_INCREMENT列和对可包含NULL值的列的索引 + +7. MEMORY表在所由客户端之间共享(就像其他任何非TEMPORARY表) + +8. MEMORY表内存被存储在内存中,内存是MEMORY表和服务器在查询处理时的空闲中,创建的内部表共享 + +9. 当不再需要MEMORY表的内容时,要释放被MEMORY表使用的内存,应该执行DELETE FROM或TRUNCATE TABLE,或者删除整个表(使用DROP TABLE) + +## 2.4 MERGE + +1. MERGE存储引擎是一组MyISAM表的组合,这些MyISAM表结构必须完全相同,尽管其使用不如其它引擎突出,但是在某些情况下非常有用。说白了,Merge表就是几个相同MyISAM表的聚合器;Merge表中并没有数据,对Merge类型的表可以进行查询、更新、删除操作,这些操作实际上是对内部的MyISAM表进行操作。Merge存储引擎的使用场景。 + +2. 对于服务器日志这种信息,一般常用的存储策略是将数据分成很多表,每个名称与特定的时间端相关。例如:可以用12个相同的表来存储服务器日志数据,每个表用对应各个月份的名字来命名。当有必要基于所有12个日志表的数据来生成报表,这意味着需要编写并更新多表查询,以反映这些表中的信息。与其编写这些可能出现错误的查询,不如将这些表合并起来使用一条查询,之后再删除Merge表,而不影响原来的数据,删除Merge表只是删除Merge表的定义,对内部的表没有任何影响。 + +## 2.5 ARCHIVE + +1. Archive是归档的意思,在归档之后很多的高级功能就不再支持了,仅仅支持最基本的插入和查询两种功能。在MySQL 5.5版以前,Archive是不支持索引,但是在MySQL 5.5以后的版本中就开始支持索引了。Archive拥有很好的压缩机制,它使用zlib压缩库,在记录被请求时会实时压缩,所以它经常被用来当做仓库使用。 \ No newline at end of file diff --git a/数据库/MySQL/附录2 MySql性能优化.md b/数据库/MySQL/附录2 MySql性能优化.md new file mode 100644 index 00000000..e5bdbe07 --- /dev/null +++ b/数据库/MySQL/附录2 MySql性能优化.md @@ -0,0 +1,264 @@ +# 10个MySQL性能调优的方法 +> 参考文献 +> * [https://www.jb51.net/article/70111.htm](https://www.jb51.net/article/70111.htm) +> * [https://www.cnblogs.com/jiekzou/p/5371085.html](https://www.cnblogs.com/jiekzou/p/5371085.html) + +## 0 基础方法 + +1. 数据库设计优化: + 1. 选择合适的存储引擎 + 2. 设计合理的表结构(符合3NF) + 3. 添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引] +2. 查询语句优化: + 1. 通过show status命令了解各种SQL的执行频率。 + 2. 定位执行效率较低的SQL语句-(重点select,记录慢查询) + 3. 通过explain分析低效率的SQL +3. 查询过程优化 + 1. 从内存中读取数据 + 2. 减少磁盘写入操作(更大的写缓存) + 3. 提高磁盘读取速度 +## 1 选择合适的存储引擎: InnoDB + +* 除非你的数据表使用来做只读或者全文检索 (相信现在提到全文检索,没人会用 MYSQL 了),你应该默认选择 InnoDB 。 + +* 你自己在测试的时候可能会发现 MyISAM 比 InnoDB 速度快,这是因为: MyISAM 只缓存索引,而 InnoDB 缓存数据和索引,MyISAM 不支持事务。但是 如果你使用 innodb_flush_log_at_trx_commit = 2 可以获得接近的读取性能 (相差百倍) 。 + +### 1.1 如何将现有的 MyISAM 数据库转换为 InnoDB: + +``` +mysql -u [USER_NAME] -p -e "SHOW TABLES IN [DATABASE_NAME];" | tail -n +2 | xargs -I '{}' echo "ALTER TABLE {} ENGINE=InnoDB;" > alter_table.sql + +perl -p -i -e 's/(search_[a-z_]+ ENGINE=)InnoDB//1MyISAM/g' alter_table.sql + +mysql -u [USER_NAME] -p [DATABASE_NAME] < alter_table.sql + +mysql -u [USER_NAME] -p -e "SHOW TABLES IN [DATABASE_NAME];" | tail -n +2 | xargs -I '{}' echo "ALTER TABLE {} ENGINE=InnoDB;" > alter_table.sql + +perl -p -i -e 's/(search_[a-z_]+ ENGINE=)InnoDB//1MyISAM/g' alter_table.sql + +mysql -u [USER_NAME] -p [DATABASE_NAME] < alter_table.sql +``` +### 1.2 为每个表分别创建 InnoDB FILE: + +``` +innodb_file_per_table=1 +``` +这样可以保证 ibdata1 文件不会过大,失去控制。尤其是在执行 mysqlcheck -o –all-databases 的时候。 + + + +## 2. 保证从内存中读取数据,讲数据保存在内存中 + +### 2.1 足够大的 innodb_buffer_pool_size + +推荐将数据完全保存在 innodb_buffer_pool_size ,即按存储量规划 innodb_buffer_pool_size 的容量。这样你可以完全从内存中读取数据,最大限度减少磁盘操作。 + +第一步:如何确定 innodb_buffer_pool_size 足够大,数据是从内存读取而不是硬盘? + +查询buffer size +``` +mysql> SHOW GLOBAL STATUS LIKE 'innodb_buffer_pool_pages_%'; ++----------------------------------+--------+ +| Variable_name | Value | ++----------------------------------+--------+ +| Innodb_buffer_pool_pages_data | 129037 | +| Innodb_buffer_pool_pages_dirty | 362 | +| Innodb_buffer_pool_pages_flushed | 9998 | +| Innodb_buffer_pool_pages_free | 0 | !!!!!!!! +| Innodb_buffer_pool_pages_misc | 2035 | +| Innodb_buffer_pool_pages_total | 131072 | ++----------------------------------+--------+ +6 rows in set (0.00 sec) + +innodb_additional_mem_pool_size = 1/200 of buffer_pool +innodb_max_dirty_pages_pct 80% +``` +发现 Innodb_buffer_pool_pages_free 为 0,则说明 buffer pool 已经被用光,需要增大 innodb_buffer_pool_size + +或者用iostat -d -x -k 1 命令,查看硬盘的操作。 + +第二步:服务器上是否有足够内存用来规划。执行 echo 1 > /proc/sys/vm/drop_caches 清除操作系统的文件缓存,可以看到真正的内存使用量。 + +### 2.2 数据预热 + +默认情况,只有某条数据被读取一次,才会缓存在 innodb_buffer_pool。所以,数据库刚刚启动,需要进行数据预热,将磁盘上的所有数据缓存到内存中。数据预热可以提高读取速度。 + +对于 InnoDB 数据库,可以用以下方法,进行数据预热: + +1. 将以下脚本保存为 MakeSelectQueriesToLoad.sql + +``` +SELECT DISTINCT + CONCAT('SELECT ',ndxcollist,' FROM ',db,'.',tb, + ' ORDER BY ',ndxcollist,';') SelectQueryToLoadCache + FROM + ( + SELECT + engine,table_schema db,table_name tb, + index_name,GROUP_CONCAT(column_name ORDER BY seq_in_index) ndxcollist + FROM + ( + SELECT + B.engine,A.table_schema,A.table_name, + A.index_name,A.column_name,A.seq_in_index + FROM + information_schema.statistics A INNER JOIN + ( + SELECT engine,table_schema,table_name + FROM information_schema.tables WHERE + engine='InnoDB' + ) B USING (table_schema,table_name) + WHERE B.table_schema NOT IN ('information_schema','mysql') + ORDER BY table_schema,table_name,index_name,seq_in_index + ) A + GROUP BY table_schema,table_name,index_name + ) AA +ORDER BY db,tb; +``` +2. 执行 +``` +mysql -uroot -AN < /root/MakeSelectQueriesToLoad.sql > /root/SelectQueriesToLoad.sql +``` +3. 每次重启数据库,或者整库备份前需要预热的时候执行: +``` +mysql -uroot < /root/SelectQueriesToLoad.sql > /dev/null 2>&1 +``` + +### 2.3 不要让数据存到 SWAP 中 + +如果是专用 MYSQL 服务器,可以禁用 SWAP,如果是共享服务器,确定 innodb_buffer_pool_size 足够大。或者使用固定的内存空间做缓存,使用 memlock 指令。 + + + +## 3 定期优化重建数据库 + +mysqlcheck -o –all-databases 会让 ibdata1 不断增大,真正的优化只有重建数据表结构: +``` +CREATE TABLE mydb.mytablenew LIKE mydb.mytable; +INSERT INTO mydb.mytablenew SELECT * FROM mydb.mytable; +ALTER TABLE mydb.mytable RENAME mydb.mytablezap; +ALTER TABLE mydb.mytablenew RENAME mydb.mytable; +DROP TABLE mydb.mytablezap; +``` + +## 4 减少磁盘写入操作 + +### 4.1 使用足够大的写入缓存 innodb_log_file_size + +但是需要注意如果用 1G 的 innodb_log_file_size ,假如服务器当机,需要 10 分钟来恢复。 + +推荐 innodb_log_file_size 设置为 0.25 * innodb_buffer_pool_size + +### 4.2 innodb_flush_log_at_trx_commit + +这个选项和写磁盘操作密切相关: + +innodb_flush_log_at_trx_commit = 1 则每次修改写入磁盘 +innodb_flush_log_at_trx_commit = 0/2 每秒写入磁盘 + +如果你的应用不涉及很高的安全性 (金融系统),或者基础架构足够安全,或者 事务都很小,都可以用 0 或者 2 来降低磁盘操作。 + +### 4.3 避免双写入缓冲 +``` +innodb_flush_method=O_DIRECT +``` + +## 5 提高磁盘读写速度 + +RAID0 尤其是在使用 EC2 这种虚拟磁盘 (EBS) 的时候,使用软 RAID0 非常重要。 + + + +## 6 充分使用索引 + +### 6.1 查看现有表结构和索引 +``` +SHOW CREATE TABLE db1.tb1/G +``` +### 6.2 添加必要的索引 + +索引是提高查询速度的唯一方法,比如搜索引擎用的倒排索引是一样的原理。 + +索引的添加需要根据查询来确定,比如通过慢查询日志或者查询日志,或者通过 EXPLAIN 命令分析查询。 + +``` +ADD UNIQUE INDEX +ADD INDEX +``` + +### 6.3 实例:优化用户验证表: +添加索引 + +``` +ALTER TABLE users ADD UNIQUE INDEX username_ndx (username); +ALTER TABLE users ADD UNIQUE INDEX username_password_ndx (username,password); +``` +每次重启服务器进行数据预热 +``` +echo “select username,password from users;” > /var/lib/mysql/upcache.sql +``` +添加启动脚本到 my.cnf +``` +[mysqld] +init-file=/var/lib/mysql/upcache.sql +``` +### 6.4 实例:使用自动加索引的框架或者自动拆分表结构的框架 +比如,Rails 这样的框架,会自动添加索引,Drupal 这样的框架会自动拆分表结构。会在你开发的初期指明正确的方向。所以,经验不太丰富的人一开始就追求从 0 开始构建,实际是不好的做法。 + +## 7 分析查询日志和慢查询日志 +修改mysql的慢查询. +``` +show variables like 'long_query_time' ; //可以显示当前慢查询时间 +set long_query_time=1 ;//可以修改慢查询时间 +``` +记录所有查询,这在用 ORM 系统或者生成查询语句的系统很有用。 +``` +log=/var/log/mysql.log +``` +注意不要在生产环境用,否则会占满你的磁盘空间。 + +记录执行时间超过 1 秒的查询: +``` +long_query_time=1 +log-slow-queries=/var/log/mysql/log-slow-queries.log +``` + +### explain查询语句 + +Explain select * from emp where ename=“wsrcla” +会产生如下信息: +select_type:表示查询的类型。 +table:输出结果集的表 +type:表示表的连接类型 +possible_keys:表示查询时,可能使用的索引 +key:表示实际使用的索引 +key_len:索引字段的长度 +rows:扫描出的行数(估算的行数) +Extra:执行情况的描述和说明 + +## 8 激进的方法,使用内存磁盘 + +现在基础设施的可靠性已经非常高了,比如 EC2 几乎不用担心服务器硬件当机。而且内存实在是便宜,很容易买到几十G内存的服务器,可以用内存磁盘,定期备份到磁盘。 + +将 MYSQL 目录迁移到 4G 的内存磁盘 +``` +mkdir -p /mnt/ramdisk +sudo mount -t tmpfs -o size=4000M tmpfs /mnt/ramdisk/ +mv /var/lib/mysql /mnt/ramdisk/mysql +ln -s /tmp/ramdisk/mysql /var/lib/mysql +chown mysql:mysql mysql +``` +## 9 用 NOSQL 的方式使用 MYSQL + +B-TREE 仍然是最高效的索引之一,所有 MYSQL 仍然不会过时。 + +用 HandlerSocket 跳过 MYSQL 的 SQL 解析层,MYSQL 就真正变成了 NOSQL。 + +## 10 其他 + +1. 单条查询最后增加 LIMIT 1,停止全表扫描。 +2. 将非”索引”数据分离,比如将大篇文章分离存储,不影响其他自动查询。 +3. 不用 MYSQL 内置的函数,因为内置函数不会建立查询缓存。 +4. PHP 的建立连接速度非常快,所有可以不用连接池,否则可能会造成超过连接数。当然不用连接池 PHP 程序也可能将 +5. 连接数占满比如用了 @ignore_user_abort(TRUE); +6. 使用 IP 而不是域名做数据库路径,避免 DNS 解析问题 diff --git a/数据库/Redis/README.md b/数据库/Redis/0 README.md similarity index 100% rename from 数据库/Redis/README.md rename to 数据库/Redis/0 README.md diff --git a/数据库/Redis/Redis概述.md b/数据库/Redis/附录1 Redis概述.md similarity index 100% rename from 数据库/Redis/Redis概述.md rename to 数据库/Redis/附录1 Redis概述.md diff --git a/数据库/Redis/Redis持久化.md b/数据库/Redis/附录2 Redis持久化.md similarity index 100% rename from 数据库/Redis/Redis持久化.md rename to 数据库/Redis/附录2 Redis持久化.md diff --git a/数据库/Redis/附录3 Redis数据结构.md b/数据库/Redis/附录3 Redis数据结构.md new file mode 100644 index 00000000..5c44c76c --- /dev/null +++ b/数据库/Redis/附录3 Redis数据结构.md @@ -0,0 +1 @@ +https://www.cnblogs.com/ysocean/p/9080942.html#_label1 \ No newline at end of file diff --git a/数据库/y面试问题整理.md b/数据库/y面试问题整理.md index e2681962..0560bd5d 100644 --- a/数据库/y面试问题整理.md +++ b/数据库/y面试问题整理.md @@ -19,4 +19,20 @@ 1. 事务(ACID automatic consistency isolation durability) 2. 并发一致性的问题。脏读、不可重复读、丢失修改 -3. 兵法一致性的方案。读写锁:互斥锁、共享锁。三级封锁协议。 \ No newline at end of file +3. 兵法一致性的方案。读写锁:互斥锁、共享锁。三级封锁协议。 + +## 6 性能优化 + + +1. 数据库设计优化: + 1. 选择合适的存储引擎 + 2. 设计合理的表结构(符合3NF) + 3. 添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引] +2. 查询语句优化: + 1. 通过show status命令了解各种SQL的执行频率。 + 2. 定位执行效率较低的SQL语句-(重点select,记录慢查询) + 3. 通过explain分析低效率的SQL +3. 查询过程优化 + 1. 从内存中读取数据 + 2. 减少磁盘写入操作(更大的写缓存) + 3. 提高磁盘读取速度 \ No newline at end of file diff --git a/数据库/基础篇——4.SQL.md b/数据库/基础篇——4.SQL.md index e0c107da..bde9619e 100644 --- a/数据库/基础篇——4.SQL.md +++ b/数据库/基础篇——4.SQL.md @@ -317,7 +317,7 @@ WHERE Sno IN ## 2.4 查询 -### 单表查询 +### 2.4.1 单表查询 1. 查询多列 @@ -413,7 +413,7 @@ HAVING COUNT(*)>3 > WHERE 子句作用于基本表或视图,HAVING短语作用于组,从中选择满足条件的组,也就是分组条件。 -### 连接查询(多表查询) +### 2.4.2 连接查询(多表查询) > 本质上是将多个表通过一些条件拼接成一张表。 @@ -454,7 +454,7 @@ FROM Student,SC,Cource WHERE Student.Sno=SC.Sno AND SC.Cno=Course.Cno ``` -### 嵌套查询 +### 2.4.3 嵌套查询 > 一个SELECT FROM WHERE语句成为一个查询快。将一个查询快嵌套在另一个查询块的WHERE子句或HAVING短语的条件中,称为嵌套查询。用户可以用多个简单查询构造成负责的查询,层层嵌套的结构化查询。 @@ -538,7 +538,7 @@ WHERE Student.Sno IN ``` -### 集合查询 +### 2.4.4 集合查询 > 因为查询结果是元组的集合,所以多个SELECT语句的结果可进行集合操作。集合操作包括UNION、INTERSECT、EXCEPT。 @@ -569,7 +569,7 @@ WHERE Sage<=19 ``` -### 基于派生表的查询 +### 2.4.5 基于派生表的查询 > 子查询不仅可以出现在WHERE子句中,还可以出现在FROM子句中,这是子查询生成的临时派生表,成为主查询的对象。