标签: normalization

如何将文件路径或 URL 放入数据库?

天真的方法是将整个路径作为字符串放入数据库中,这适用于玩具数据库。然而,这种方法有一些缺陷。例如,假设我在 /var/www/sites/ 下有 100K 个文件,那么在数据库中存储 /var/www/sites 100K 次是非常低效的。我确信有更好的方法来做到这一点。

我只想对 DVD 上的文件路径建立索引,然后搜索 mp3 文件或目录等。首选的 RDBMS 是 SQLite(也许是 FTS Tables?)。我的目标是学习,我知道有很多桌面搜索引擎可以实现这一点。

mysql sql sqlite normalization

1
推荐指数
1
解决办法
4272
查看次数

规范化,非规范化,还是什么?在调查数据库中存储响应的表

尽管我使用 Django 的 ORM 来实现这些表,但我有意将此作为一个一般性问题来构建。如果你想看一看,这是我的 Django 模型

谜语

我有几个表具有以下关系:

Survey <--m2o-- Page <--m2o-- Category <--m2o-- Question <--m2o-- Choice <--?-- Response
|               |             |                 |                 |
|- name         |-number      |- name           |- sortid         |- sortid
                              |- sortid         |- text           |- text
                              |- text           |- short
                                                |- qtype
Run Code Online (Sandbox Code Playgroud)

m2o多对一的简写在哪里,每个表都有一个隐式主键,我的问题是关于如何组织响应表。

响应表应该与用户表有某种关系(取决于表定义,这可能是一对一或多对一)。该表的目的是存储用户对特定问题的回答。我遇到的问题是,根据问题类型,我需要将响应存储在响应表中的不同列类型中。例如一个表可能类似于:

| user | (question) | (qtype)         | choice    | response                      |
|------+------------+-----------------+-----------+-------------------------------|
| 1    | Q1         | Select One      | A         | False                         |
| 1    | ''         | …
Run Code Online (Sandbox Code Playgroud)

django polymorphism orm normalization relational-database

1
推荐指数
1
解决办法
654
查看次数

数据库设计:按类型组织项目(电影)

我正在为一个项目制作一个基本的电影在线商店,我希望用户能够按类型选择电影,例如:

\n\n
    \n
  • 全部
  • \n
  • 恐怖
  • \n
  • 行动
  • \n
  • 纪录片
  • \n
  • 科幻
  • \n
  • ...\xc2\xa0\xc2\xa0
  • \n
\n\n

在数据库中存储电影以匹配此结构的最佳方式是什么?

\n\n

第一种方式

\n\n

按类型对电影进行排序并创建单独的表格,即一张用于动作类型的表格,一张用于纪录片,一张用于科幻片,等等。使用这种方法,将没有明确的方法来连接表以生成所有电影的列表

\n\n

第二种方式

\n\n

将所有电影放在一个表中,将类型放在另一个表中,并根据类型在两者之间建立外键关系

\n\n

或者还有其他更好的方法来做到这一点?

\n\n

提前致谢

\n

database database-design normalization

1
推荐指数
1
解决办法
2788
查看次数

如何引用多对多关系的交集表?

我正在创建一个处理处方的药房数据库.在设计数据库时,我考虑到医生可以在许多办公室工作,办公室可以是许多医生的家,所以我创建了以下多对多的关系:

doctor:

| id | name | // more

office:

| id | name | address | // more

doctors_offices:

| doctor_id | office_id |
Run Code Online (Sandbox Code Playgroud)

我遵循了我在数据库教科书中看到的设计以及许多在线资源,但我现在在尝试创建prescription表时遇到了一些困惑.在这张表中,我想知道不仅是哪位医生写了处方,而是在哪个位置.

我发现自己有几个选择:

  • doctors_offices表中添加auto_increment键,以便为每个dr/office配对提供唯一标识符
  • 将复合外键添加到引用的处方表中doctors_offices.(这可能吗?)
  • 在处方表中添加两个外键.一个引用doctors,一个引用offices.

哪些选项最常规化?我知道第三个可能是最不规范化的,因为它开启了我选择医生不属于的办公室的可能性,但我觉得很重要,因为它可能是一些初学数据库设计者的共同本能.

mysql database database-design normalization

1
推荐指数
1
解决办法
136
查看次数

例外:“向量的无效规范顺序”-Python

我试图使用 numpy 在 python 中规范化一个向量。我做了以下事情:

matrix_norm = numpy.linalg.norm(matrix1[:,0], ord='fro')
print(matrix_norm)
Run Code Online (Sandbox Code Playgroud)

矩阵 1 的大小为:1000 X 1400。我尝试找到矩阵第一列的归一化值。它给了我以下异常:

“向量的无效范数顺序”

请帮忙 !提前致谢... :)

python numpy vector normalization

1
推荐指数
1
解决办法
4377
查看次数

必须规范化数组数据的状态形状涉及对象数组和嵌套对象之间的往返转换

