NoSQLの例では、エンジン?
-
25-09-2019 - |
質問
)私は1000000人のドメイン名を持っている。
b)の各ドメインには、100000に関するサイト
を持っていますC)は、それぞれのサイトには、毎日10000回の訪問について持っている/(毎日5000回のユニーク訪問)
D)すべてのそれらのウェブサイトの所有者として、私が見たいと思って、私は例えば、時間の選択期間中に持っていたどのように多くの来場者に選択のサイトでます:
どのように多くのユニークビジターmydomain.com/tutorials
に1987年12月4日から2010年4月23にしました yourdomain.com/reference?に2009年7月16日に1996年8月30日からだったどのように多くのユニークビジター
伝統的なSQLデータベースの場合、これは苦痛です。
賢いアプローチとは何ですか?使用にどのようなストレージエンジン?
私はSQLの知識を持っています。任意の追加のリソースをいただけれます。
解決
あなたは、私は非常にdobutシンプルなSQL(PSQL / TSQL)データベースがニーズを満たしてしまうだろうと列挙されていることと同様の数字と潜在的なクエリでは、
。代わりに、SSAS(SQL Serverの分析サービス)またはOracleからの同様の製品のように処理するOLAPのいくつかのフォームが必要です。
他のヒント
私はDBは、このオプションのための最良の方法だと思います あなただけ例えば、テーブルのカップルをcr4eateし、それらの間でデータを分散する必要があります。
Table: Domains [id, name]
Table: Sites [id, domain_id, name]
Table: Visits [id, site_id, date]
あなたは言わせて選択することができるようにます:
SELECT COUNT(v.id)
FROM Visits AS v
RIGHT JOIN Sites AS s
ON v.site_id = s.id
RIGHT JOIN Domains AS d
ON s.domain_id = d.id
WHERE d.name = 'mydomain.com'
AND s.name = 'tutorials'
AND v.date BETWEEN startDate AND endDate
たstartDateとendDateには、プログラミング言語(PHP、ASP)を通過しなければならない、またはそれらは、SELECT
に手動で設定することができます希望に役立ちます。
所属していません StackOverflow