根据规范化状态形状的文档,本质上的列表数据将通过 Id 作为对象存储在状态树中,这意味着从 API 调用返回的数组数据必须首先转换为动作创建者中的对象。然后必须将对象数据转换回 mapStateToProps() 中的数组,以便使用 render() 中数组的 .map() 函数渲染生成的道具。这种来回转换是否是标准化状态形状的合理成本?或者在使用 ReactJS 和 Redux 时是否有更好的设计模式来处理列表数据?

normalization reactjs redux react-redux

1
推荐指数
1
解决办法
1184
查看次数

Redux 对象数组的 Normalizr 模式

我的 api 的当前响应如下:

[
   {  
      "device_id": "1234",
      "network_status": "Offline",
      "status": "Yes",
      "frequency": 50,

   },
   {  
      "device_id": "12345",
      "network_status": "online",
      "status": "no",
      "frequency": 123,

   },
   {  
      "device_id": "12346",
      "network_status": "online",
      "status": "no",
      "frequency": 423,

   },
]
Run Code Online (Sandbox Code Playgroud)

使用最新文档: https://github.com/paularmstrong/normalizr/blob/master/docs/api.md#arraydefinition-schemaattribute

我知道这些文档已经更新,因此查看堆栈上的其他问题我无法找到类似的示例。“responseData”包含来自 api 的响应,它是一个对象数组。[{},{},...]

我的代码是

import { schema } from 'normalizr';

const deviceid = new schema.Entity('device_id');
const arrayOfDevices = new schema.Array({
  device_id : deviceid,
})

normalize(responseData, arrayOfDevices)
Run Code Online (Sandbox Code Playgroud)

我想得到以下输出。将 device_id 作为每个对象的键的实体对象。

  {
  entities: {
    device_id: { 
      '1234' : {
        .....
      },
      '12345' : {
        ..... …
Run Code Online (Sandbox Code Playgroud)

normalization reactjs redux normalizr

1
推荐指数
1
解决办法
3159
查看次数

使用不同范围的变量将变量从 0 标准化到 1?

我有一个像这样的数据框:

df <- data.frame(x1=c(1, 2, 3, 2, 1),
                 x2=c(1, 10, 5, 8, 3))
Run Code Online (Sandbox Code Playgroud)

我正在尝试将两个变量标准化为 0 和 1 之间。因此 2 英寸x1将是 0.5,5 英寸x2也将是 0.5。

我尝试过使用以下标准化函数:

range01 <- function(x){(x-min(x, na.rm = T))/(max(x, na.rm = T)-min(x, na.rm = T))}
df <- range01(df)
Run Code Online (Sandbox Code Playgroud)

相反,它通过整个数据帧的范围(1 到 10)对所有变量进行标准化,给出:

x1          x2
0.0000000   0.0000000           
0.1111111   1.0000000           
0.2222222   0.4444444           
0.1111111   0.7777778           
0.0000000   0.2222222
Run Code Online (Sandbox Code Playgroud)

如何根据两列各自的范围对它们进行标准化?我需要一个系统函数来执行此操作,因为我在 for 循环中处理多个数据帧中的许多变量。

r function normalization

1
推荐指数
1
解决办法
4272
查看次数

在 tensorflow 2.0 中构建 RealNVP 层的更好方法?

是否有更好的方法来构建 RealNVP 层以用作 tensorflow 2.0 中的标准可训练层?我最终将它包装在一个模型中。对于图层,变量没有出现在 trainable_variables 中。

像这样运行,但我怀疑有更好的方法:

from pylab import *
import numpy as np
import pandas as pd
import tensorflow as tf
import tensorflow_probability as tfp
tfb = tfp.bijectors
tfd = tfp.distributions

# class NVPLayer(tf.keras.layers.Layer):
class NVPLayer(tf.keras.models.Model):

    def __init__(self, *, output_dim, num_masked, **kwargs):
        super().__init__(**kwargs)
        self.output_dim = output_dim
        self.num_masked = num_masked
        self.shift_and_log_scale_fn = tfb.real_nvp_default_template(
            hidden_layers=[2],
            activation=None, # linear
            )
        self.loss = None

    def call(self, *inputs):
        nvp = tfd.TransformedDistribution(
            distribution=tfd.MultivariateNormalDiag(loc=[0., 0., 0.]),
            bijector=tfb.RealNVP(
                num_masked=self.num_masked,
                shift_and_log_scale_fn=self.shift_and_log_scale_fn)
            )
        self.loss = tf.reduce_mean(nvp.log_prob(*inputs)) …
Run Code Online (Sandbox Code Playgroud)

normalization keras tensorflow2.0

1
推荐指数
1
解决办法
1034
查看次数

是否有将字符串规范化为有效符号的默认方法?

我正在编写一个将关键字转换为符号的宏 此符号将用于 a(def ~symbol ...)有一种“默认”方法可以标准化:foo.bar/quoo为有效符号吗?(symbol (namespace kw) (name kw))?

clojure normalization

1
推荐指数
1
解决办法
61
查看次数